READING stumbled to a second defeat on the bounce after failing to hold on to a lead against mid-table Millwall. 

The Lions return to London 2-1 winners after a late rally saw them snatch all three points with two goals in the last 15 minutes. 

Here’s how the players rated from today’s game.

AS IT HAPPENED: Updates from Reading's 2-1 loss to Millwall. 

Rafael Cabral -- 6

Saved well from a number of Millwall half-chances in the first half and his kicking was good but couldn’t do much about either of the Lions’ goals. 

Tom Holmes -- 6

A customary steady and assured performance from the right-back, who coped well with Millwall’s threat before being subbed.

Michael Morrison -- 6

Battled on after a nasty head injury and got the better of Millwall’s attackers in the first half. Offered a threat from set-pieces, too. Will feel annoyed not to have stopped two late Lions goals. 

Tom McIntyre -- 6

Another comfortable performance from the academy graduate in the first half, but will be kicking himself for not having cleared Millwall’s equaliser. 

Lewis Gibson -- 6

Made a vital clearance before Reading’s opener and got forward well down the left, winning a number of headers from set-pieces aimed at him. Should have done better with a chance after Millwall equalised. 

Josh Laurent -- 5

A quieter performance from the summer signing in the first half, but he got forward more in the second 45 and forced Bialkowski into one good save. Replaced in the closing stages. 

Andy Rinomhota -- 6

Made some fantastic forward runs from midfield and battled well in defence in the first 45. Perhaps should have done better with a rebound from a good position in the box in the second half. 

Michael Olise -- 6

A fine performance in the first-half as he set Joao through on goal with some lovely skill. His set-pieces were much better than against Brentford, too, and he came close with a free kick in the second half. A couple of times in the second half his final ball left a little to be desired when good opportunities were opening up. 

Alfa Semedo -- 6

A freak own-goal came from some fantastic pressing from the loan man. Deserved his goal after a strong first 45 showing, but faded after the interval. 

Ovie Ejaria -- 5

Ejaria was his usual tricky self on the left but did not get as involved as some of his teammates in the first half. A livelier start to the second 45 created some openings for the Royals but he missed a glaring opportunity following Millwall’s equaliser which rattled the bar. 

Lucas Joao -- 4

A great run in the first half saw him set through on goal by Olise, but he couldn’t quite tuck in his shot when he should have done. Almost anonymous in the second 45. 

Substitutes 

Andy Yiadom -- 4

Both Millwall goals came from his side. Offered a different threat to Holmes going forward. 

Omar Richards -- n/a

Sam Baldock -- n/a