Cristiano Ronaldo shrugged off the boos of his own supporters to fire Real Madrid to a 3-0 win over Real Sociedad on Sunday as Zinedine Zidane's side took advantage of slip ups by Barcelona and Sevilla to open up a four-point lead at the top of La Liga.

Ronaldo teed up Mateo Kovacic for the opener in the 38th minute to cool tensions at the Bernabeu after supporters had grown impatient with an uninspired display and then secured victory with a strike of his own in the 51st.

Substitute Alvaro Morata then put the finishing touch to the win by adding the third in the 82nd minute.

With Barcelona only able to snatch a 1-1 draw at Real Betis with a late Luis Suarez equaliser after earlier having had a clear goal disallowed and 10-man Sevilla losing 3-1 at Espanyol, Real strengthened their position at the top of the table.

They have 46 points with Barca second on 42, ahead of third-placed Sevilla on goal difference. Zidane's side also have a game in hand on both their title rivals.

Ronaldo had been one of the scapegoats for Real's recent stuttering run which saw them win one of their last four games and exit the King's Cup in midweek to Celta Vigo.

He was whistled after giving the ball away early in the game and responded by shouting back at the crowd although all was forgiven when he latched onto Kovacic's through ball and coolly chipped it into the net.

"After a few difficult days we were back doing our thing. It was a good night because our rivals drew and lost. You're always more motivated when your rivals slip up," Zidane told reporters.

"We had some difficult moments but at the same time we played well. It's not easy to score three goals against Real Sociedad."

Suarez snatched a late equaliser for Barcelona but their title hopes were dented as the champions were also denied a goal despite the ball clearly crossing the line.

Betis's Alex Alegria gave the home side a deserved lead in the 75th minute after they had hit the woodwork twice in quick succession although Suarez secured a point for the visitors by arrowing home Lionel Messi's through ball in the 90th.

Before the equaliser, Barca were left incensed when Aleix Vidal's cross was deflected towards goal and the ball crossed the line by about a metre before Aissa Mandi scrambled it away.

Unlike the English Premier League, there is no goalline technology in La Liga to help the referee.

"I have nothing to say about the ghost goal, I've seen the pictures. Technology could help, and it's obvious that referees need help," Barca coach Luis Enrique told reporters.

GILT-EDGED CHANCE

Betis striker Ruben Castro missed a gilt-edged chance to seal an unlikely win but failed to beat Marc-Andre ter Stegen after racing through on goal unchallenged.

Suarez's goal came too late for Barca to score another as their five-game winning streak in all competitions ended.

"We did not play well, we made lots of errors in the first half and in the second half they were completely superior to us, we were nowhere near our usual level," Luis Enrique said.

"The final minutes changed our sensations but this feels like a point gained.

Fellow contenders Sevilla also faltered at Espanyol after playing almost the whole game with 10 men after Nico Pareja was sent off in the second minute.

Goals from their former player Jose Antonio Reyes, Marc Navarro and Gerard Moreno condemned Jorge Sampaoli's side to their first defeat after a run of five league wins.

Stevan Jovetic scored for the visitors, who battled back to level, but the strain of playing for so long with 10 men after Pareja's straight red card eventually showed.