summary refs log tree commit diff
path: root/include/net/protocol.h
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@mandriva.com>2006-11-28 03:11:33 -0200
committerDavid S. Miller <davem@sunset.davemloft.net>2006-12-02 21:30:55 -0800
commitee41e2dff1a0ac548f12871f4bb23fe9e69e13eb (patch)
treed71027b2e7d539bc43076da8d39f3e73e4ed4414 /include/net/protocol.h
parent3a137d2065571864be0301b9ebd72ddb01060997 (diff)
downloadlinux-ee41e2dff1a0ac548f12871f4bb23fe9e69e13eb.tar.gz
[INET]: Change protocol field in struct inet_protosw to u16
[acme@newtoy net-2.6.20]$ pahole /tmp/tcp_ipv6.o inet_protosw
/* /pub/scm/linux/kernel/git/acme/net-2.6.20/include/net/protocol.h:69 */
struct inet_protosw {
        struct list_head           list;                 /*     0     8 */
        short unsigned int         type;                 /*     8     2 */

        /* XXX 2 bytes hole, try to pack */

        int                        protocol;             /*    12     4 */
        struct proto *             prot;                 /*    16     4 */
        const struct proto_ops  *  ops;                  /*    20     4 */
        int                        capability;           /*    24     4 */
        char                       no_check;             /*    28     1 */
        unsigned char              flags;                /*    29     1 */
}; /* size: 32, sum members: 28, holes: 1, sum holes: 2, padding: 2 */

So that we can kill that hole, protocol can only go all the way to 255 (RAW).

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Diffstat (limited to 'include/net/protocol.h')
-rw-r--r--include/net/protocol.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/protocol.h b/include/net/protocol.h
index 28c4cac3f8a2..105bf12b0c79 100644
--- a/include/net/protocol.h
+++ b/include/net/protocol.h
@@ -71,7 +71,7 @@ struct inet_protosw {
 
         /* These two fields form the lookup key.  */
 	unsigned short	 type;	   /* This is the 2nd argument to socket(2). */
-	int		 protocol; /* This is the L4 protocol number.  */
+	unsigned short	 protocol; /* This is the L4 protocol number.  */
 
 	struct proto	 *prot;
 	const struct proto_ops *ops;