[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <482910FA.1080703@redhat.com>
Date: Mon, 12 May 2008 20:54:34 -0700
From: Ulrich Drepper <drepper@...hat.com>
To: Andrew Morton <akpm@...ux-foundation.org>
CC: linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
davidel@...ilserver.org, mtk.manpages@...il.com,
torvalds@...ux-foundation.org
Subject: Re: [PATCH 18/18] flag parameters: check magic constants
-----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
- - 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?
- --
➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org
iEYEARECAAYFAkgpEPoACgkQ2ijCOnn/RHQ38gCgyVOI/urGeoIr7CFIfs8C7OyR
I80AniPGGWyxZYUQg0pQlySQHqX/UYlx
=5fA2
-----END PGP SIGNATURE-----
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists