The 37-year-old allrounder hurt his leg after taking two quick wickets on Thursday and didn't field after the 17th over of Australia's first innings.
He batted down the order at No. 9 on day three and contributed 58 runs to a 93-run eighth-wicket stand with Faf du Plessis to help South Africa to 388 in reply to Australia's 550.
He was visibly in pain throughout the innings, though, wincing each time he had to duck under short-pitch deliveries from the Australian pacemen, and rarely taking singles.
Team manager, Dr. Mohammed Moosajee, said Kallis would likely bat in the second innings here, but South Africa was considering bringing in a replacement for the third test because of the short turnaround between matches.
"As you know his initial hamstring strain over the last 48 hours ... had responded very well, so much so that he was almost symptom-free," Moosajee told a news conference after stumps Saturday.
"We knew he would always be able to bat. The challenge was what's going to happen when he runs. So it's safe to say he's probably aggravated his injury by running and batting.
"So having said that, Cricket South Africa's selection committee are looking into possibly sending out someone as cover, but they haven't made a decision as yet."
The absence of Kallis for the Perth test, which starts Friday, could be an almighty blow for the tourists.
The Adelaide match is his 157th test, dating back to 1995, and he is genuinely one of the greats of the game. He has 44 test centuries, and has scored 12,895 runs at an average of 57.3.
He has also taken 282 test wickets and is a superb slips fielder, so the balance of the team will be significantly changed if he's not available.
Kallis had to bowl earlier than usual in the first innings in Adelaide after new ball bowler Vernon Philander withdrew from the match due to a bad back.
He took 2-19 in 3.3 overs before stopping at the top of his run up, throwing the ball back to skipper Graeme Smith and walking from the field.
The good news for South Africa, Moosajee said, was that Philander was responding well to treatment and should be available for selection for Perth.
Kallis' return to the crease on Saturday, at No. 9 instead of his regular No. 4, was applauded by the Adelaide Oval crowd.
He belted 10 boundaries and a six and faced 93 balls to get South Africa out of serious trouble and then limped off after he gloved a legside catch from Michael Clarke to wicketkeeper Matthew Wade.
Australia already has a 273-run lead with five wickets in hand and two days remaining in Adelaide, so there'll likely be pressure on Kallis wherever he bats in the last innings.
The South Africans only need to draw the three-match series to retain the No. 1 test ranking, while Australia has to win the series to replace them.
From Our Network
- Shot 8 times, Transgender in Pakistan dies as hospital sits on her treatment deciding sex
- Watch: Here’s the incident when Arijit Singh miffed Salman Khan
- Revealed: This woman is the reason behind Salman Khan and Sanjay Dutt’s cold war
- ‘Queen’ of ‘Lies’? Not only age, Kangana Ranaut lied about getting Rs 11 crore for Rangoon too?
- Salman Khan NOT to remove Arijit Singh’s song from ‘Sultan’!