[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 8 Aug 2006 13:06:00 +0300
From: "Shem Multinymous" <multinymous@...il.com>
To: "Pavel Machek" <pavel@...e.cz>
Cc: "Robert Love" <rlove@...ve.org>,
"Jean Delvare" <khali@...ux-fr.org>,
"Greg Kroah-Hartman" <gregkh@...e.de>,
"Alan Cox" <alan@...rguk.ukuu.org.uk>,
linux-kernel@...r.kernel.org, hdaps-devel@...ts.sourceforge.net
Subject: Re: [PATCH 03/12] hdaps: Unify and cache hdaps readouts
On 8/8/06, Pavel Machek <pavel@...e.cz> wrote:
> /* Parse position data: */
> x = *(s16*)(data.val+EC_ACCEL_IDX_XPOS1);
> y = *(s16*)(data.val+EC_ACCEL_IDX_YPOS1);
> transform_axes(&x, &y);
>
> ...which looks even better to me.
Yes, that's elegant.
But it made me realize there's a race condition here (and and also in
the mainline driver): the global pos_x, rest_x etc. could be updated
while an attribute's show_* function is called. Ugh. I guess I need to
sprinkle spinlocks all over the place.
Shem
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists