Re: select() for delay.
From: Steven Rostedt
Date: Mon Oct 24 2005 - 08:43:48 EST
On Mon, 2005-10-24 at 15:27 +0200, Arjan van de Ven wrote:
> On Mon, 2005-10-24 at 09:18 -0400, Steven Rostedt wrote:
> > Hi Maduhu,
> >
> > On Mon, 2005-10-24 at 16:25 +0530, madhu.subbaiah@xxxxxxxxx wrote:
> >
> > > + put_user(sec, &tvp->tv_sec);
> > > + put_user(usec, &tvp->tv_usec);
> >
> > I won't comment on the rest of the patch, but this part is definitely
> > wrong. The pointer tvp is a user space address and once you dereference
> > that pointer to get to tv_sec, you can have a fault, which might
> > segfault the
>
> &pointer->member doesn't dereference the pointer, it just adds the
> offset of "member" to the content of the pointer.
>
Oh crap! You're right ;-)
Argh, that's what I get for replying before my first cup of coffee and
suffering jet lag.
I should have known this since I just copied over the container_of macro
to a user process, and if what I said was true, ((type *)0)->member
would never work.
Oh well, time to wake up :-)
-- Steve
-
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/