Lucknow reached 69-2 in the ninth over of the chase, but lost eight wickets for 32 runs to crumble to 101 all out.
Mumbai will now play Gujarat Titans in Qualifier 2 for a place in the final.
After opting to bat first, Mumbai started well, although captain Rohit Sharma and fellow opener Ishan Kishan fell inside the powerplay.
The strokeplay of Green and Suryakumar, though, kept the run-rate high.
It was hovering around 10-an-over before Naveen-ul-Haq, having already dismissed Rohit, removed both Suryakumar and Green with a pair of superb slower balls in the 11th over.
Lucknow managed to slow Mumbai for the next few overs but, after being subbed in, impact player Nehal Wadhera hit a quickfire 23 from 12 balls to take the Indians to an above-par total.
Madhwal struck in the second over of the reply to remove Prerak Mankad and England seamer Chris Jordan ousted Kyle Mayers two overs later.
But Lucknow quickly rebuilt with Marcus Stoinis and skipper Krunal Pandya at the crease.
Just as the Super Giants looked in a position to kick on, though, the innings unravelled.
Pandya holed out off Piyush Chawla to start the collapse and Madhwal took two wickets in two balls in the next over to get rid of Krishnappa Gowtham and Nicholas Pooran.
The needless run-out of Stoinis for 40 all but confirmed the outcome and there were two further run-outs before Madhwal castled Mohsin Khan to seal an emphatic success midway through the 17th over.
What is the IPL play-off schedule?
With Lucknow now eliminated, just three teams remain in the hunt for the IPL trophy.
Mumbai will take on defending champions Gujarat Titans, who lost in Qualifier 1, in Qualifier 2 on Friday.
The winner will then face Chennai Super Kings in Sunday’s final at Ahmedabad. (BBC)