SEATTLE (AP) — Robinson Cano hit a three-run homer to cap a five-run eighth inning, Edwin Diaz got his first major league save and the Seattle Mariners overcame a four-run deficit to beat the Boston Red Sox 5-4 on Tuesday night.

Cano capped the comeback with his 24th homer to right field off newly acquired Red Sox reliever Fernando Abad (1-5).

The Mariners had just three hits off starter David Price through seven innings and trailed 4-0. Price was struck in the right thigh by Luis Sardinas' line drive in the sixth, though, and struggled after. Mike Zunino opened the eighth with a home run to left off Price, and then Leonys Martin, Sardinas and Guillermo Heredia followed with consecutive singles to chase Price.

Matt Barnes struck out pinch-hitter Seth Smith. Abad came in and tried to get a curveball past Cano, who hit it 394 feet for a one-run lead.

Donn Roach (2-0) pitched two innings for the win.

Top Red Sox prospect Andrew Benintendi entered as a pinch-hitter for his major league debut and went 0 for 2, striking out to end the game.