Tom Cruise is a decent actor, considering he plays similar characters in almost every movie he does. Granted he play those roles very well, but when he steps outside his comfort level he gets mixed reviews like Vanilla Sky(bad) and Collateral(good).
I once got a talk from a bartender about how acting is the least talented profession in the business. I tend to believe him.
To answer the question Tom Cruise is shit.