Battery life cut in half recently - DrReadUsbStatus issue?
The error seems like something regular. A Google Search reveals many places it is mentioned (with a logcat), but almost nowhere it is commented on -- except for GALAXY W Constant Error in Logcat (XDA).

A shame they removed the wakelock stats from *#*#4636#*#* service menu (which would have offered you a quick way to check) with Gingerbread and up. You might want to look for some monitor app on the market (there's e.g. SystemPanel which might prove helpful) to figure out what keeps your device awake.

In case this app doesn't provide the required information (I already mentioned Wakelocks being the most probable cause), there's another useful app: BetterBatteryStats (also mentioned in the XDA-Link) seems to bring back Wake-Lock stats. As a short and eased-up explanation: An app might request the CPU not going to sleep, but still not actually use the CPU, though - the Android PowerManager API provides an interface for this). So BetterBatteryStats should help you find the responsible app:

 

For reference, here's the link to the BetterBatteryStats Thread on XDA, including the App (and its Changelog) as well as some closer explanation, especially on Wake-Locks.