Real Madrid surrendered their leadership of La Liga after being beaten 2-3 away to Sevilla in an 11th round match.
The defeat in the last game before the 'Clasico' match between Real Madrid and arch-rivals FC Barcelona on November 21 sees Barcelona take a 3-point lead at the top of the table, reports Xinhua.
Real Madrid had taken the lead thanks to Sergio Ramos' spectacular overhead kick against his former club in the 22nd minute, but damaged his already weak shoulder in the process and was replaced by Rafael Varane.
Sevilla levelled through Ciro Immobile in the 36th minute.
They took the lead in the 61st minute when Ever Banega exchanged passes with Yebhen Konoplyanka before slotting home from eight yards.
Fernando Llorente headed in the third it looked like game over, although James Rodriguez showed his class by netting Madrid's second late in injury time.
More From This Section
Earlier in the day, Neymar and Luis Suarez again turned on the style for Barcelona to allow them to defeat Villarreal 3-0 in the Camp Nou Stadium in Barcelona.
Following an even first half against an impressive rival, Neymar opened the scoring after a through ball from Sergio Busquets, before Suarez doubled Barcelona's lead from the penalty spot after Munir had been fouled.
Neymar rounded off the scoring with the goal of the day as he and Suarez combined before he clipped the ball over his marker and volleyed home.
The deadly duo have now scored Barcelona's last 17 goals.
Also on Sunday, Antoine Griezmann's solitary goal in the third minute of injury time gave Atletico Madrid a hard-fought 1-0 win at home to a batting Sporting Gijon.
The win takes Diego Simeone's side up to third in the standings.