Gloucester (20) 48
Tries: Foster, Narraway, Vainikolo (2), Watkins (2) Cons: Lamb (6) Pens: Lamb (2)
Calvisano (5) 5
Winger Mark Foster got the first of Gloucester's tries
Gloucester will remain hopeful of qualifying for the quarter-finals of the Heineken Cup after a bonus-point win over Calvisano at Kingsholm.
Ryan Lamb scored two early penalties before Gerard Fraser got the visitors back in touch with a try.
But Mark Foster and Luke Narraway went over to take the English side into a 20-5 lead after a scrappy first half.
And Lesley Vainikolo and Wales' Matthew Watkins each scored two tries after the break to seal the bonus point.
The result cemented second place for Gloucester in Pool Six behind the unbeaten Cardiff Blues with two games remaining, the next being at home to the Blues in January.
There was more good news for the Cherry and Whites as New Zealand prop Greg Somerville came off the bench to make his debut in the second half.
The 31-year-old, who joined from Canterbury Crusaders, is the most capped prop in All Black history with 67 appearances.
Gloucester struggled to get going in the first 20 minutes, Lamb's two early penalties all but cancelled out when the fly-half's kick was charged down and returned for a try by opposite number Fraser.
After half an hour the hosts finally cut out the errors and put together a fine back move that saw Olly Morgan put Foster over in the corner.
When Lamb sent Narraway in under the posts in first-half injury time the result was no longer in doubt and it was all about securing a bonus point for four tries.
That did not appear to be on the cards when mistakes from Apo Satala and Morgan threw away certain scores soon after the break, but long-range efforts from Vainikolo and Watkins secured the five points.
Gloucester head coach Dean Ryan:
"Our decision making was a step up from last week [Calvisano 17-40 Gloucester]. We played significantly better and so did Calvisano.
"When we lost at Cardiff we had to make sure that we kept winning with bonus points.
"We've done that but Cardiff winning in Biarritz makes it harder for us.
"We wanted there to be something in the game when Cardiff come to us and that's what will happen but really we have to win both our two remaining games to stand a chance of qualifying."
Gloucester: Morgan, Foster, Watkins, Tindall, Vainikolo, Lamb, Cooper, Dickinson, Titterrell, Nieto, Eustace, Bortolami, Buxton, Satala, Narraway.
Replacements: Barkley for Foster (52), Walker for Tindall (75), R. Lawson for Cooper (58), Somerville for Dickinson (51), S. Lawson for Titterrell (60), Young for Nieto (78), James for Eustace (52).
Calvisano: Smith, Forcucci, Garcia, M. Pratichetti, A. Pratichetti, Fraser, Griffen, Bocca, Ghiraldini, Moreno, Purll, Treloar, Dal Maso, Persico, Zanni.
Replacements: McLean for Garcia (61), Patelli for Griffen (76), D'Apice for Ghiraldini (65), Evans for Moreno (45), Cristiano for Purll (76). Not Used: Sidoli, Raineri.
Ref: Tim Hayes (WRFU).