Liverpool earned a fifth successive Premier League victory, coming from behind to beat Reading.
Steve Coppell's team went ahead at Anfield through a magnificent Marek Matejovsky strike, but Javier Mascherano scored his first goal for Liverpool to equalise.
Three minutes after the break, Fernando Torres became the first Liverpool player to score 20 league goals in a season since Robbie Fowler in 1996, heading past Marcus Hahnemann from eight yards.
The win left Liverpool fourth with 59 points, while Reading were 15th on 28 points.
A Jermain Defoe lob and a Nigel Reo-Coker own goal allowed Portsmouth to leapfrog Aston Villa in the Premier League table.
Scoring his sixth PL goal since joining Portsmouth from Tottenham Hotspur, Defoe latched on to Glen Johnson’s lofted ball to beat Scott Carson from the edge of the penalty box.
Reo-Coker put the ball into his own net to double the lead and despite Sulley Muntari's second booking reducing Portsmouth to 10 men, they saw out the match.
The victory left Portsmouth in sixth with 50 points, one ahead of Villa in seventh.