Cristiano Ronaldo struck twice on his return from suspension as Real Madrid crushed bottom side Xerez 3-0 away in La Liga on Saturday and trimmed Barcelona's lead at the top to two points.
The Portuguese forward, banned for two matches after his red card against Malaga last month, was a constant threat to the promoted Andalusians and twice combined with Brazilian playmaker Kaka to score Real's second and third goals.
Undefeated champions Barca can restore a five-point advantage with a win at Atletico Madrid on Sunday (2000) in a fixture that has yielded 19 goals in the past three seasons.
Coach Pep Guardiola is expected to promote a youth player to right back with five first team defenders injured or suspended.
Second-placed Real have 53 points from 22 matches, Barca have 55 from 21 and Valencia are on 43 in third after being held to a 1-1 draw at mid-table Sporting Gijon earlier on Saturday.
Xerez have won just two matches this season but made a bright start on a soggy Chapin pitch that Marca sports daily had likened to a potato field.
The home side's Momo found space to send a shot whistling over Iker Casillas's bar in the 12th minute before Ronaldo tested goalkeeper Renan with a header and then shot just wide after running onto a Xabi Alonso through ball.
Real's record signing, roundly whistled every time he touched the ball, almost gave Manuel Pellegrini's side the lead just before halftime when his header from an Alvaro Arbeloa centre shaved the bar.
Alonso sent Arbeloa clear to finally break the home side's resistance in the 64th minute, his first goal of the season, before Ronaldo doubled the lead with a header from Kaka's cross five minutes later.
The Brazilian tempted Xerez goalkeeper Renan off his line in the 71st and squared for Ronaldo to sweep the ball into the empty net for the third.
"We knew that the match would be difficult because of the pitch but I have played on fields like that since I was a kid," Real defender Marcelo said in a television interview.
"There's no need to repeat it but Cristiano always decides matches," the Brazilian added.
Arbeloa said: "They are bottom of the league but they made it very difficult for us. Hopefully Atletico will give us a hand and beat Barcelona tomorrow."
Villarreal, in 10th, host seventh-placed Athletic Bilbao in Saturday's late kickoff.