Re: [PATCH] Futexes IV (Fast Lightweight Userspace Semaphores)

From: Rusty Russell (rusty@rustcorp.com.au)
Date: Tue Mar 05 2002 - 20:46:25 EST


In message <Pine.LNX.4.44.0203051433400.1475-100000@blue1.dev.mcafeelabs.com> y
ou write:
> On Tue, 5 Mar 2002, Rusty Russell wrote:
>
> > + pos_in_page = ((unsigned long)uaddr) % PAGE_SIZE;
> > +
> > + /* Must be "naturally" aligned, and not on page boundary. */
> > + if ((pos_in_page % __alignof__(atomic_t)) != 0
> > + || pos_in_page + sizeof(atomic_t) > PAGE_SIZE)
> > + return -EINVAL;
>
> How can this :
>
> (pos_in_page % __alignof__(atomic_t)) != 0
>
> to be false, and together this :
>
> pos_in_page + sizeof(atomic_t) > PAGE_SIZE
>
> to be true ?

You're assuming that __alignof__(atomic_t) = N * sizeof(atomic_t),
where N is an integer.

If alignof == 1, and sizeof == 4, you lose. I prefer to be
future-proof.

This means I should clarify the comment...
Rusty.

--
  Anyone who quotes me in their sig is an idiot. -- Rusty Russell.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Mar 07 2002 - 21:00:51 EST