CHICAGO -- The Seattle Mariners have started the second half of the season on a roll. Now they'll see where they'll go.
"You obviously want to win series and sweeps are definitely a bonus," said Mariners first baseman Danny Valencia, who hit a three-run home run to tie the game in the fifth inning.
"It's crunch time for us. These next couple weeks will be very telling to see the direction this club decides to go in. We believe in each other here, we have a really good team in here, and everybody's expecting us to have a good second half and make the playoffs."
Cruz homered for the second straight game and the fifth time in eight games. His 19th homer came off Chris Beck (1-1).
"We just take one game at a time," Cruz said. "We don't think about the series. We're thinking of what we can do to win today. So far we get good results."
Kyle Seager also hit a home run for the Mariners (46-47), who extended their winning streak to four.
Avisail Garcia smacked two home runs for the White Sox (38-52), who relinquished a five-run lead.
The Mariners had scored the go-ahead run on Anthony Swarzak's bases-loaded wild pitch in the sixth. Jose Abreu tied the score on an RBI double after Alen Hanson doubled and advanced on a sacrifice in the seventh.
Garcia homered on the first pitch to put the White Sox ahead in the second inning. It was his first home run at Guaranteed Rate Field since May 13.
"The All-Star break might have given him a little charge, made him feel a little better," White Sox manager Rick Renteria said of Garcia, the team's All-Star. "We're glad his knee is feeling good and his hand is feeling good, that he's continuing to put together some obviously very good at-bats."
Omar Narvaez added a two-run shot, his first of the season and second of his career, in the second inning to make it 3-0.
Garcia hit a two-run drive in the third inning, giving him six career multi-home run games and 13 home runs this season, matching a career high.
Seager hit his 12th home run, a solo shot, in the fourth inning, to start Seattle's comeback.
Shortstop Tim Anderson's major league-leading 21st error allowed the Mariners to load the bases with no outs in the fifth. Jean Segura delivered a sacrifice fly before Valencia's three-run homer tied the score.
"It's no secret that we have a lot of confidence in our offense to score a lot of runs and it was still early in the game," Valencia said. "We knew we weren't going to get shut out, so if we have good at-bats, we'll get runners on base and fortunately for me I got up there with a couple men on base and got a good pitch to hit and put it out of the ballpark."
Nick Vincent (3-1) threw a scoreless inning for the win. Edwin Diaz nailed down his 16th save.
In his fourth major league start and first on the road, Mariners starter Andrew Moore allowed five runs, including three home runs, in three innings.
The rebuilding White Sox have lost four straight, fell a season-high 14 games below .500, and have the worst record in the American League.
The Mariners won their first series in Chicago since 2007.
White Sox starter Derek Holland gave up six runs (five earned) in 5 2/3 innings.
"He threw better than the numbers might show," Renteria said. "He left the one pitch up to Valencia, the breaking ball that he was able to put a charge into. We made him throw a few more pitches -- there were a few miscues out there. But he was attacking the strike zone, he was working in, he was using his breaking ball, keeping it down."
Holland made a flashy defensive play in the fourth when he snagged a comebacker behind his back. The ball got caught in his glove's webbing, so Holland tossed his mitt to first baseman Abreu for the out.
"It's cool to get a nice play like that, especially against a guy like (Robinson) Cano -- sorry, buddy -- but the main thing is we want to get the wins," Holland said. "And today was just not one of those days."
Jose Quintana was originally scheduled to start Sunday for the White Sox but he was traded to the Chicago Cubs on Thursday.
NOTES: Mariners DH Nelson Cruz is dealing with a sore right knee but remains in the lineup. His 73 RBIs lead the majors. ... Mariners RF Mitch Haniger jammed a thumb on a bunt attempt Saturday. Ben Gamel instead started in right field. Haniger was available to pinch run. ... The Mariners will likely need a fifth starter Tuesday at Houston. RHP Sam Gaviglio from Triple-A Tacoma is expected to start. ... White Sox INF Tyler Saladino was out of the starting lineup for rest. He returned Friday from the disabled list because of back spasms. ... Chicago manager Rick Renteria said he will keep an eye on former White Sox LHP Jose Quintana, who made his debut in sparkling fashion with the Chicago Cubs on Sunday against Baltimore.