)]}'
{
  "log": [
    {
      "commit": "fe3eb20c1ace69e42e6ebf2afd2a904b2ae85cde",
      "tree": "6c49ee94bc60c668aa3f02aa029e167f6669e031",
      "parents": [
        "982d9a9ce389c396bc83ce29d799937f379ddcb7"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Feb 12 11:14:28 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 12 11:14:28 2007 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: change nf_conntrack_l[34]proto_unregister to void\n\nNo caller checks the return value, and since its usually called within the\nmodule unload path there\u0027s nothing a module could do about errors anyway,\nso BUG on invalid conditions and return void.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c0e912d7ed8999f87fa7f084928aac1266e251f3",
      "tree": "ec48a83001871b4e0db78ee9eab520a1fbb02e14",
      "parents": [
        "abbaccda4c364815b8b1a82c45a94f60760e13e1"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Feb 12 11:13:43 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 12 11:13:43 2007 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: fix invalid conntrack statistics RCU assumption\n\nNF_CT_STAT_INC assumes rcu_read_lock in nf_hook_slow disables\npreemption as well, making it legal to use __get_cpu_var without\ndisabling preemption manually. The assumption is not correct anymore\nwith preemptable RCU, additionally we need to protect against softirqs\nwhen not holding nf_conntrack_lock.\n\nAdd NF_CT_STAT_INC_ATOMIC macro, which disables local softirqs,\nand use where necessary.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "923f4902fefdf4e89b0fb32c4e069d4f57d704f5",
      "tree": "2fad9f83c0e6da178f5167f6efb2b75cbe28c68e",
      "parents": [
        "642d628b2c92e5283bbd3c849c7099c64ab68856"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Feb 12 11:12:57 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 12 11:12:57 2007 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: properly use RCU API for nf_ct_protos/nf_ct_l3protos arrays\n\nReplace preempt_{enable,disable} based RCU by proper use of the\nRCU API and add missing rcu_read_lock/rcu_read_unlock calls in\nall paths not obviously only used within packet process context\n(nfnetlink_conntrack).\n  \nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "540473208f8ac71c25a87e1a2670c3c18dd4d6db",
      "tree": "716c6b412ebf3e232bd85da785315f888283d991",
      "parents": [
        "f59e5e82096f81a2cb7d7833001956d81e9fa6fb"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Feb 12 00:55:28 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:44 2007 -0800"
      },
      "message": "[PATCH] mark struct file_operations const 1\n\nMany struct file_operations in the kernel can be \"const\".  Marking them const\nmoves these to the .rodata section, which avoids false sharing with potential\ndirty data.  In addition it\u0027ll catch accidental writes at compile time to\nthese shared resources.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e19e02ca0c5e33ea73a25127dbe6c3b8fcaac4b",
      "tree": "23afba2945a9e09b137b094a868ea176c1e1c800",
      "parents": [
        "0c195c3fc4e95a06b0c0017506f074c94af99c35"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri Feb 09 16:26:55 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:20:45 2007 -0800"
      },
      "message": "[NET]: Reorder fields of struct dst_entry\n\nThis last patch (but not least :) ) finally moves the next pointer at\nthe end of struct dst_entry. This permits to perform route cache\nlookups with a minimal cost of one cache line per entry, instead of\ntwo.\n\nBoth 32bits and 64bits platforms benefit from this new layout.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0c195c3fc4e95a06b0c0017506f074c94af99c35",
      "tree": "dbe840f236a5c67a6ffd02f70ce62102f4a86345",
      "parents": [
        "7cc482634f1f1e1db5401007658c8e8d6cf1617d"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri Feb 09 16:25:52 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:20:43 2007 -0800"
      },
      "message": "[DECNET]: Convert decnet route to use the new dst_entry \u0027next\u0027 pointer\n\nThis patch removes the next pointer from \u0027struct dn_route.u\u0027 union,\nand renames u.rt_next to u.dst.dn_next.\n\nIt also moves \u0027struct flowi\u0027 right after \u0027struct dst_entry\u0027 to prepare\nspeedup lookups.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7cc482634f1f1e1db5401007658c8e8d6cf1617d",
      "tree": "c79f22adc08cd76c2c211a0120fe19d726b8c225",
      "parents": [
        "093c2ca4167cf66f69020329d14138da0da8599b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri Feb 09 16:22:57 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:20:40 2007 -0800"
      },
      "message": "[IPV6]: Convert ipv6 route to use the new dst_entry \u0027next\u0027 pointer\n\nThis patch removes the next pointer from \u0027struct rt6_info.u\u0027 union,\nand renames u.next to u.dst.rt6_next.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "093c2ca4167cf66f69020329d14138da0da8599b",
      "tree": "7bae584ac848923867037324197068c869b62a46",
      "parents": [
        "75ce7ceaa1221858c0163e75d19eb8a423a212ff"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri Feb 09 16:19:26 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:20:38 2007 -0800"
      },
      "message": "[IPV4]: Convert ipv4 route to use the new dst_entry \u0027next\u0027 pointer\n\nThis patch removes the rt_next pointer from \u0027struct rtable.u\u0027 union,\nand renames u.rt_next to u.dst_rt_next.\n\nIt also moves \u0027struct flowi\u0027 right after \u0027struct dst_entry\u0027 to prepare\nthe gain on lookups.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "75ce7ceaa1221858c0163e75d19eb8a423a212ff",
      "tree": "8314e9997683d74767f6c1290bc946fb4cde424c",
      "parents": [
        "f7b14315faf62935a791dd67969c4289563058f0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri Feb 09 16:14:24 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:20:36 2007 -0800"
      },
      "message": "[NET]: Introduce union in struct dst_entry to hold \u0027next\u0027 pointer\n\nThis patch introduces an anonymous union to nicely express the fact that all\nobjects inherited from struct dst_entry should access to the generic \u0027next\u0027\npointer but with appropriate type verification.\n\nThis patch is a prereq before following patches.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dbca9b2750e3b1ee6f56a616160ccfc12e8b161f",
      "tree": "bf84c0acb5495fc95bc616d32b8af946f2e3bca9",
      "parents": [
        "eac3731bd04c7131478722a3c148b78774553116"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Feb 08 14:16:46 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 08 14:16:46 2007 -0800"
      },
      "message": "[NET]: change layout of ehash table\n\nehash table layout is currently this one :\n\nFirst half of this table is used by sockets not in TIME_WAIT state\nSecond half of it is used by sockets in TIME_WAIT state.\n\nThis is non optimal because of for a given hash or socket, the two chain heads \nare located in separate cache lines.\nMoreover the locks of the second half are never used.\n\nIf instead of this halving, we use two list heads in inet_ehash_bucket instead \nof only one, we probably can avoid one cache miss, and reduce ram usage, \nparticularly if sizeof(rwlock_t) is big (various CONFIG_DEBUG_SPINLOCK, \nCONFIG_DEBUG_LOCK_ALLOC settings). So we still halves the table but we keep \ntogether related chains to speedup lookups and socket state change.\n\nIn this patch I did not try to align struct inet_ehash_bucket, but a future \npatch could try to make this structure have a convenient size (a power of two \nor a multiple of L1_CACHE_SIZE).\nI guess rwlock will just vanish as soon as RCU is plugged into ehash :) , so \nmaybe we dont need to scratch our heads to align the bucket...\n\nNote : In case struct inet_ehash_bucket is not a power of two, we could \nprobably change alloc_large_system_hash() (in case it use __get_free_pages()) \nto free the unused space. It currently allocates a big zone, but the last \nquarter of it could be freed. Again, this should be a temporary \u0027problem\u0027.\n\nPatch tested on ipv4 tcp only, but should be OK for IPV6 and DCCP.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eac3731bd04c7131478722a3c148b78774553116",
      "tree": "66c1ce279bbd586e3fcf417cfd6057db3df296ae",
      "parents": [
        "5da5e658debb7deddbfe5c133c76db3be0a3e12c"
      ],
      "author": {
        "name": "Jennifer Hunt",
        "email": "jenhunt@us.ibm.com",
        "time": "Thu Feb 08 13:51:54 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 08 13:51:54 2007 -0800"
      },
      "message": "[S390]: Add AF_IUCV socket support\n\nFrom: Jennifer Hunt \u003cjenhunt@us.ibm.com\u003e\n\nThis patch adds AF_IUCV socket support.\n\nSigned-off-by: Frank Pavlic \u003cfpavlic@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2356f4cb191100a5e92d537f13e5efdbc697e9cb",
      "tree": "2c39e250658886dbac8208573e52dd5df300226b",
      "parents": [
        "33a67fe898dbbe25589d2fca805cb68cfd7d311f"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Feb 08 13:37:42 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 08 13:37:42 2007 -0800"
      },
      "message": "[S390]: Rewrite of the IUCV base code, part 2\n\nAdd rewritten IUCV base code to net/iucv.\n\nSigned-off-by: Frank Pavlic \u003cfpavlic@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "39e21c0d34fe769d06839679fa920217359a58b0",
      "tree": "954c04db643a0f4d9fb7e4dc686981a6b207ed57",
      "parents": [
        "95a9dc4390c8215d922e0ca2ebb95279261fe795"
      ],
      "author": {
        "name": "Andrew Hendry",
        "email": "andrew.hendry@gmail.com",
        "time": "Thu Feb 08 13:34:36 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 08 13:34:36 2007 -0800"
      },
      "message": "[X.25]: Adds /proc/sys/net/x25/x25_forward to control forwarding.\n\necho \"1\" \u003e /proc/sys/net/x25/x25_forward \nTo turn on x25_forwarding, defaults to off\nRequires the previous patch.\n\nSigned-off-by: Andrew Hendry \u003candrew.hendry@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95a9dc4390c8215d922e0ca2ebb95279261fe795",
      "tree": "8b4be0c3a672ebd30d2777227e9a466819483ab8",
      "parents": [
        "e610e679dd0057403c96cd31f8739792780732ee"
      ],
      "author": {
        "name": "Andrew Hendry",
        "email": "andrew.hendry@gmail.com",
        "time": "Thu Feb 08 13:34:02 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 08 13:34:02 2007 -0800"
      },
      "message": "[X.25]: Add call forwarding\n\nAdds call forwarding to X.25, allowing it to operate like an X.25 router.\nUseful if one needs to manipulate X.25 traffic with tools like tc.\nThis is an update/cleanup based off a patch submitted by Daniel Ferenci a few years ago.\n\nThanks Alan for the feedback.\nAdded the null check to the clones.\nMoved the skb_clone\u0027s into the forwarding functions.\n\nWorked ok with Cisco XoT, linux X.25 back to back, and some old NTUs/PADs.\n\nSigned-off-by: Andrew Hendry \u003candrew.hendry@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "80c9abaabf4283f7cf4a0b3597cd302506635b7f",
      "tree": "7dd4270a22e039c827114d182c2071a84826f563",
      "parents": [
        "9934e81c8c4981342dab3e386aff5d4499bea0d2"
      ],
      "author": {
        "name": "Shinta Sugimoto",
        "email": "shinta.sugimoto@ericsson.com",
        "time": "Thu Feb 08 13:11:42 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 08 13:11:42 2007 -0800"
      },
      "message": "[XFRM]: Extension for dynamic update of endpoint address(es)\n\nExtend the XFRM framework so that endpoint address(es) in the XFRM\ndatabases could be dynamically updated according to a request (MIGRATE\nmessage) from user application. Target XFRM policy is first identified\nby the selector in the MIGRATE message. Next, the endpoint addresses\nof the matching templates and XFRM states are updated according to\nthe MIGRATE message.\n\nSigned-off-by: Shinta Sugimoto \u003cshinta.sugimoto@ericsson.com\u003e\nSigned-off-by: Masahide NAKAMURA \u003cnakam@linux-ipv6.org\u003e\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "41f4689a7c8cd76b77864461b3c58fde8f322b2c",
      "tree": "29be7597bc02158ca41261f365ebcbd8047dd56f",
      "parents": [
        "cdd289a2f833b93e65b9a09a02c37f47a58140a8"
      ],
      "author": {
        "name": "Eric Leblond",
        "email": "eric@inl.fr",
        "time": "Wed Feb 07 15:10:09 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:39:17 2007 -0800"
      },
      "message": "[NETFILTER]: NAT: optional source port randomization support\n\nThis patch adds support to NAT to randomize source ports.\n\nSigned-off-by: Eric Leblond \u003ceric@inl.fr\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6fecd1985116fb08bdee3b9db6719e159fe5e43d",
      "tree": "5348319657ec1cdfa8cdf9fba4e6bbad046dc811",
      "parents": [
        "719647e2131585ea0a82b05d3745b36be32975d8"
      ],
      "author": {
        "name": "Michal Schmidt",
        "email": "mschmidt@redhat.com",
        "time": "Wed Feb 07 15:05:12 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:39:09 2007 -0800"
      },
      "message": "[NETFILTER]: Add SANE connection tracking helper\n\nThis is nf_conntrack_sane, a netfilter connection tracking helper module\nfor the SANE protocol used by the \u0027saned\u0027 daemon to make scanners available\nvia network. The SANE protocol uses separate control \u0026 data connections,\nsimilar to passive FTP. The helper module is needed to recognize the data\nconnection as RELATED to the control one.\n\nSigned-off-by: Michal Schmidt \u003cmschmidt@redhat.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cdca72652adf597f7fef821a27595fd0dd5eea19",
      "tree": "4a11752d72f70b2248aa811c165cc95007d21a8f",
      "parents": [
        "243cb4e56061c3f4cb76312c5527840344d57c3b"
      ],
      "author": {
        "name": "Miika Komu",
        "email": "miika@iki.fi",
        "time": "Tue Feb 06 14:24:56 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:39:00 2007 -0800"
      },
      "message": "[IPSEC]: exporting xfrm_state_afinfo\n\nThis patch exports xfrm_state_afinfo.\n\nSigned-off-by: Miika Komu \u003cmiika@iki.fi\u003e\nSigned-off-by: Diego Beltrami \u003cDiego.Beltrami@hiit.fi\u003e\nSigned-off-by: Kazunori Miyazawa \u003cmiyazawa@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8eb9086f21c73b38b5ca27558db4c91d62d0e70b",
      "tree": "1fa2694f1e5eac966cc8db2fb8d5f3d684b09803",
      "parents": [
        "ba7808eac17360dda459f82222859b0e3879854b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 02:09:21 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:38:45 2007 -0800"
      },
      "message": "[IPV4/IPV6]: Always wait for IPSEC SA resolution in socket contexts.\n\nDo this even for non-blocking sockets.  This avoids the silly -EAGAIN\nthat applications can see now, even for non-blocking sockets in some\ncases (f.e. connect()).\n\nWith help from Venkat Tekkirala.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba7808eac17360dda459f82222859b0e3879854b",
      "tree": "b9774fb03694e7e019d57c6f0b306cdd1232d4d2",
      "parents": [
        "a0d78ebf3a0e33a1aeacf2fc518ad9273d6a1c2f"
      ],
      "author": {
        "name": "Frederik Deweerdt",
        "email": "frederik.deweerdt@gmail.com",
        "time": "Sun Feb 04 20:15:27 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:38:44 2007 -0800"
      },
      "message": "[TCP]: remove tcp header from tcp_v4_check (take #2)\n\nThe tcphdr struct passed to tcp_v4_check is not used, the following\npatch removes it from the parameter list.\n\nThis adds the netfilter modifications missing in the patch I sent\nfor rc3-mm1.\n\nSigned-off-by: Frederik Deweerdt \u003cfrederik.deweerdt@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e89862f4c5b3c4ac9afcd8cb1365d2f1e16ddc3b",
      "tree": "f402fe7326021a371e11c2c59b7aaf1b12d300d3",
      "parents": [
        "d5e76b0a280f71b20bdd20d1c1b4d6812ceb8c3a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Jan 26 01:04:55 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Jan 26 01:04:55 2007 -0800"
      },
      "message": "[TCP]: Restore SKB socket owner setting in tcp_transmit_skb().\n\nRevert 931731123a103cfb3f70ac4b7abfc71d94ba1f03\n\nWe can\u0027t elide the skb_set_owner_w() here because things like certain\nnetfilter targets (such as owner MATCH) need a socket to be set on the\nSKB for correct operation.\n\nThanks to Jan Engelhardt and other netfilter list members for\npointing this out.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "610ab73ac4cc8912fc253bbdc6d1f74bad3c8e3a",
      "tree": "311593c67bcc70b1cc298543a74c6ae25632ef1a",
      "parents": [
        "d023f629451ace6f37eb5d2cf29ddd24497c91dc"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Jan 15 19:18:30 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 23 20:25:46 2007 -0800"
      },
      "message": "[SCTP]: Correctly handle unexpected INIT-ACK chunk.\n\nConsider the chunk as Out-of-the-Blue if we don\u0027t have\nan endpoint.  Otherwise discard it as before.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "16d807988ffaf9b7cbb1966955aa8f738c32e740",
      "tree": "f0b1d92af0bf30bd520753673cf7b2d83e2c98be",
      "parents": [
        "c54ea3b95ac504ed81e0ec3acfaa26d0f55bdfa4"
      ],
      "author": {
        "name": "Mikael Pettersson",
        "email": "mikpe@it.uu.se",
        "time": "Mon Jan 15 17:17:31 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 23 20:25:43 2007 -0800"
      },
      "message": "[NETFILTER]: fix xt_state compile failure\n\nIn file included from net/netfilter/xt_state.c:13:\ninclude/net/netfilter/nf_conntrack_compat.h: In function \u0027nf_ct_l3proto_try_module_get\u0027:\ninclude/net/netfilter/nf_conntrack_compat.h:70: error: \u0027PF_INET\u0027 undeclared (first use in this function)\ninclude/net/netfilter/nf_conntrack_compat.h:70: error: (Each undeclared identifier is reported only once\ninclude/net/netfilter/nf_conntrack_compat.h:70: error: for each function it appears in.)\ninclude/net/netfilter/nf_conntrack_compat.h:71: warning: control reaches end of non-void function\nmake[2]: *** [net/netfilter/xt_state.o] Error 1\nmake[1]: *** [net/netfilter] Error 2\nmake: *** [net] Error 2\n\nA simple fix is to have nf_conntrack_compat.h #include \u003clinux/socket.h\u003e.\n\nSigned-off-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "11897539a967059a817175ea57ad586a1faadd80",
      "tree": "67dfb1a5608a9439d0d263dde37be27eee1ad83b",
      "parents": [
        "80b02e595c308a5deb2ad49bd6aa3ab1da9cdbdb",
        "fe5f8e2a1c5c040209c598a28e19c55f30e1040d"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Jan 07 22:44:56 2007 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Jan 07 22:44:56 2007 -0500"
      },
      "message": "Merge branch \u0027upstream-fixes\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream-fixes\n"
    },
    {
      "commit": "0d630cc0a6cb8ad544b5913a26ff1349ed7c8587",
      "tree": "b57945e7c6fa865dcf549822b6888b88cbc0c820",
      "parents": [
        "44f9a2fdc48ccb8bb510b6e1210bf15b3e10afdb"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Thu Jan 04 12:25:16 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 04 12:25:16 2007 -0800"
      },
      "message": "[TCP]: Use old definition of before\n\nThis reverts the new (unambiguous) definition of the TCP `before\u0027\nrelation. As pointed out in an example by Herbert Xu, there is \nexisting code which implicitly requires the old definition in order\nto work correctly.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7f18ba6248625a587559ed1206d12ccaa3ad045e",
      "tree": "4f48a5a6e167d5da2fe9a58dff76b443a99f64f6",
      "parents": [
        "5e7c001c6279f38b15fef5369496fe1043765727"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Jan 03 18:48:13 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 03 18:48:13 2007 -0800"
      },
      "message": "[X25]: proper prototype for x25_init_timers()\n\nThis patch adds a proper prototype for x25_init_timers() in \ninclude/net/x25.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3eb546057dd65ec75c900c9948684ffd5e617630",
      "tree": "3916421649606f92a4b0e28d31db249f4a4f624b",
      "parents": [
        "669df1b478803f49a356528d290af7bf442eb3be"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Mon Dec 18 17:26:13 2006 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 02 20:56:26 2007 -0500"
      },
      "message": "[PATCH] ieee80211: WLAN_GET_SEQ_SEQ fix (select correct region)\n\nThe WLAN_GET_SEQ_SEQ(seq) macro in ieee80211 is selecting the wrong region.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b23e3536667373e44f52a907f63cb55f75969490",
      "tree": "97710f966f31be6406ab389dbbd08d69dd7c0786",
      "parents": [
        "24123186fa271e7ad34a40f815782e6205f34ff7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 21 13:15:18 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 22 11:12:07 2006 -0800"
      },
      "message": "[IPV6]: Dumb typo in generic csum_ipv6_magic()\n\n... duh\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24123186fa271e7ad34a40f815782e6205f34ff7",
      "tree": "5db803011d88a66eb52a37a30a0e7aa4a8f76e1f",
      "parents": [
        "0f3fffd8ab1db7658c97c167e8ab001cc814e1f4"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Dec 20 16:08:22 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 22 11:12:05 2006 -0800"
      },
      "message": "[SCTP]: make 2 functions static\n\nThis patch makes the following needlessly global functions static:\n- ipv6.c: sctp_inet6addr_event()\n- protocol.c: sctp_inetaddr_event()\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f3fffd8ab1db7658c97c167e8ab001cc814e1f4",
      "tree": "e8531868627f2b9ac71800fd408969e025c2051a",
      "parents": [
        "a3f7f142f73ed4cb23826bee84afc31d10377e39"
      ],
      "author": {
        "name": "Ivan Skytte Jorgensen",
        "email": "isj-sctp@i1.dk",
        "time": "Wed Dec 20 16:07:04 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 22 11:12:04 2006 -0800"
      },
      "message": "[SCTP]: Fix typo adaption -\u003e adaptation as per the latest API draft.\n\nSigned-off-by: Ivan Skytte Jorgensen \u003cisj-sctp@i1.dk\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a036b9c33f74c989c4c8ac0abe05e0ed88f1f25",
      "tree": "7eadf26579e996975e35a5f34298937f7bd114e8",
      "parents": [
        "1f8a5fb80e63aab63de81169ab749d73e7509e3f"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Dec 20 10:25:55 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 22 11:12:01 2006 -0800"
      },
      "message": "[TCP]: Fix ambiguity in the `before\u0027 relation.\n\nWhile looking at DCCP sequence numbers, I stumbled over a problem with\nthe following definition of before in tcp.h:\n\nstatic inline int before(__u32 seq1, __u32 seq2)\n{\n        return (__s32)(seq1-seq2) \u003c 0;\n}\n\nProblem: This definition suffers from an an ambiguity, i.e. always\n\n           before(a, (a + 2^31) % 2^32)) \u003d 1\n           before((a + 2^31) % 2^32), a) \u003d 1\n\n         In text: when the difference between a and b amounts to 2^31,\n         a is always considered `before\u0027 b, the function can not decide.\n         The reason is that implicitly 0 is `before\u0027 1 ... 2^31-1 ... 2^31\n\nSolution: There is a simple fix, by defining before in such a way that\n          0 is no longer `before\u0027 2^31, i.e. 0 `before\u0027 1 ... 2^31-1\n          By not using the middle between 0 and 2^32, before can be made\n          unambiguous.\n          This is achieved by testing whether seq2-seq1 \u003e 0 (using signed\n          32-bit arithmetic).\n\nI attach a patch to codify this. Also the `after\u0027 relation is basically\na redefinition of `before\u0027, it is now defined as a macro after before.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a3d384029aa304f8f3f5355d35f0ae274454f7cd",
      "tree": "6bdb628b439cde292317fa5e89e14977899855a5",
      "parents": [
        "a159aaa328a02b0189774c58ae7d917b25d26852"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Thu Dec 14 15:52:13 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 21:59:14 2006 -0800"
      },
      "message": "[AX.25]: Fix unchecked rose_add_loopback_neigh uses\n\nrose_add_loopback_neigh uses kmalloc and the callers were ignoring the\nerror value.  Rewrite to let the caller deal with the allocation.  This\nallows the use of static allocation of kmalloc use entirely.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a4282717c102aef2bfab1d947c392de4d8abc0ec",
      "tree": "ef178b6eea8cd9a8790ae58a6c19ff2aa877bcc1",
      "parents": [
        "58bc57471514be9206ebcda90b1076f6be41d1c7"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Thu Dec 14 15:51:23 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 21:59:11 2006 -0800"
      },
      "message": "[AX.25]: Fix unchecked ax25_linkfail_register uses\n\nax25_linkfail_register uses kmalloc and the callers were ignoring the\nerror value.  Rewrite to let the caller deal with the allocation.  This\nallows the use of static allocation of kmalloc use entirely.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d5cf596d10d740b69b5f4bbdb54b85abf75810d",
      "tree": "f0fd6a296f1b90d5fb1898ce1932c6ec5d245465",
      "parents": [
        "c9266b99e2def0a456766220df09713f8e765891"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Thu Dec 14 15:50:01 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 21:59:08 2006 -0800"
      },
      "message": "[AX.25]: Fix unchecked ax25_protocol_register uses.\n\nReplace ax25_protocol_register by ax25_register_pid which assumes the\ncaller has done the memory allocation.  This allows replacing the\nkmalloc allocations entirely by static allocations.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c9266b99e2def0a456766220df09713f8e765891",
      "tree": "4685070018632e00437fbb368b28d6cc1ebc467e",
      "parents": [
        "bd2b334378530f6dbe03f6325b8c885524e298a3"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Thu Dec 14 15:49:28 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Dec 17 21:59:07 2006 -0800"
      },
      "message": "[AX.25]: Mark all kmalloc users __must_check\n\nThe recent fix 0506d4068bad834aab1141b5dc5e748eb175c6b3 made obvious that\nerror values were not being propagated through the AX.25 stack.  To help\nwith that this patch marks all kmalloc users in the AX.25, NETROM and\nROSE stacks as __must_check.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8bce65b95ac167693ae2d706b5341409dca0062d",
      "tree": "d73baf0f20809543a09a2c9cb27c54003af2d460",
      "parents": [
        "6ab792f577012312a760a3a1e679ae8fae012442"
      ],
      "author": {
        "name": "Kim Nordlund",
        "email": "kim.nordlund@nokia.com",
        "time": "Wed Dec 13 16:38:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Dec 13 16:48:31 2006 -0800"
      },
      "message": "[IPV6]: Make fib6_node subtree depend on IPV6_SUBTREES\n\nMake fib6_node \u0027subtree\u0027 depend on IPV6_SUBTREES.\n\nSigned-off-by: Kim Nordlund \u003ckim.nordlund@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ab792f577012312a760a3a1e679ae8fae012442",
      "tree": "7d60307266f3d81afdf06ec14e646d2f7a1b4ef7",
      "parents": [
        "882a382c3e0b432fa91672e1c2754cac3f5a6b4f"
      ],
      "author": {
        "name": "Ivan Skytte Jorgensen",
        "email": "isj-sctp@i1.dk",
        "time": "Wed Dec 13 16:34:22 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Dec 13 16:48:29 2006 -0800"
      },
      "message": "[SCTP]: Add support for SCTP_CONTEXT socket option.\n\nSigned-off-by: Ivan Skytte Jorgensen \u003cisj-sctp@i1.dk\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "29c7cf96186ac14ce7380633f690fc39732ff03a",
      "tree": "ccc95adc0e1185469e77a1adcae1d300d0b534d1",
      "parents": [
        "6931ba7cef3991fbb970997d33e24139ccdc3c2c"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Wed Dec 13 16:26:26 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Dec 13 16:48:27 2006 -0800"
      },
      "message": "[SCTP]: Handle address add/delete events in a more efficient way.\n\nCurrently in SCTP, we maintain a local address list by rebuilding the whole\nlist from the device list whenever we get a address add/delete event.\n\nThis patch fixes it by only adding/deleting the address for which we\nreceive the event.\n\nAlso removed the sctp_local_addr_lock() which is no longer needed as we\nnow use list_for_each_safe() to traverse this list. This fixes the bugs\nin sctp_copy_laddrs_xxx() routines where we do copy_to_user() while\nholding this lock.\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fe0b9294c9f951a64c768f8a5879154235efe63f",
      "tree": "cf8c5ad0a4fd2d8b8c799ba3feda347ade47e2b8",
      "parents": [
        "083e69e99e1c728d360c6346456daa4d4c19e25c"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Tue Dec 12 00:28:40 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Dec 13 16:48:20 2006 -0800"
      },
      "message": "[NETFILTER]: x_tables: error if ip_conntrack is asked to handle IPv6 packets\n\nTo do that, this makes nf_ct_l3proto_try_module_{get,put} compatible\nfunctions. As a result we can remove \u0027#ifdef\u0027 surrounds and direct call of\nneed_conntrack().\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "905f3ed62515f233fea09dc5ad68bbcff4903520",
      "tree": "3ebd0793db6978a37c9e40761b090b179cca9116",
      "parents": [
        "db71b7f19c3ddc8897437e655130f9010f9a9b72"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Wed Dec 13 00:35:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:52 2006 -0800"
      },
      "message": "[PATCH] hci endianness annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f654c854d1d4e0aca5389ace541647237eb7f753",
      "tree": "1b0e12ee723795bef70723749315a780e41c7b52",
      "parents": [
        "8109b02b5397ed52a32c116163a62a34f4768b26"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 13:46:45 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:35:01 2006 -0800"
      },
      "message": "[HAMRADIO]: Fix baycom_epp.c compile failure.\n\nFix foobar in 15b1c0e822f578306332d4f4c449250db5c5dceb and\ne8cc49bb0fdb9e18a99e6780073d1400ba2b0d1f patch series.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1f29bcd739972f71f2fd5d5d265daf3e1208fa5e",
      "tree": "96e20e4d0a077d813d8625d6919aba9bd0b5ed13",
      "parents": [
        "98d7340c360993fdd703609ff7462051e03cc2fb"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Dec 10 02:19:10 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:55:41 2006 -0800"
      },
      "message": "[PATCH] sysctl: remove unused \"context\" param\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "15b1c0e822f578306332d4f4c449250db5c5dceb",
      "tree": "c577cadd3edb7a9915501f1bcb4be086961bb316",
      "parents": [
        "e8cc49bb0fdb9e18a99e6780073d1400ba2b0d1f"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Thu Dec 07 15:47:08 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 08 17:19:26 2006 -0800"
      },
      "message": "[AX.25]: Fix default address and broadcast address initialization.\n\nOnly the callsign but not the SSID part of an AX.25 address is ASCII\nbased but Linux by initializes the SSID which should be just a 4-bit\nnumber from ASCII anyway.\n\nFix that and convert the code to use a shared constant for both default\naddresses.  While at it, use the same style for null_ax25_address also.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e8cc49bb0fdb9e18a99e6780073d1400ba2b0d1f",
      "tree": "f60c38413d47ae0d793673a85578c6b82088aa97",
      "parents": [
        "6c1bbcc8836358294c431e0c09e85e3480895659"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Thu Dec 07 15:43:13 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 08 17:19:25 2006 -0800"
      },
      "message": "[AX.25]: Constify ax25 utility functions\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3644f0cee77494190452de132e82245107939284",
      "tree": "7aeb1dd32c68e372cc2aaa9d26703dd238b48a53",
      "parents": [
        "eb991b39385c7b04923d701764a34694ec54b53d"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Dec 07 15:08:17 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 08 17:19:20 2006 -0800"
      },
      "message": "[NET]: Convert hh_lock to seqlock.\n\nThe hard header cache is in the main output path, so using\nseqlock instead of reader/writer lock should reduce overhead.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "edc6afc5496875a640bef0913604be7550c1795d",
      "tree": "b05cd34a9a0d71edc9d6d7487ad551f0e15887b8",
      "parents": [
        "be90038a24c814dc98bc5a813f41855779000018"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Fri Dec 08 02:38:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:56 2006 -0800"
      },
      "message": "[PATCH] tty: switch to ktermios and new framework\n\nThis is the core of the switch to the new framework.  I\u0027ve split it from the\ndriver patches which are mostly search/replace and would encourage people to\ngive this one a good hard stare.\n\nThe references to BOTHER and ISHIFT are the termios values that must be\ndefined by a platform once it wants to turn on \"new style\" ioctl support.  The\ncode patches here ensure that providing\n\n1. The termios overlays the ktermios in memory\n2. The only new kernel only fields are c_ispeed/c_ospeed (or none)\n\nthe existing behaviour is retained.  This is true for the patches at this\npoint in time.\n\nFuture patches will define BOTHER, ISHIFT and enable newer termios structures\nfor each architecture, and once they are all done some of the ifdefs also\nvanish.\n\n[akpm@osdl.org: warning fix]\n[akpm@osdl.org: IRDA fix]\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2685b267bce34c9b66626cb11664509c32a761a5",
      "tree": "ce8b4ad47b4a1aa1b0e7634298d63c4cb0ca46c5",
      "parents": [
        "4522d58275f124105819723e24e912c8e5bf3cdd",
        "272491ef423b6976a230a998b10f46976aa91342"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 09:05:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 09:05:15 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (48 commits)\n  [NETFILTER]: Fix non-ANSI func. decl.\n  [TG3]: Identify Serdes devices more clearly.\n  [TG3]: Use msleep.\n  [TG3]: Use netif_msg_*.\n  [TG3]: Allow partial speed advertisement.\n  [TG3]: Add TG3_FLG2_IS_NIC flag.\n  [TG3]: Add 5787F device ID.\n  [TG3]: Fix Phy loopback.\n  [WANROUTER]: Kill kmalloc debugging code.\n  [TCP] inet_twdr_hangman: Delete unnecessary memory barrier().\n  [NET]: Memory barrier cleanups\n  [IPSEC]: Fix inetpeer leak in ipv4 xfrm dst entries.\n  audit: disable ipsec auditing when CONFIG_AUDITSYSCALL\u003dn\n  audit: Add auditing to ipsec\n  [IRDA] irlan: Fix compile warning when CONFIG_PROC_FS\u003dn\n  [IrDA]: Incorrect TTP header reservation\n  [IrDA]: PXA FIR code device model conversion\n  [GENETLINK]: Fix misplaced command flags.\n  [NETLIK]: Add a pointer to the Generic Netlink wiki page.\n  [IPV6] RAW: Don\u0027t release unlocked sock.\n  ...\n"
    },
    {
      "commit": "ed07536ed6731775219c1df7fa26a7588753e693",
      "tree": "c539d80fe50f28d4e294850bb33be810f46fd515",
      "parents": [
        "b9d85b08c689dbf54b9943a02f73cb54c2b0fccf"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 06 20:35:24 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:30 2006 -0800"
      },
      "message": "[PATCH] lockdep: annotate nfs/nfsd in-kernel sockets\n\nStick NFS sockets in their own class to avoid some lockdep warnings.  NFS\nsockets are never exposed to user-space, and will hence not trigger certain\ncode paths that would otherwise pose deadlock scenarios.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Steven Dickson \u003cSteveD@redhat.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\n[ Fixed patch corruption by quilt, pointed out by Peter Zijlstra ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e18b890bb0881bbab6f4f1a6cd20d9c60d66b003",
      "tree": "4828be07e1c24781c264b42c5a75bcd968223c3f",
      "parents": [
        "441e143e95f5aa1e04026cb0aa71c801ba53982f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] slab: remove kmem_cache_t\n\nReplace all uses of kmem_cache_t with struct kmem_cache.\n\nThe patch was generated using the following script:\n\n\t#!/bin/sh\n\t#\n\t# Replace one string by another in all the kernel sources.\n\t#\n\n\tset -e\n\n\tfor file in `find * -name \"*.c\" -o -name \"*.h\"|xargs grep -l $1`; do\n\t\tquilt add $file\n\t\tsed -e \"1,\\$s/$1/$2/g\" $file \u003e/tmp/$$\n\t\tmv /tmp/$$ $file\n\t\tquilt refresh\n\tdone\n\nThe script was run like this\n\n\tsh replace kmem_cache_t \"struct kmem_cache\"\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "54e6ecb23951b195d02433a741c7f7cb0b796c78",
      "tree": "c8885c49f37c8d383945b8af69d51597494ed62c",
      "parents": [
        "f7267c0c0721fd02ad3dc37c3d6dd24ccd81d4d6"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:24 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_ATOMIC\n\nSLAB_ATOMIC is an alias of GFP_ATOMIC\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c9204d9ca79baac564b49d36d0228a69d7ded084",
      "tree": "190698c8b1198eda24fa63c8bf562436e6b6fb6f",
      "parents": [
        "161a09e737f0761ca064ee6a907313402f7a54b6"
      ],
      "author": {
        "name": "Joy Latten",
        "email": "latten@austin.ibm.com",
        "time": "Thu Nov 30 15:50:43 2006 -0600"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Dec 06 20:14:23 2006 -0800"
      },
      "message": "audit: disable ipsec auditing when CONFIG_AUDITSYSCALL\u003dn\n\nDisables auditing in ipsec when CONFIG_AUDITSYSCALL is\ndisabled in the kernel.\n\nAlso includes a bug fix for xfrm_state.c as a result of\noriginal ipsec audit patch.\n\nSigned-off-by: Joy Latten \u003clatten@austin.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "161a09e737f0761ca064ee6a907313402f7a54b6",
      "tree": "80fdf6dc5de73d810ef0ec811299a5ec3c5ce23e",
      "parents": [
        "95b99a670df31ca5271f503f378e5cac3aee8f5e"
      ],
      "author": {
        "name": "Joy Latten",
        "email": "latten@austin.ibm.com",
        "time": "Mon Nov 27 13:11:54 2006 -0600"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Dec 06 20:14:22 2006 -0800"
      },
      "message": "audit: Add auditing to ipsec\n\nAn audit message occurs when an ipsec SA\nor ipsec policy is created/deleted.\n\nSigned-off-by: Joy Latten \u003clatten@austin.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95b99a670df31ca5271f503f378e5cac3aee8f5e",
      "tree": "ba5c390a06e211c5198466eef7b420dfbd3e1b5a",
      "parents": [
        "e694ba4428d53882489c07fd7d60c39b3e164dd5"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Dec 06 20:10:07 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 06 20:10:07 2006 -0800"
      },
      "message": "[IRDA] irlan: Fix compile warning when CONFIG_PROC_FS\u003dn\n\ninclude/net/irda/irlan_filter.h:31: warning: \u0027struct seq_file\u0027 declared inside parameter list\ninclude/net/irda/irlan_filter.h:31: warning: its scope is only this definition or declaration, which is probably not what you want\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9db73724453a9350e1c22dbe732d427e2939a5c9",
      "tree": "15e3ead6413ae97398a54292acc199bee0864d42",
      "parents": [
        "4c1ac1b49122b805adfa4efc620592f68dccf5db",
        "e62438630ca37539c8cc1553710bbfaa3cf960a7"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Dec 05 17:01:28 2006 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Tue Dec 05 17:01:28 2006 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tdrivers/ata/libata-scsi.c\n\tinclude/linux/libata.h\n\nFuther merge of Linus\u0027s head and compilation fixups.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "4c1ac1b49122b805adfa4efc620592f68dccf5db",
      "tree": "87557f4bc2fd4fe65b7570489c2f610c45c0adcd",
      "parents": [
        "c4028958b6ecad064b1a6303a6a5906d4fe48d73",
        "d916faace3efc0bf19fe9a615a1ab8fa1a24cd93"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Dec 05 14:37:56 2006 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Tue Dec 05 14:37:56 2006 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tdrivers/infiniband/core/iwcm.c\n\tdrivers/net/chelsio/cxgb2.c\n\tdrivers/net/wireless/bcm43xx/bcm43xx_main.c\n\tdrivers/net/wireless/prism54/islpci_eth.c\n\tdrivers/usb/core/hub.h\n\tdrivers/usb/input/hid-core.c\n\tnet/core/netpoll.c\n\nFix up merge failures with Linus\u0027s head and fix new compilation failures.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "d7fe0f241dceade9c8d4af75498765c5ff7f27e6",
      "tree": "442ab13842a548ef56904d11fd574c98fee14e69",
      "parents": [
        "bd01f843c3368dcee735c19603251669f23f4477"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Dec 03 23:15:30 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Dec 04 02:00:34 2006 -0500"
      },
      "message": "[PATCH] severing skbuff.h -\u003e mm.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bd01f843c3368dcee735c19603251669f23f4477",
      "tree": "3cb848f5577ff7c7cbb21982d81fa4baabc6a7b5",
      "parents": [
        "a1f8e7f7fb9d7e2cbcb53170edca7c0ac4680697"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 19 17:23:57 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Dec 04 02:00:31 2006 -0500"
      },
      "message": "[PATCH] severing skbuff.h -\u003e poll.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f09943fefe6b702e40893d35b4f10fd1064037fe",
      "tree": "b170d046ecf0642471bb3c55d8e1f316fe9e5ddc",
      "parents": [
        "92703eee4ccde3c55ee067a89c373e8a51a8adf9"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Dec 02 22:09:41 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 02 22:09:41 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack/nf_nat: add PPTP helper port\n\nAdd nf_conntrack port of the PPtP conntrack/NAT helper. Since there seems\nto be no IPv6-capable PPtP implementation the helper only support IPv4.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f587de0e2feb9eb9b94f98d0a7b7437e4d6617b4",
      "tree": "64d29dcacf895c37c4b7520bc8b07f0845baf914",
      "parents": [
        "16958900578b94585c2ab9a2d20d837b4d5e3ba6"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Dec 02 22:08:46 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 02 22:08:46 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack/nf_nat: add H.323 helper port\n\nAdd IPv4 and IPv6 capable nf_conntrack port of the H.323 conntrack/NAT helper.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d6a9b6500a8941599bcef98e7de49e1260d104ed",
      "tree": "10dd941f8b67d885665b469bf9c476c0a8cbeebc",
      "parents": [
        "55a733247d6d2883d9bb77825fafac3dfca13fc2"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Dec 02 22:08:01 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 02 22:08:01 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: add helper function for expectation initialization\n\nExpectation address masks need to be differently initialized depending\non the address family, create helper function to avoid cluttering up\nthe code too much.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55a733247d6d2883d9bb77825fafac3dfca13fc2",
      "tree": "e16357243c80ca11fe84639fc84f92e653eb3079",
      "parents": [
        "5b1158e909ecbe1a052203e0d8df15633f829930"
      ],
      "author": {
        "name": "Jozsef Kadlecsik",
        "email": "kadlec@blackhole.kfki.hu",
        "time": "Sat Dec 02 22:07:44 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 02 22:07:44 2006 -0800"
      },
      "message": "[NETFILTER]: nf_nat: add FTP NAT helper port\n\nAdd FTP NAT helper.\n\nSplit out from Jozsef\u0027s big nf_nat patch with a few small fixes by myself.\n\nSigned-off-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5b1158e909ecbe1a052203e0d8df15633f829930",
      "tree": "1d29320fd6184b982b1a8a83e7e1e9f25537d3ff",
      "parents": [
        "d2483ddefd38b06053cdce7206382ca61f6282b1"
      ],
      "author": {
        "name": "Jozsef Kadlecsik",
        "email": "kadlec@blackhole.kfki.hu",
        "time": "Sat Dec 02 22:07:13 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 02 22:07:13 2006 -0800"
      },
      "message": "[NETFILTER]: Add NAT support for nf_conntrack\n\nAdd NAT support for nf_conntrack. Joint work of Jozsef Kadlecsik,\nYasuyuki Kozakai, Martin Josefsson and myself.\n\nSigned-off-by: Jozsef Kadlecsik \u003ckadlec@blackhole.kfki.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9457d851fc5df54522d733f72cbb1f02ab59272e",
      "tree": "42a460d65cbb45b100c43f97ba8a7490df844bb8",
      "parents": [
        "bff9a89bcac5b68ac0a1ea856b1726a35ae1eabb"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Dec 02 22:05:25 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 02 22:05:25 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: automatic helper assignment for expectations\n\nSome helpers (namely H.323) manually assign further helpers to expected\nconnections. This is not possible with nf_conntrack anymore since we\nneed to know whether a helper is used at allocation time.\n\nHandle the helper assignment centrally, which allows to perform the\ncorrect allocation and as a nice side effect eliminates the need\nfor the H.323 helper to fiddle with nf_conntrack_lock.\n\nMid term the allocation scheme really needs to be redesigned since\nwe do both the helper and expectation lookup _twice_ for every new\nconnection.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bff9a89bcac5b68ac0a1ea856b1726a35ae1eabb",
      "tree": "188356d5411849c8d7b1a36dcb3223373a0bbb68",
      "parents": [
        "f9aae95828d3478520f4bd73221bcb450ec1a5c0"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Dec 02 22:05:08 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 02 22:05:08 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: endian annotations\n\nResync with Al Viro\u0027s ip_conntrack annotations and fix a missed\nspot in ip_nat_proto_icmp.c.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f9aae95828d3478520f4bd73221bcb450ec1a5c0",
      "tree": "642e3e4b2625e476a1e31fe2e9aebd05a1e20417",
      "parents": [
        "0c4ca1bd8638d04796553b6e678063c4fadb92cc"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Dec 02 22:04:50 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Dec 02 22:04:50 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: fix helper structure alignment\n\nAdding the alignment to the size doesn\u0027t make any sense, what it\nshould do is align the size of the conntrack structure to the\nalignment requirements of the helper structure and return an\naligned pointer in nfct_help().\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a4d1366d5080fcb4514db58c320b9f60d78918e6",
      "tree": "8358724419b81add4a32e70d9bdcc4676ccd531e",
      "parents": [
        "c40a27f48ceee648e9cfdda040b69e7010d9f82c"
      ],
      "author": {
        "name": "Jamal Hadi Salim",
        "email": "hadi@cyberus.ca",
        "time": "Fri Dec 01 20:07:42 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:32:09 2006 -0800"
      },
      "message": "[GENETLINK]: Add cmd dump completion.\n\nRemove assumption that generic netlink commands cannot have dump\ncompletion callbacks.\n\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "76b3f055f38954c67dab13844eb92203580038f8",
      "tree": "59655690a408aef422e65660c41a51789ea2294f",
      "parents": [
        "08dd1a506bbc4528db60dfdfff61423a1608ed3f"
      ],
      "author": {
        "name": "Miika Komu",
        "email": "miika@iki.fi",
        "time": "Thu Nov 30 16:40:43 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:48 2006 -0800"
      },
      "message": "[IPSEC]: Add encapsulation family.\n\nSigned-off-by: Miika Komu \u003cmiika@iki.fi\u003e\nSigned-off-by: Diego Beltrami \u003cDiego.Beltrami@hiit.fi\u003e\nSigned-off-by: Kazunori Miyazawa \u003cmiyazawa@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "43effa1e57fc4635e0301b27d78f9d83afe78974",
      "tree": "dc4a22fdaad074a547438050fb428f32b1cb2ded",
      "parents": [
        "9f9afec48221fe4a19f84a9341f5b304bf7d7783"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Nov 29 17:35:48 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:42 2006 -0800"
      },
      "message": "[NET_SCHED]: Fix endless loops caused by inaccurate qlen counters (part 1)\n\nThere are multiple problems related to qlen adjustment that can lead\nto an upper qdisc getting out of sync with the real number of packets\nqueued, leading to endless dequeueing attempts by the upper layer code.\n\nAll qdiscs must maintain an accurate q.qlen counter. There are basically\ntwo groups of operations affecting the qlen: operations that propagate\ndown the tree (enqueue, dequeue, requeue, drop, reset) beginning at the\nroot qdisc and operations only affecting a subtree or single qdisc\n(change, graft, delete class). Since qlen changes during operations from\nthe second group don\u0027t propagate to ancestor qdiscs, their qlen values\nbecome desynchronized.\n\nThis patch adds a function to propagate qlen changes up the qdisc tree,\noptionally calling a callback function to perform qdisc-internal\nmaintenance when the child qdisc becomes empty. The follow-up patches\nwill convert all qdiscs to use this function where necessary.\n\nNoticed by Timo Steinbach \u003ctsteinbach@astaro.com\u003e.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f9afec48221fe4a19f84a9341f5b304bf7d7783",
      "tree": "26a906902a7af4a835d59d452f567ca641fa1917",
      "parents": [
        "814a175e7b1531a4bcaa63be47bf58cacdcb5010"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Nov 29 17:35:18 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:41 2006 -0800"
      },
      "message": "[NET_SCHED]: Set parent classid in default qdiscs\n\nSet parent classids in default qdiscs to allow walking up the tree\nfrom outside the qdiscs. This is needed by the next patch.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "02752760359db6b00a3ffb1acfc13ef8d9eb1e3f",
      "tree": "796cd65fd4cd732b295e61dac194efbf36b78842",
      "parents": [
        "ef91fd522ba3c88d9c68261c243567bc4c5a8f55"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Wed Nov 29 13:18:18 2006 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:36 2006 -0800"
      },
      "message": "NetLabel: convert to an extensibile/sparse category bitmap\n\nThe original NetLabel category bitmap was a straight char bitmap which worked\nfine for the initial release as it only supported 240 bits due to limitations\nin the CIPSO restricted bitmap tag (tag type 0x01).  This patch converts that\nstraight char bitmap into an extensibile/sparse bitmap in order to lay the\nfoundation for other CIPSO tag types and protocols.\n\nThis patch also has a nice side effect in that all of the security attributes\npassed by NetLabel into the LSM are now in a format which is in the host\u0027s\nnative byte/bit ordering which makes the LSM specific code much simpler; look\nat the changes in security/selinux/ss/ebitmap.c as an example.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "468ec44bd5a863736d955f78b8c38896f26864a1",
      "tree": "6361aee3639141ce804284dc7a28c0ee631b939c",
      "parents": [
        "e4bd8bce3e8b53e2c0a0d5c9afbc29731e517f8d"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Wed Nov 29 02:35:23 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:21 2006 -0800"
      },
      "message": "[NETFILTER]: conntrack: add \u0027_get\u0027 to {ip, nf}_conntrack_expect_find\n\nWe usually uses \u0027xxx_find_get\u0027 for function which increments\nreference count.\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "e4bd8bce3e8b53e2c0a0d5c9afbc29731e517f8d",
      "tree": "8a7a2e8c5130e002a6324703c31e67770af05993",
      "parents": [
        "a999e6837603e4b5a164333c93918a1292f074c8"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Nov 29 02:35:22 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:20 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: /proc compatibility with old connection tracking\n\nThis patch adds /proc/net/ip_conntrack, /proc/net/ip_conntrack_expect and\n/proc/net/stat/ip_conntrack files to keep old programs using them working.\n\nThe /proc/net/ip_conntrack and /proc/net/ip_conntrack_expect files show only\nIPv4 entries, the /proc/net/stat/ip_conntrack shows global statistics.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "a999e6837603e4b5a164333c93918a1292f074c8",
      "tree": "22e04633ff4f046b9769ebf304520eb0e0acfa5b",
      "parents": [
        "933a41e7e12b773d1dd026018f02b86b5d257a22"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Nov 29 02:35:20 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:19 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: sysctl compatibility with old connection tracking\n\nThis patch adds an option to keep the connection tracking sysctls visible\nunder their old names.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "d62f9ed4a490309bd9e5df0b42ba5d096e7b5902",
      "tree": "8d0791c4e4d711c7ae0c259d80553a85dbfe62bd",
      "parents": [
        "f8eb24a89afa12b48fa7e39775faea6d64b8e538"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Nov 29 02:35:17 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:17 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: automatic sysctl registation for conntrack protocols\n\nAdd helper functions for sysctl registration with optional instantiating\nof common path elements (like net/netfilter) and use it for support for\nautomatic registation of conntrack protocol sysctls.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "f8eb24a89afa12b48fa7e39775faea6d64b8e538",
      "tree": "cab6364c9155bebad3b20a8125c7b2a086c36356",
      "parents": [
        "d73468533451fd896324058d9ba649c11ba3e3ee"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Nov 29 02:35:15 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:16 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: move extern declaration to header files\n\nUsing extern in a C file is a bad idea because the compiler can\u0027t\ncatch type errors.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "824621eddd2087b0e6f0b2e0da91e8d77e4919bf",
      "tree": "6eb2526aa70ee5c73ce39409ea22fc33a576cf74",
      "parents": [
        "3ffd5eeb1a031ad226c80ae6e658970cd08569e2"
      ],
      "author": {
        "name": "Martin Josefsson",
        "email": "gandalf@wlug.westbo.se",
        "time": "Wed Nov 29 02:35:11 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:13 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: remove unused struct list_head from protocols\n\nRemove unused struct list_head from struct nf_conntrack_l3proto and\nnf_conntrack_l4proto as all protocols are kept in arrays, not linked\nlists.\n\nSigned-off-by: Martin Josefsson \u003cgandalf@wlug.westbo.se\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "ae5718fb3dd0a11a4c9a061bf86417d52d58a6b3",
      "tree": "18d070424f6d2d74ee785c24d8f90744d61d3978",
      "parents": [
        "605dcad6c85226e6d43387917b329d65b95cef39"
      ],
      "author": {
        "name": "Martin Josefsson",
        "email": "gandalf@wlug.westbo.se",
        "time": "Wed Nov 29 02:35:08 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:10 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: more sanity checks in protocol registration/unregistration\n\nAdd some more sanity checks when registering/unregistering l3/l4 protocols.\n\nSigned-off-by: Martin Josefsson \u003cgandalf@wlug.westbo.se\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "605dcad6c85226e6d43387917b329d65b95cef39",
      "tree": "e18d19e93a9c1dcf268fb1ed8e91246c3440ba5b",
      "parents": [
        "e2b7606cdb602a4f69c02cfc8bebe9c63b595e24"
      ],
      "author": {
        "name": "Martin Josefsson",
        "email": "gandalf@wlug.westbo.se",
        "time": "Wed Nov 29 02:35:06 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:09 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: rename struct nf_conntrack_protocol\n\nRename \u0027struct nf_conntrack_protocol\u0027 to \u0027struct nf_conntrack_l4proto\u0027 in\norder to help distinguish it from \u0027struct nf_conntrack_l3proto\u0027. It gets\nrather confusing with \u0027nf_conntrack_protocol\u0027.\n\nSigned-off-by: Martin Josefsson \u003cgandalf@wlug.westbo.se\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "f61801218a58381f498ae5c38ae3eae0bc73e976",
      "tree": "f603222aadac9b1defe9db4e00464379fa13b5cd",
      "parents": [
        "7e5d03bb9d2b96fdeab0cb0c98b93e6cf7130c96"
      ],
      "author": {
        "name": "Martin Josefsson",
        "email": "gandalf@wlug.westbo.se",
        "time": "Wed Nov 29 02:35:01 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:06 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: split out the event cache\n\nThis patch splits out the event cache into its own file\nnf_conntrack_ecache.c\n\nSigned-off-by: Martin Josefsson \u003cgandalf@wlug.westbo.se\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "7e5d03bb9d2b96fdeab0cb0c98b93e6cf7130c96",
      "tree": "8214d124da1d3c098b3fcf67f46ef1ec7529cf5d",
      "parents": [
        "77ab9cff0f4112703df3ef7903c1a15adb967114"
      ],
      "author": {
        "name": "Martin Josefsson",
        "email": "gandalf@wlug.westbo.se",
        "time": "Wed Nov 29 02:34:59 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:05 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: split out helper handling\n\nThis patch splits out handling of helpers into its own file\nnf_conntrack_helper.c\n\nSigned-off-by: Martin Josefsson \u003cgandalf@wlug.westbo.se\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "77ab9cff0f4112703df3ef7903c1a15adb967114",
      "tree": "6361b73598e237398d959afdd158c70b68354b09",
      "parents": [
        "d2e4bdc8704b0e711c5046a430bfd1681b0bd5a9"
      ],
      "author": {
        "name": "Martin Josefsson",
        "email": "gandalf@wlug.westbo.se",
        "time": "Wed Nov 29 02:34:58 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:04 2006 -0800"
      },
      "message": "[NETFILTER]: nf_conntrack: split out expectation handling\n\nThis patch splits out expectation handling into its own file\nnf_conntrack_expect.c\n\nSigned-off-by: Martin Josefsson \u003cgandalf@wlug.westbo.se\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "ee41e2dff1a0ac548f12871f4bb23fe9e69e13eb",
      "tree": "d71027b2e7d539bc43076da8d39f3e73e4ed4414",
      "parents": [
        "3a137d2065571864be0301b9ebd72ddb01060997"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Nov 28 03:11:33 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:55 2006 -0800"
      },
      "message": "[INET]: Change protocol field in struct inet_protosw to u16\n\n[acme@newtoy net-2.6.20]$ pahole /tmp/tcp_ipv6.o inet_protosw\n/* /pub/scm/linux/kernel/git/acme/net-2.6.20/include/net/protocol.h:69 */\nstruct inet_protosw {\n        struct list_head           list;                 /*     0     8 */\n        short unsigned int         type;                 /*     8     2 */\n\n        /* XXX 2 bytes hole, try to pack */\n\n        int                        protocol;             /*    12     4 */\n        struct proto *             prot;                 /*    16     4 */\n        const struct proto_ops  *  ops;                  /*    20     4 */\n        int                        capability;           /*    24     4 */\n        char                       no_check;             /*    28     1 */\n        unsigned char              flags;                /*    29     1 */\n}; /* size: 32, sum members: 28, holes: 1, sum holes: 2, padding: 2 */\n\nSo that we can kill that hole, protocol can only go all the way to 255 (RAW).\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "46ca5f5dc4f1c9b5ac02c0090ae8ff4ac8560446",
      "tree": "314b4ec3bfb52d536dff6e9cb201b76571e0d502",
      "parents": [
        "d5c42c0ec4f7fd5a4e19e33a2d561758b67c55c8"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Nov 27 17:58:59 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:48 2006 -0800"
      },
      "message": "[XFRM]: Pack struct xfrm_policy\n\n[acme@newtoy net-2.6.20]$ pahole net/ipv4/tcp.o xfrm_policy\n/* /pub/scm/linux/kernel/git/acme/net-2.6.20/include/linux/security.h:67 */\nstruct xfrm_policy {\n        struct xfrm_policy *       next;                 /*     0     4 */\n        struct hlist_node          bydst;                /*     4     8 */\n        struct hlist_node          byidx;                /*    12     8 */\n        rwlock_t                   lock;                 /*    20    36 */\n        atomic_t                   refcnt;               /*    56     4 */\n        struct timer_list          timer;                /*    60    24 */\n        u8                         type;                 /*    84     1 */\n\n        /* XXX 3 bytes hole, try to pack */\n\n        u32                        priority;             /*    88     4 */\n        u32                        index;                /*    92     4 */\n        struct xfrm_selector       selector;             /*    96    56 */\n        struct xfrm_lifetime_cfg   lft;                  /*   152    64 */\n        struct xfrm_lifetime_cur   curlft;               /*   216    32 */\n        struct dst_entry *         bundles;              /*   248     4 */\n        __u16                      family;               /*   252     2 */\n        __u8                       action;               /*   254     1 */\n        __u8                       flags;                /*   255     1 */\n        __u8                       dead;                 /*   256     1 */\n        __u8                       xfrm_nr;              /*   257     1 */\n\n        /* XXX 2 bytes hole, try to pack */\n\n        struct xfrm_sec_ctx *      security;             /*   260     4 */\n        struct xfrm_tmpl           xfrm_vec[6];          /*   264   360 */\n}; /* size: 624, sum members: 619, holes: 2, sum holes: 5 */\n\nSo lets have just one hole instead of two, by moving \u0027type\u0027 to just before \u0027action\u0027,\nend result:\n\n[acme@newtoy net-2.6.20]$ codiff -s /tmp/tcp.o.before net/ipv4/tcp.o\n/pub/scm/linux/kernel/git/acme/net-2.6.20/net/ipv4/tcp.c:\n  struct xfrm_policy |   -4\n 1 struct changed\n[acme@newtoy net-2.6.20]$\n\n[acme@newtoy net-2.6.20]$ pahole -c 64 net/ipv4/tcp.o xfrm_policy\n/* /pub/scm/linux/kernel/git/acme/net-2.6.20/include/linux/security.h:67 */\nstruct xfrm_policy {\n        struct xfrm_policy *       next;                 /*     0     4 */\n        struct hlist_node          bydst;                /*     4     8 */\n        struct hlist_node          byidx;                /*    12     8 */\n        rwlock_t                   lock;                 /*    20    36 */\n        atomic_t                   refcnt;               /*    56     4 */\n        struct timer_list          timer;                /*    60    24 */\n        u32                        priority;             /*    84     4 */\n        u32                        index;                /*    88     4 */\n        struct xfrm_selector       selector;             /*    92    56 */\n        struct xfrm_lifetime_cfg   lft;                  /*   148    64 */\n        struct xfrm_lifetime_cur   curlft;               /*   212    32 */\n        struct dst_entry *         bundles;              /*   244     4 */\n        u16                        family;               /*   248     2 */\n        u8                         type;                 /*   250     1 */\n        u8                         action;               /*   251     1 */\n        u8                         flags;                /*   252     1 */\n        u8                         dead;                 /*   253     1 */\n        u8                         xfrm_nr;              /*   254     1 */\n\n        /* XXX 1 byte hole, try to pack */\n\n        struct xfrm_sec_ctx *      security;             /*   256     4 */\n        struct xfrm_tmpl           xfrm_vec[6];          /*   260   360 */\n}; /* size: 620, sum members: 619, holes: 1, sum holes: 1 */\n\nAre there any fugly data dependencies here? None that I know.\n\nIn the process changed the removed the __ prefixed types, that are just for\nuserspace visible headers.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "850db6b8c53ff12eadee9ef2aa69360c06bce057",
      "tree": "ae4932e2802d9c114a9b210adb3011660ae42ec4",
      "parents": [
        "4c0a6cb0db19de411c4bf7fcdc79d4c7c4ccafb1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Nov 27 17:56:43 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:46 2006 -0800"
      },
      "message": "[INET_CONNECTION_SOCK]: Pack struct inet_connection_sock_af_ops\n\nWe have a hole in:\n\n[acme@newtoy net-2.6.20]$ pahole net/ipv6/tcp_ipv6.o inet_connection_sock_af_ops\n/* /pub/scm/linux/kernel/git/acme/net-2.6.20/include/net/inet_connection_sock.h:38 */\nstruct inet_connection_sock_af_ops {\n        int                        (*queue_xmit)();      /*     0     4 */\n        void                       (*send_check)();      /*     4     4 */\n        int                        (*rebuild_header)();  /*     8     4 */\n        int                        (*conn_request)();    /*    12     4 */\n        struct sock *              (*syn_recv_sock)();   /*    16     4 */\n        int                        (*remember_stamp)();  /*    20     4 */\n        __u16                      net_header_len;       /*    24     2 */\n\n        /* XXX 2 bytes hole, try to pack */\n\n        int                        (*setsockopt)();      /*    28     4 */\n        int                        (*getsockopt)();      /*    32     4 */\n        int                        (*compat_setsockopt)(); /*    36     4 */\n        int                        (*compat_getsockopt)(); /*    40     4 */\n        void                       (*addr2sockaddr)();   /*    44     4 */\n        int                        sockaddr_len;         /*    48     4 */\n}; /* size: 52, sum members: 50, holes: 1, sum holes: 2 */\n\nBut we don\u0027t need sockaddr_len to be an int:\n\n[acme@newtoy net-2.6.20]$ find net -name \"*.[ch]\" | xargs grep \u0027\\.sockaddr_len.\\+\u003d\u0027 | sort -u\nnet/dccp/ipv4.c:        .sockaddr_len      \u003d sizeof(struct sockaddr_in),\nnet/dccp/ipv6.c:        .sockaddr_len      \u003d sizeof(struct sockaddr_in6),\nnet/ipv4/tcp_ipv4.c:    .sockaddr_len      \u003d sizeof(struct sockaddr_in),\nnet/ipv6/tcp_ipv6.c:    .sockaddr_len      \u003d sizeof(struct sockaddr_in6),\nnet/sctp/ipv6.c:        .sockaddr_len      \u003d sizeof(struct sockaddr_in6),\nnet/sctp/protocol.c:    .sockaddr_len      \u003d sizeof(struct sockaddr_in),\n\n[acme@newtoy net-2.6.20]$ pahole --sizes net/ipv6/tcp_ipv6.o | grep sockaddr_in\nstruct sockaddr_in: 16 0\nstruct sockaddr_in6: 28 0\n[acme@newtoy net-2.6.20]$\n\nSo I turned sockaddr_len a \u0027u16\u0027, and now:\n\n[acme@newtoy net-2.6.20]$ pahole net/ipv6/tcp_ipv6.o inet_connection_sock_af_ops\n/* /pub/scm/linux/kernel/git/acme/net-2.6.20/include/net/inet_connection_sock.h:38 */\nstruct inet_connection_sock_af_ops {\n        int            (*queue_xmit)();        /*     0   4 */\n        void           (*send_check)();        /*     4   4 */\n        int            (*rebuild_header)();    /*     8   4 */\n        int            (*conn_request)();      /*    12   4 */\n        struct sock *  (*syn_recv_sock)();     /*    16   4 */\n        int            (*remember_stamp)();    /*    20   4 */\n        u16            net_header_len;         /*    24   2 */\n        u16            sockaddr_len;           /*    26   2 */\n        int            (*setsockopt)();        /*    28   4 */\n        int            (*getsockopt)();        /*    32   4 */\n        int            (*compat_setsockopt)(); /*    36   4 */\n        int            (*compat_getsockopt)(); /*    40   4 */\n        void           (*addr2sockaddr)();     /*    44   4 */\n}; /* size: 48 */\n\nSo we\u0027ve saved 4 bytes:\n\n[acme@newtoy net-2.6.20]$ codiff -sV /tmp/tcp_ipv6.o.before net/ipv6/tcp_ipv6.o\n/pub/scm/linux/kernel/git/acme/net-2.6.20/net/ipv6/tcp_ipv6.c:\n  struct inet_connection_sock_af_ops |   -4\n    net_header_len;\n     from: __u16                 /*    24(0)     2(0) */\n     to:   u16                   /*    24(0)     2(0) */\n    sockaddr_len;\n     from: int                   /*    48(0)     4(0) */\n     to:   u16                   /*    26(0)     2(0) */\n 1 struct changed\n[acme@newtoy net-2.6.20]$\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "4c0a6cb0db19de411c4bf7fcdc79d4c7c4ccafb1",
      "tree": "e7f793f8d259df2a37fa975325c25961a5d3e14b",
      "parents": [
        "e3703b3de1f049b38733ba520e5038f23063068e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Nov 27 09:29:59 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:45 2006 -0800"
      },
      "message": "[UDP(-Lite)]: consolidate v4 and v6 get|setsockopt code\n\nThis patch consolidates set/getsockopt code between UDP(-Lite) v4 and 6. The\njustification is that UDP(-Lite) is a transport-layer protocol and therefore\nthe socket option code (at least in theory) should be AF-independent.\n\nFurthermore, there is the following code reduplication:\n * do_udp{,v6}_getsockopt is 100% identical between v4 and v6\n * do_udp{,v6}_setsockopt is identical up to the following differerence\n\t--v4 in contrast to v4 additionally allows the experimental encapsulation\n          types  UDP_ENCAP_ESPINUDP and UDP_ENCAP_ESPINUDP_NON_IKE\n\t--the remainder is identical between v4 and v6\n   I believe that this difference is of little relevance.\n\nThe advantages in not duplicating twice almost completely identical code.\n\nThe patch further simplifies the interface of udp{,v6}_push_pending_frames,\nsince for the second argument (struct udp_sock *up) it always holds that\nup \u003d udp_sk(sk); where sk is the first function argument.\n\nSigned-off-by: Gerrit Renker  \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4a89c2562cb81c24c515b9de041aced4d21cb6d1",
      "tree": "9c4610a00e49f2318601122a4634a8ee78764a75",
      "parents": [
        "b020b942cdc238e9761cb38598eda6691c366d68"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Fri Nov 24 17:14:51 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:30 2006 -0800"
      },
      "message": "[DECNET] address: Convert to new netlink interface\n\nExtends the netlink interface to support the __le16 type and\nconverts address addition, deletion and, dumping to use the\nnew netlink interface.\n\nFixes multiple occasions of possible illegal memory references\ndue to not validated netlink attributes.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "66c6f529c31e2886536aad4b2320d566deb1f150",
      "tree": "6237e856b5850112206efd72eeb1a7bbc8af2072",
      "parents": [
        "ff1dcadb1b55dbf471c5ed109dbbdf06bd19ef3b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 18:07:51 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:19 2006 -0800"
      },
      "message": "[NET]: net/sched annotations.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e5200f54062b8af0ed1d186ea0f113854786d89",
      "tree": "71e00b21ae4f8410413f70141aa275529dbbfb84",
      "parents": [
        "34bcca28335977e969338c98c6c43a1e08f592b2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 18:06:37 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:16 2006 -0800"
      },
      "message": "[NET]: Fix assorted misannotations (from md5 and udplite merges).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2178eda82616566b7397791afa6e5487990bac8e",
      "tree": "e266fea4190136027e66e889ed0c6b790c363c1d",
      "parents": [
        "9f81bcd9429e9bb4006eb9b7df276706c5df926d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:26:53 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:14 2006 -0800"
      },
      "message": "[SCTP]: SCTP_CMD_PROCESS_CTSN annotations.\n\nargument passed as __be32\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3dbe86566ed262dae3b5472b9360cb5b65d42716",
      "tree": "e51c42ad86864d66441e1af23661b27058a06a24",
      "parents": [
        "e1857ea28dc76e2a929d1fff4d5d5cf712f12f4e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:25:49 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:11 2006 -0800"
      },
      "message": "[SCTP]: Annotate -\u003esupported_addrs().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e1857ea28dc76e2a929d1fff4d5d5cf712f12f4e",
      "tree": "b2990fd0826d3d3d7ac4c0c956c17c06e3420713",
      "parents": [
        "dce116ae86cb224a9dad787e91fb552dae67b2e8"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:25:32 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:10 2006 -0800"
      },
      "message": "[SCTP]: sctp_association -\u003epeer.i is a host-endian analog of sctp_inthdr.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6fbfa9f951878ab489147d9e459191d4aacfa819",
      "tree": "b542f52199466aab195f86f1565e3beb62d2c04d",
      "parents": [
        "c9c938cb050e6d45088c5c39e4097742e875c496"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:24:53 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:08 2006 -0800"
      },
      "message": "[SCTP]: Annotate -\u003einaddr_any().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c9c938cb050e6d45088c5c39e4097742e875c496",
      "tree": "aac9ff2673584fd66e030c8ab6068f5cef10e7e9",
      "parents": [
        "7dcdbd9579c944bb833f95a7f276d01f49161734"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:24:36 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:07 2006 -0800"
      },
      "message": "[SCTP]: flip_to_{h,n}() are not needed anymore.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "516b20ee2d4df76e7f76332e161a25c70e8f7bea",
      "tree": "96177f1c875ffabc7d68fa3ae00320abbbd1862e",
      "parents": [
        "9fd76494855c974e9079e9812ba5ecf88dedab38"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:24:02 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:05 2006 -0800"
      },
      "message": "[SCTP]: -\u003ea_h is gone now.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "74af924ab6562717ef9aab1061ec05bbbf31d979",
      "tree": "2b54dcf770bfb94396c76931026189b908dc940f",
      "parents": [
        "5ae955cffdb96190c2bd4f57313f5f147f87854b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:22:26 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:00 2006 -0800"
      },
      "message": "[SCTP]: -\u003ea_h is gone now.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "80f15d62418040e78849f5fc3a4a5af9c9d1fec7",
      "tree": "8b6e07b00843467d06dda45cc8d00e5dc3363a19",
      "parents": [
        "a926626893aca20567f27af1c5edc830e1c51b2b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:14:23 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:57 2006 -0800"
      },
      "message": "[SCTP]: -\u003esource_h is not used anymore.\n\nkill it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a926626893aca20567f27af1c5edc830e1c51b2b",
      "tree": "76fbf8eee4d84b9e6a50e5b564e4ebadeb9ce632",
      "parents": [
        "16b0a030330d179427edffbeddaa5b7dc5b31196"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:13:58 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:56 2006 -0800"
      },
      "message": "[SCTP]: Switch all remaining users of -\u003esaddr_h to -\u003esaddr.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dd86d136f9feb72c52a5b07707affe80edbc8dda",
      "tree": "3ca8c38af8d87d76d2ad3fa239a7d9984f327bec",
      "parents": [
        "5ab7b859ab58e3479a5a66e383ecd6bc447f6c1d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:11:13 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:48 2006 -0800"
      },
      "message": "[SCTP]: Switch -\u003efrom_addr_param() to net-endian.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "854d43a465cc8ba8e501320b3bc27359d909da2f",
      "tree": "6a1d4d5aa91eb4a945f79e3a1420b541705b32a5",
      "parents": [
        "acd2bc96e19535fcd74c6eb94532c19c817857bd"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:06:24 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:35 2006 -0800"
      },
      "message": "[SCTP]: Annotate -\u003edst_saddr()\n\nswitched to taking a pointer to net-endian sctp_addr\nand a net-endian port number.  Instances and callers\nadjusted; interestingly enough, the only calls are\ndirect calls of specific instances - the method is not\nused at all.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a6fd78adec062f16f8662563115679e669efaca",
      "tree": "3c2e93e5cccb7a11176079509e55f103464b1b98",
      "parents": [
        "09ef7fecea40c5e4c0dfe35bed3f0ed8da554cf5"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:04:42 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:30 2006 -0800"
      },
      "message": "[SCTP] embedded sctp_addr: net-endian mirrors\n\nAdd sctp_chunk-\u003esource, sctp_sockaddr_entry-\u003ea, sctp_transport-\u003eipaddr\nand sctp_transport-\u003esaddr, maintain them as net-endian mirrors of\ntheir host-endian counterparts.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "09ef7fecea40c5e4c0dfe35bed3f0ed8da554cf5"
}
