A review of the weekend's action in the Spanish Primera Division.

Gareth Bale took advantage of a goalkeeping howler to help Real Madrid claim a deceptively-difficult 4-0 victory at Real Sociedad on Saturday night and keep the pressure up on Atletico Madrid and Barcelona.

With the top two having already won on Saturday, Madrid knew anything other than victory at the Anoeta could spell the end of their title challenge, but they came away with the three points thanks to goals from Asier Illarramendi, Bale, Pepe and Alvaro Morata.

Former Sociedad player Illarramendi opened the scoring against the run of play on the stroke of half-time and then Bale - despite suffering a gash to the knee moments before - doubled the lead in the 66th minute, thanks largely to a huge error from home goalkeeper Claudio Bravo.

Bravo's attempt to kick the ball out of hand to a team-mate near the touchline ended up going straight to Bale 35 yards out, and the Wales international took a touch before slamming his shot into the unguarded net as Bravo scrambled to get across.

That goal was followed by two more late strikes from Pepe and Morata as Madrid claimed an impressive victory that keeps them within three points of leaders Atletico and within two of Barca.

Atletico ensured they would stay top for another week with a 1-0 win over Villarreal at the Vicente Calderon, but Los Rojiblancos were made to sweat for the three points.

Captain for the day Raul Garcia headed in the only goal of the game after 14 minutes, but the hosts created few further opportunities and spent the latter stages holding on amid Villarreal pressure.

They survived a scare in the final minute when Toby Alderweireld diverted a cross just inches wide of a post.

Barcelona produced an unconvincing display against Real Betis but still beat the bottom side 3-1 to keep the pressure on Atleti.

Lionel Messi opened the scoring from the penalty spot after 15 minutes and Jordi Figueras, who had conceded the spot-kick, doubled Barca's lead with an own goal midway through the second half.

Betis striker Ruben Castro quickly pulled one back for the visitors but Messi struck again in the 85th minute, reacting quickly to having a penalty saved to send the ball in on the rebound and seal the three points.

Valladolid climbed out of the relegation zone after holding Valencia to a goalless draw at the Jose Zorilla stadium on Sunday night.

The hosts had goalkeeper Jaime to thank for keeping the game scoreless despite Valencia's superiority, the veteran stopper repaying coach Juan Ignacio Martino's faith in him by making seven saves and denying Valencia's lively forward Paco Alcacer on several occasions.

The result means Valladolid move a point clear of 19th placed Almeria, who lost at Osasuna on Friday, and go level on points with Getafe but move above the Madrid side in the league table due to their superior head-to-head record.

Sevilla tightened their grip on fifth placewith a dominant performance at home to Espanyol, eventually seeing off the Catalans 4-1 on Sunday.

Stephane M'bia netted his first goal in over four months to open the scoring, and Kevin Gameiro doubled the advantage on the stroke of half-time.

That lead was then reduced by Sergio Garcia's penalty at the start of the second half, but Gameiro struck again with five minutes remaining and Ivan Rakitic added to the goals in the final minute.

It was the result Unai Emery's side needed after suffering back-to-back defeats to Celta Vigo and Porto, and sees them move three points clear of Real Sociedad in fifth place, and put pressure on Athletic Bilbao, who play on Monday.

Malaga earned a first home win in two months in emphatic fashion winning 4-1 against Granada.

Bernd Schuster's side beat Real Betis away last weekend to climb five points clear of the relegation zone and they made it welcome back-to-back wins on Sunday, with a first-half brace from Nacho Camacho setting them on their way.

Youssef El Arabi missed a penalty moments before the break that would have given Granada hope, and Malaga capitalised with a third from Nordin Amrabat before Juanmi completed the rout.

El Arabi made amends for his earlier miss by netting 12 minutes from the end, but it was scant consolation.

Richmond Boakye struck with the final kick of the match to earn Elche a vital victory over fellow strugglers Getafe.

After 92 goalless minutes, the on-loan Juventus striker made it 1-0 by heading in Carles Gil's cross.

The victory put four points between the two teams, easing Elche's fears but leaving Getafe looking very nervously over their shoulders.

Although Elche enjoyed more of the play, Getafe will feel they had the better of the chances.

On Saturday, Rayo Vallecano cruised to a key 3-0 win over Celta Vigo to ease their relegation worries.

Rayo began the weekend just three points above the drop zone but end it firmly in mid-table and above Celta on their head-to-head record.

Ruben Rochina scored the opener in the 26th minute and a quick double from Alberto Bueno in the second half ensured Rayo were not even rocked by Razvan Rat's 64th minute red card.

Osasuna improved their prospects of staying up on Friday night with a 2-1 victory at fellow strugglers Almeria.

Both teams headed into the game in the bottom three, and it was the visitors who clinched the points which saw them leap out of the drop zone and to the relative security of 14th place.

Oriol Riera set the Pamplona side on their way in the 19th minute and Alejandro Arribas gave them breathing space 13 minutes later.

Fernando Soriano pulled a goal back against his former club 17 minutes from time, but there was no way back for the hosts - whose evening got even worse with the dismissal of Rafita for two stoppage-time bookable offences.