Mitchell Johnson continued his Ashes form with a devastating bowling performance on the second day of the first Test against South Africa at Centurion's SuperSport Park.
Johnson took four for 51 as South Africa crashed to 140 for six at the close of play, still 257 runs behind Australia's first-innings of 397.
Australia first innings 397
South Africa first innings
G Smith c Marsh b Johnson 10
A Petersen c Haddin b Johnson 2
H Amla lbw b Siddle 17
F du Plessis c Clarke b Johnson 3
AB de Villiers not out 52
JP Duminy c Johnson b Lyon 25
R McLaren b Johnson 8
R Peterson not out 10
Extras (b 10, lb 2, w 1) 13
Total (6 wickets; 43.3 overs) 140
Fall of wickets 1-11, 2-15, 3-23, 4-43, 5-110, 6-126
Johnson needed just four balls to strike a major blow for Australia when he dismissed South African captain Graeme Smith with a vicious bouncer. He followed up with the wickets of Alviro Petersen and Faf du Plessis in his third and fourth overs. Peter Siddle trapped Hashim Amla leg-before for 17.
JP Duminy staged a minor recovery with a fifth wicket stand of 67 but Johnson was involved in his dismissal, taking a superb diving catch running back from mid-off when Duminy mistimed a lofted drive against off-spinner Nathan Lyon.
Johnson struck again when he bowled Ryan McLaren, beating the all-rounder for pace.
Earlier, Australia earlier lost their last six wickets for 66 runs. Shaun Marsh and Steve Smith took their fifth wicket stand to 233, seeing off the threat of Dale Steyn and Vernon Philander with the second new ball.
Smith took 33 balls to advance from his overnight 91 to his fourth Test century, made off 211 deliveries, but was out two balls later. Brad Haddin, one of the stars of Australia's 5-0 series win over England, lasted just three balls before he swung across the line against left-arm spinner Robin Peterson and was leg-before without scoring.