Kennedy goes 7 innings for Diamondbacks