Re: [PATCH, take4] FUTEX : new PRIVATE futexes

From: Andrew Morton
Date: Sat Apr 07 2007 - 18:17:12 EST


On Sat, 7 Apr 2007 10:43:39 +0200 Eric Dumazet <dada1@xxxxxxxxxxxxx> wrote:

> Hi all
>
> Updates on this take4 :
>
> - All remarks from Nick were addressed I hope
>
> - Current mm code have a problem with 64bit futexes, as spoted by Nick :
>
> get_futex_key() does a check against sizeof(u32) regardless of futex being 64bits or not.
> So it is possible a 64bit futex spans two pages of memory...
> I had to change get_futex_key() prototype to be able to do a correct test.
>

Cold we please have that in a separate patch? It's logically a part of the
64-bit-futex work, is it not?

> +
> +/**
> + * get_futex_key - Get parameters which are the keys for a futex.
> + * @uaddr: virtual address of the futex
> + * @size: size of futex (4 or 8)
> + * @shared: NULL for a PROCESS_PRIVATE futex,
> + * &current->mm->mmap_sem for a PROCESS_SHARED futex
> + * @key: address where result is stored.
> + *
> + * Returns an error code or 0
> + */
> +int get_futex_key(void __user *uaddr, int size, struct rw_semaphore *shared,
> + union futex_key *key);

Thanks for documenting the interface, but please do it in the .c file at
the function's definition site.

-
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/