Re: Problem with modification to hid_post_reset

From: Alan Stern
Date: Wed Feb 17 2010 - 14:38:49 EST


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-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/