An ailing Serena Williams stayed on course for a 20th grand slam singles title as she came back from the brink to reach the final of the French Open with a 4-6, 6-3, 6-0 win against Swiss power hitter Timea Bacsinszky.

The American, who looked unwell throughout the match, putting iced towels around her neck and against her forehead at changeovers, fell a set and a break down as the 23rd-seeded Bacsinszky peppered the court with backhand winners.

But Williams, who won Roland Garros in 2002 and 2013, dug deep to break back and Bacsinszky cracked, losing 10 games in a row.

Williams closed it out when Bacsinszky sent a backhand long and the world number one will now face Czech 13th seed Lucie Safarova on Saturday.

Earlier, Safarova overcame a slow start to defeat seventh-seed Ana Ivanovic 7-5, 7-5 and become the first female Czech player in 34 years to reach the French Open final.

Safarova is the first female Czech player to reach the French Open final in 34 years [Getty Images]

The 13th-seeded left-hander, who beat Maria Sharapova in the fourth round, halted the 2008 champion's progress which saw Ivanovic reach a first grand slam semi-final after seven years.

Safarova, who has not dropped a single set in this year's tournament, trailed 5-2 in the opening set before she fought back.

She went up an early break in the second set and stayed in front of her Serbian opponent. 

Ivanovic offered some stiff resistence, breaking serve at 4-5, after Safarova double-faulted on match point.

However, the Czech, a Wimbledon semi-finalist last year, broke back straight away and sealed the victory on her third match point. 

Source: Al Jazeera