First Test, Centurion (day two):
Australia 397 v South Africa 140-6
Mitchell Johnson carried on where he left off in the Ashes as Australia took control on day two of the first Test against South Africa at Centurion.
Johnson produced figures of 4-51 as the hosts finished day two on 140-6, still 257 runs behind Australia's first-innings total of 397.
The tourists added 100 runs to their overnight score before Johnson's burst.
Graeme Smith, Alviro Petersen, Faf du Plessis and Ryan McLaren were all dismissed by the 32-year-old.
South Africa v Australia itinerary
Johnson took 37 wickets in the recent Ashes whitewash of England.
resumed at SuperSport Park on 297-4
and Steve Smith (100) completed his century before being dismissed, while Shaun Marsh had added 26 to his overnight score, taking him to a career-best 148, when he fell to the bowling of Vernon Philander.
South Africa needed a solid start but were soon 23-3, Johnson striking with his fourth delivery of the series to dismiss Smith (10), caught in the slips by Marsh.
Johnson then forced an edge off a careless shot to trap Petersen, who scored two, while Du Plessis managed just one run more before edging to captain Michael Clarke in the slips.
Hashim Amla (17) briefly thwarted the Australian attack before a successful review sent him back lbw off Peter Siddle to leave the score 43-4.
Johnson then took a diving one-handed catch running backwards to break South Africa's one meaningful partnership, JP Duminy (25) falling to spinner Nathan Lyon after putting on 67 with AB de Villiers.
And there was still time for Johnson to bowl McLaren for eight, with De Villiers (52 not out) holding South Africa's fragile innings together.