Veterans Kumar Sangakkara and Mahela Jayawardene put Sri Lanka in a strong position after the opening day of the second Test against Bangladesh in Chittagong.

After winning the toss and electing to bat, the tourists reached 314-5 at stumps with Sangakkara making 160 not out and Jayawardene contributing 72.

The hosts, who were looking to bounce back after being destroyed by an innings and 248 runs in the opening Test in Dhaka last week, made a positive start as Sri Lanka were reduced to 49-2.

Kaushal Silva departed for 11, trapped lbw after missing an attempted sweep of spinner Sohag Gazi.

Gazi opened the bowling after Bangladesh dropped seamers Robiul Islam and Rubel Hossain and brought in Mahmudullah and Abdul Razzak, leaving Al-Amin Hossain as the only non-spinner in their attack.

Hossain also struck in the opening session when Dimuth Karunaratne cut straight to Mahmudullah at point after making 31.

Jayawardene joined Sangakkara at the crease with the score on 49 and they took the total to 71 at lunch before batting all the way through the afternoon as Sri Lanka reached tea on 196-2.

Sangakkara completed his 34th Test century, shortly after the adjournment, from 146 balls as he tickled Mahmudullah for four down to long leg.

Their partnership ended on 178 when Jayawardene was trapped lbw by Mahmudullah for 72.

Dinesh Chandimal departed for 27 when he attempted a big shot off Shakib Al Hasan only to get a leading edge to Imrul Kayes, back in the Bangladesh side after a two-year exile, at point.

Shakib picked up his second wicket late in the day as Sri Lanka captain Angelo Mathews was clean bowled for five after attempting to slog the slow left-armer.

However, Sangakkara ended the day unbeaten, his innings featuring 19 boundaries and three sixes.