Smoak had an RBI single in the fourth inning that gave Seattle the lead, then provided the big blow in the sixth to cap a two-out rally. Kendrys Morales and Kyle Seager both singled and after Weaver received a visit from pitching coach Mike Butcher, Smoak hit the first pitch out to center field for his eighth homer of the season. The four RBIs were the most for Smoak since he drove in a career-high six runs on May 30, 2012 against Texas.
Smoak's long ball was the 21st straight game with at least one homer for the Mariners, the longest streak for an American League team since the Rangers set the major league record with 27 straight in 2002.
Hernandez (10-4) was cruising by the time he was handed a four-run lead. Seattle's ace allowed just two baserunners to reach third, the first coming on Mike Trout's triple in the third and not again until the eighth. Hernandez didn't rely on the strikeout and instead let the Angels put the ball in play. Hernandez struck out Albert Pujols twice and got Josh Hamilton and Erick Aybar swinging, but mostly relied on his defense. Hernandez allowed seven hits and didn't walk a batter.
Yoervis Medina pitched the ninth for Seattle.
Hernandez's worst start of the season came less than a month ago against the Angels. Hernandez was knocked around for 12 hits and six earned runs in five innings, one of just two starts this season in which he's failed to pitch at least six complete innings. He allowed two home runs as well and got a no decision.
Seattle first got to Weaver (3-5) in the fourth when Morales and Seager had consecutive singles. Seager's hit extended his hitting streak to 13 games. Smoak then capped a 10-pitch at-bat by lining a change-up from Weaver into right field. Third-base coach Daren Brown made the wrong call in sending Morales from second and the throw from Hamilton easily beat the runner. But catcher Hank Conger failed to catch the throw cleanly and Morales scored. Conger was originally given an error, but the scoring decision was changed and Smoak was credited with an RBI.
Morales and Seager were at the center of the Mariners' rally in the sixth with two-out hits that set the stage for Smoak's 411-foot shot to center field.
Seattle added two more in the seventh on a wild pitch and an RBI single from Raul Ibanez.
Weaver had allowed just two earned runs combined in his previous three starts, but Seattle raised his pitch count early. Weaver had thrown 107 pitches when he left after 5 2-3 innings, his shortest start since June 10 against Baltimore.
NOTES: Smoak now has five career games with four or more RBIs. ... Seattle RHP Stephen Pryor threw a second simulated game on Saturday and could be headed for a rehab assignment with Single-A Everett next week. OF Michael Morse (quad) is still not ready for a rehab assignment, manager Eric Wedge said. ... Angels RHP Tommy Hanson (forearm) threw a simulated game on Saturday and could be headed out on a rehab start next weekend following another bullpen session, manager Mike Scioscia said.