Australia stifle West Indies despite a fightback in Brisbane
West Indies reached 266-8 at stumps after the pair frustrated the hosts for 52 overs, successfully negotiating the tricky twilight period of the day-night affair and adding 149 runs before Da Silva was out lbw to spinner Nathan Lyon for 79.
Speedster Mitchell Starc was the pick of Australia's bowlers, swinging his way to 4-68 with the pink ball.
Australia lead 1-0 in the two-test series having prevailed in the Adelaide opener by 10 wickets.
The day started with touring skipper Kraigg Brathwaite (4) on the right side of two reviews, but no reprieve came when he edged a gentle Josh Hazlewood outswinger to keeper Alex Carey.
The afternoon's first wicket also brought a moment of levity when Hazlewood (2-32) gave a send-off not to the batsman but to Australia all-rounder Cameron Green, who was shooed away from the celebrations having tested positive for COVID-19 along with coach Andrew McDonald.
The slips were soon brought into play by Starc and captain Pat Cummins (1-70), who induced false strokes from Kirk McKenzie and Tagenarine Chanderpaul, both out for 21.
Alick Athanaze was caught behind for eight to become test wicket number 350 for Starc, who also found the outside edge of Justin Greaves (6) to put West Indies in the perilous position of 64-5 at dinner.
Hodge and Da Silva recovered impressively to bat into the third session, frustrating the hosts by ducking anything short and countering Lyon's off-spin with ease.
A sharp chance went begging in the 71st over when Hodge, on 59, flashed Starc past a diving Green at gully but the breakthrough soon came when Da Silva departed.
After the second new ball was taken, Hodge was caught for 71 at second slip off Starc.
Alzarri Joseph contributed an entertaining 32 but was squared up by Hazlewood in the final over to leave debutant Kevin Sinclair unbeaten on 16 overnight.
West Indies last won a test down under in 1997.