Adam Eaton's ninth-inning grand slam off closer Cody Allen capped a five-run rally and lifted the White Sox to a 10-7 win Wednesday night over the Cleveland Indians.
Allen (2-5) retired the first hitter before Chicago loaded the bases on infield singles by Todd Frazier and J.B. Shuck, and a walk to Tim Anderson.
Dioner Navarro's bloop hit down the left field line scored a run before Eaton homered to right on an 0-2 pitch for his first career grand slam.
Jacob Turner (1-1) pitched the eighth and David Robertson retired the final two hitters with two on in the ninth for his 30th save.
Anderson hit a two-run homer and Frazier had a two-run double for the White Sox.
Anthony Ranaudo, recalled from Triple-A Charlotte before the game, allowed five runs in four innings.
Chicago was 2-8 against Cleveland, including seven straight losses going into the game.
Carlos Rodon is seeking his first back-to-back wins of the season. He allowed one run in six innings in his last start, a 4-2 victory at Miami.
Danny Salazar (sore elbow) will be activated off the 15-day disabled list to start the series finale.