On Wed, 17 Feb 2010, Rick L. Vinyard, Jr. wrote: > Following is a short patch that I've been using to add hooks before and > after device reset. I probably won't end up needing the post_reset_finish > hook but I have it there for testing right now. > > The first hook I need so I can set a flag that is dealt with on the first > raw event, and I need to ensure the flag is set prior to queue restart. > > From what I can tell, these shouldn't cause any problems... they should be > trivial but they are causing a kernel fault on resume from a suspend. > > The enclosed patch probably has line wrapping problems. If someone wants > to test it I'll send a more proper patch, but I thought I'd throw it out > there and see if anyone sees anything obvious. I agree, there doesn't seem to be anything really wrong. See below... > ---- G13 code ---- > > #define hid_get_g13data(hdev) \ > ((struct g13_data *)(hid_get_drvdata(hdev))) > > static void g13_post_reset_start(struct hid_device *hdev) > { > struct g13_data *data; > > /* Get the underlying data value */ > data = hid_get_g13data(hdev); > /* need_reset is declared as int */ > data->need_reset = 1; Is your problem caused by data coming out NULL? Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html