lkml.org 
[lkml]   [2008]   [May]   [13]   [last100]   RSS Feed
Views: [more markup]   [less markup]   [headers]   [forward]  
 
Messages in this thread
/
DateMon, 12 May 2008 21:01:41 -0700
FromAndrew Morton <>
SubjectRe: [PATCH 18/18] flag parameters: check magic constants
On Mon, 12 May 2008 20:54:34 -0700 Ulrich Drepper <drepper@redhat.com> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Andrew Morton wrote:
> >> +	BUILD_BUG_ON(SOCK_NONBLOCK & SOCK_TYPE_MASK);
> > 
> > The fifth assertion triggers with alpha allmodconfig.
> 
> This means the simple approach won't work for alpha.
> 
> The question is how to solve it?  I suggest the following:
> 
> - - define SOCK_NONBLOCK to some value > 16 in include/asm-alpha/socket.h
> 
> - - add #ifndef SOCK_NONBLOCK around the definition in include/linux/net.h

With a comment, please.

> - - in sys_socket, sys_socketpair, sys_paccept
> 
>    int fflags = flags;
>    if (SOCK_NONBLOCK != O_NONBLOCK && (flags & SOCK_NONBLOCK)) {
>      fflags &= ~SOCK_NONBLOCK;
>      fflags |= O_NONBLOCK;
>    }
> 
>   and use fflags instead of flags in the places where we pass it on.
> 
> This has no costs on platforms other than alpha.
> 
> Shall I sent a patch?

Sounds reasonable.


\
 
 \ /
  Last update: 2008-05-13 06:05    [from the cache]
©2003-2008