Paceman Mohammed Shami, who had walked off the field yesterday due to cramps in his right leg, claimed three wickets in the morning session to help India bowl out the visitors for 294 early in the second session.
Both Bhuvneshwar Kumar (4/88) and Shami (4/100) claimed four wickets each as it took India 38 overs to scalp the remaining six batsmen.
Both Rahul and Dhawan abstained from playing extravagant shots in India's second essay. They remained unseparated at the second break day of the day with India still trailing by 52 runs.
The Indian openers were calm and patient in their approach, playing mostly with the straight bat. The grounded drives were in the safe cover region as they made the Lankan bowlers toil hard without success.
More From This Section
The only time the Lankans came close to getting a wicket was when Rahul (on 22) drove straight back to Lahiru Gamage in the 12th over of the innings but the paceman missed the difficult caught and bowled chance.
Earlier in the day, resuming at 165/4, Sri Lankan duo of Niroshan Dickwella (35) and skipper Dinesh Chandimal (28) began in aggressive fashion.
Wicketkeeper Dickwella took on Bhuvneshwar, slamming him for three boundaries in the 52nd over but Shami turned the tide in favour of India removing the overnight batsmen.
Dickwella poked at an in-swinger to be caught by Virat Kohli at second slip. In the next over Dasun Shanaka (0) was trapped by Bhuvneshwar with an in-swinger. The decision was reviewed by Sri Lanka but it was given out after the umpire's call.
Sri Lanka were accurate with their DRS calls as Dilruwan Perera (5) survived an LBW decision given against him even as he was caught on camera turning towards the dressing room before asking for a review.
It reminded of the Steve Smith 'cheatgate' episode which happened during India-Australia second Test in Bengaluru last March. The incident happened in the last ball of 57th over with Perera yet to open his account when he was struck on backfoot by an in-dipper.
However, all of a sudden, he opted to review after turning towards dressing room. It was unclear whether any assistance came from the dressing room.
The decision was eventually overturned as the impact was marginally outside the line and Perera survived but strangely there was no protest from Virat Kohli and Co.
Llong was incidentally officiated as an on-field umpire during the Bengaluru Test as well.
Perera, however, could not make it big, becoming Shami's third victim. But Herath remained solid in his counter- attacking innings to give Sri Lanka an edge.