)]}'
{
  "log": [
    {
      "commit": "cadc723cc19ce6b881d973d3c04e25ebb83058e6",
      "tree": "9256b4bc0685bca22469eab87cd3ec3c2deba60d",
      "parents": [
        "e89e896d31b11a51a54ddcd3f72a76bd286dd86c",
        "f839c4c1991cc9b580ae38f98f54554938a7f49c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 15 18:34:58 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 15 18:34:58 2008 -0400"
      },
      "message": "Merge branch \u0027bkl-removal\u0027 into next\n"
    },
    {
      "commit": "e89e896d31b11a51a54ddcd3f72a76bd286dd86c",
      "tree": "105a9a93a4021caeeba76e479778ad2dd2b87b57",
      "parents": [
        "3a628b0fd42f7eaf9d052447784d48ceae9ffb8e",
        "d67d1c7bf948341fd8678c8e337ec27f4b46b206"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 15 18:34:16 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 15 18:34:16 2008 -0400"
      },
      "message": "Merge branch \u0027devel\u0027 into next\n\nConflicts:\n\n\tfs/nfs/file.c\n\nFix up the conflict with Jon Corbet\u0027s bkl-removal tree\n"
    },
    {
      "commit": "a86dc496b764ebb1431677b38eab45310e5a2ad4",
      "tree": "2ca9fa18c4f58de08acc7c8f9ea251a279eeba9b",
      "parents": [
        "c3cc8c019ca09767d7c9b5457d5cf8ac65085f44"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 11 13:37:09 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 15 18:10:57 2008 -0400"
      },
      "message": "SUNRPC: Remove the BKL from the callback functions\n\nPush it into those callback functions that actually need it.\n\nNote that all the NFS operations use their own locking, so don\u0027t need the\nBKL. Ditto for the rpcbind client.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c2e1b09ff237c0a3687b9a804cc8bf489743cffc",
      "tree": "9571ae56e29de0d0b165b136863c2363f2a78569",
      "parents": [
        "babe80eb4994dfdc97d5be19a68b5af66d667585"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Jul 14 16:03:30 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 15 18:08:55 2008 -0400"
      },
      "message": "SUNRPC: Support registering IPv6 interfaces with local rpcbind daemon\n\nIntroduce a new API to register RPC services on IPv6 interfaces to allow\nthe NFS server and lockd to advertise on IPv6 networks.\n\nUnlike rpcb_register(), the new rpcb_v4_register() function uses rpcbind\nprotocol version 4 to contact the local rpcbind daemon.  The version 4\nSET/UNSET procedures allow services to register address families besides\nAF_INET, register at specific network interfaces, and register transport\nprotocols besides UDP and TCP.  All of this functionality is exposed via\nthe new rpcb_v4_register() kernel API.\n\nA user-space rpcbind daemon implementation that supports version 4 of the\nrpcbind protocol is required in order to make use of this new API.\n\nNote that rpcbind version 3 is sufficient to support the new rpcbind\nfacilities listed above, but most extant implementations use version 4.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "babe80eb4994dfdc97d5be19a68b5af66d667585",
      "tree": "2acdcc7ba99ffed0ab66b21e627f77dd1d3d82bc",
      "parents": [
        "423d8b064771f5cd8b706a4839b18db9bb6c3c59"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Jul 14 16:03:29 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 15 18:08:51 2008 -0400"
      },
      "message": "SUNRPC: Refactor rpcb_register to make rpcbindv4 support easier\n\nrpcbind version 4 registration will reuse part of rpcb_register, so just\nsplit it out into a separate function now.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "423d8b064771f5cd8b706a4839b18db9bb6c3c59",
      "tree": "4dc1419dca3de0d31b4d2646794c5aa05a274fca",
      "parents": [
        "cc5598b78fd320dd6d1f90c14491e08029f3c4f6"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Jul 14 16:03:28 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 15 18:08:47 2008 -0400"
      },
      "message": "SUNRPC: None of rpcb_create\u0027s callers wants a privileged source port\n\nClean up: Callers that required a privileged source port now use\nrpcb_create_local(), so we can remove the @privileged argument from\nrpcb_create().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cc5598b78fd320dd6d1f90c14491e08029f3c4f6",
      "tree": "de62ba86decdc7bdb69ed717e3c42b4a7d6b774b",
      "parents": [
        "166b88d755f925139af7f7b75aa0a1b896ca0670"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Jul 14 16:03:27 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 15 18:08:44 2008 -0400"
      },
      "message": "SUNRPC: Introduce a specific rpcb_create for contacting localhost\n\nAdd rpcb_create_local() for use by rpcb_register() and upcoming IPv6\nregistration functions.\n\nEnsure any errors encountered by rpcb_create_local() are properly\nreported.\n\nWe can also use a statically allocated constant loopback socket address\ninstead of one allocated on the stack and initialized every time the\nfunction is called.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "166b88d755f925139af7f7b75aa0a1b896ca0670",
      "tree": "3040cc01b15549105fbf0da576f6eea716727a22",
      "parents": [
        "381ba74af55e58bca4c01553835a360a9f6fbb07"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Jul 14 16:03:26 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 15 18:08:40 2008 -0400"
      },
      "message": "SUNRPC: Use correct XDR encoding procedure for rpcbind SET/UNSET\n\nThe rpcbind versions 3 and 4 SET and UNSET procedures use the same\narguments as the GETADDR procedure.\n\nWhile definitely a bug, this hasn\u0027t been a problem so far since the\nkernel hasn\u0027t used version 3 or 4 SET and UNSET.  But this will change\nin just a moment.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "59190f4213462f191fc0d22d39b1cf18ea39ca39",
      "tree": "8f30fa62ae7d8948e7974dfecede3d6a41ae3ec3",
      "parents": [
        "64fd52a52077d3cd5a778ca031c0aaecf885eaa6",
        "f6f88e9bfb6ced9871ed65ebe85c371de3c9e4be"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 14:02:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 14:12:03 2008 -0700"
      },
      "message": "Merge branch \u0027generic-ipi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027generic-ipi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (22 commits)\n  generic-ipi: more merge fallout\n  generic-ipi: merge fix\n  x86, visws: use mach-default/entry_arch.h\n  x86, visws: fix generic-ipi build\n  generic-ipi: fixlet\n  generic-ipi: fix s390 build bug\n  generic-ipi: fix linux-next tree build failure\n  fix: \"smp_call_function: get rid of the unused nonatomic/retry argument\"\n  fix: \"smp_call_function: get rid of the unused nonatomic/retry argument\"\n  fix \"smp_call_function: get rid of the unused nonatomic/retry argument\"\n  on_each_cpu(): kill unused \u0027retry\u0027 parameter\n  smp_call_function: get rid of the unused nonatomic/retry argument\n  sh: convert to generic helpers for IPI function calls\n  parisc: convert to generic helpers for IPI function calls\n  mips: convert to generic helpers for IPI function calls\n  m32r: convert to generic helpers for IPI function calls\n  arm: convert to generic helpers for IPI function calls\n  alpha: convert to generic helpers for IPI function calls\n  ia64: convert to generic helpers for IPI function calls\n  powerpc: convert to generic helpers for IPI function calls\n  ...\n\nFix trivial conflicts due to rcu updates in kernel/rcupdate.c manually\n"
    },
    {
      "commit": "1a781a777b2f6ac46523fe92396215762ced624d",
      "tree": "4f34bb4aade85c0eb364b53d664ec7f6ab959006",
      "parents": [
        "b9d2252c1e44fa83a4e65fdc9eb93db6297c55af",
        "42a2f217a5e324ed5f2373ab1b7a0a15187c4d6c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:55:59 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:55:59 2008 +0200"
      },
      "message": "Merge branch \u0027generic-ipi\u0027 into generic-ipi-for-linus\n\nConflicts:\n\n\tarch/powerpc/Kconfig\n\tarch/s390/kernel/time.c\n\tarch/x86/kernel/apic_32.c\n\tarch/x86/kernel/cpu/perfctr-watchdog.c\n\tarch/x86/kernel/i8259_64.c\n\tarch/x86/kernel/ldt.c\n\tarch/x86/kernel/nmi_64.c\n\tarch/x86/kernel/smpboot.c\n\tarch/x86/xen/smp.c\n\tinclude/asm-x86/hw_irq_32.h\n\tinclude/asm-x86/hw_irq_64.h\n\tinclude/asm-x86/mach-default/irq_vectors.h\n\tinclude/asm-x86/mach-voyager/irq_vectors.h\n\tinclude/asm-x86/smp.h\n\tkernel/Makefile\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6c9fcaf2eec1b9f85226a694230dd957dd7926b3",
      "tree": "f8c824c6c64dc411752c844f116e693760768bcc",
      "parents": [
        "b9d2252c1e44fa83a4e65fdc9eb93db6297c55af",
        "199a952876adbfc2b6c13b8b07adabebf4ff54b2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:10:12 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:10:12 2008 +0200"
      },
      "message": "Merge branch \u0027core/rcu\u0027 into core/rcu-for-linus\n"
    },
    {
      "commit": "666484f0250db2e016948d63b3ef33e202e3b8d0",
      "tree": "734f48c10aa364965e4f4642ee3de51669e62be2",
      "parents": [
        "d18bb9a548e550f3ced57618e75085fb3f173133",
        "ace7f1b79670aa0c1d9f4b0442be82e565827333"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 15:28:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 15:28:42 2008 -0700"
      },
      "message": "Merge branch \u0027core/softirq\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core/softirq\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  softirq: remove irqs_disabled warning from local_bh_enable\n  softirq: remove initialization of static per-cpu variable\n  Remove argument from open_softirq which is always NULL\n"
    },
    {
      "commit": "d1794f2c5b5817eb79ccc5e00701ca748d1b073a",
      "tree": "5a4c98e694e88a8c82f342d0cc9edb2a4cbbef36",
      "parents": [
        "a41eebab7537890409ea9dfe0fcda9b5fbdb090d",
        "2fceef397f9880b212a74c418290ce69e7ac00eb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 14:48:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 14:48:31 2008 -0700"
      },
      "message": "Merge branch \u0027bkl-removal\u0027 of git://git.lwn.net/linux-2.6\n\n* \u0027bkl-removal\u0027 of git://git.lwn.net/linux-2.6: (146 commits)\n  IB/umad: BKL is not needed for ib_umad_open()\n  IB/uverbs: BKL is not needed for ib_uverbs_open()\n  bf561-coreb: BKL unneeded for open()\n  Call fasync() functions without the BKL\n  snd/PCM: fasync BKL pushdown\n  ipmi: fasync BKL pushdown\n  ecryptfs: fasync BKL pushdown\n  Bluetooth VHCI: fasync BKL pushdown\n  tty_io: fasync BKL pushdown\n  tun: fasync BKL pushdown\n  i2o: fasync BKL pushdown\n  mpt: fasync BKL pushdown\n  Remove BKL from remote_llseek v2\n  Make FAT users happier by not deadlocking\n  x86-mce: BKL pushdown\n  vmwatchdog: BKL pushdown\n  vmcp: BKL pushdown\n  via-pmu: BKL pushdown\n  uml-random: BKL pushdown\n  uml-mmapper: BKL pushdown\n  ...\n"
    },
    {
      "commit": "2fceef397f9880b212a74c418290ce69e7ac00eb",
      "tree": "d9cc09ab992825ef7fede4a688103503e3caf655",
      "parents": [
        "feae1ef116ed381625d3731c5ae4f4ebcb3fa302",
        "bce7f793daec3e65ec5c5705d2457b81fe7b5725"
      ],
      "author": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Mon Jul 14 15:29:34 2008 -0600"
      },
      "committer": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Mon Jul 14 15:29:34 2008 -0600"
      },
      "message": "Merge commit \u0027v2.6.26\u0027 into bkl-removal\n"
    },
    {
      "commit": "c2b4afd2f99a187ec3bbd6e2def186fbfb755929",
      "tree": "c7f8504d531b1bbcb9476b1edd24573467eaf1c1",
      "parents": [
        "a12c53f4fa759b59654b6d5f21eb4070cd45cd54"
      ],
      "author": {
        "name": "Ursula Braun",
        "email": "braunu@de.ibm.com",
        "time": "Mon Jul 14 09:59:29 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jul 14 10:02:20 2008 +0200"
      },
      "message": "[S390] Cleanup iucv printk messages.\n\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Ursula Braun \u003cbraunu@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "0c81b2a1448bc6a2a9b2d6469fb0669fb4b25e5b",
      "tree": "6f82579cae6d6e39fa9f837a3c349ded51e19d14",
      "parents": [
        "0729fbf3bc70870370b4f43d652f05a468dc68b8",
        "70ff05554f91a1edda1f11684da1dbde09e2feea"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 10:46:50 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 10:46:50 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/rcu\n\nConflicts:\n\n\tinclude/linux/rculist.h\n\tkernel/rcupreempt.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e5a5816f7875207cb0a0a7032e39a4686c5e10a4",
      "tree": "6c80171401f4cd38685e19d2f36ac54560720d5f",
      "parents": [
        "bdb21928512a860a60e6a24a849dc5b63cbaf96a",
        "e35259a95331ae4a9146cc03ab49aad641cab957"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 10 17:58:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 10 17:58:47 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (27 commits)\n  tun: Persistent devices can get stuck in xoff state\n  xfrm: Add a XFRM_STATE_AF_UNSPEC flag to xfrm_usersa_info\n  ipv6: missed namespace context in ipv6_rthdr_rcv\n  netlabel: netlink_unicast calls kfree_skb on error path by itself\n  ipv4: fib_trie: Fix lookup error return\n  tcp: correct kcalloc usage\n  ip: sysctl documentation cleanup\n  Documentation: clarify tcp_{r,w}mem sysctl docs\n  netfilter: nf_nat_snmp_basic: fix a range check in NAT for SNMP\n  netfilter: nf_conntrack_tcp: fix endless loop\n  libertas: fix memory alignment problems on the blackfin\n  zd1211rw: stop beacons on remove_interface\n  rt2x00: Disable synchronization during initialization\n  rc80211_pid: Fix fast_start parameter handling\n  sctp: Add documentation for sctp sysctl variable\n  ipv6: fix race between ipv6_del_addr and DAD timer\n  irda: Fix netlink error path return value\n  irda: New device ID for nsc-ircc\n  irda: via-ircc proper dma freeing\n  sctp: Mark the tsn as received after all allocations finish\n  ...\n"
    },
    {
      "commit": "ccf9b3b83d0e56fbf20c00a08b15031ce13204a7",
      "tree": "ecefe07436ac172dc99deb6e77e7a7cfd5c81155",
      "parents": [
        "0ce28553cc018be5022f51e67c87997f7271534e"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Thu Jul 10 16:55:37 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 10 16:55:37 2008 -0700"
      },
      "message": "xfrm: Add a XFRM_STATE_AF_UNSPEC flag to xfrm_usersa_info\n\nAdd a XFRM_STATE_AF_UNSPEC flag to handle the AF_UNSPEC behavior for\nthe selector family. Userspace applications can set this flag to leave\nthe selector family of the xfrm_state unspecified.  This can be used\nto to handle inter family tunnels if the selector is not set from\nuserspace.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ce28553cc018be5022f51e67c87997f7271534e",
      "tree": "f99a4f1472704f6cea94458b563fb90f3eb0d6ca",
      "parents": [
        "fe785bee05f08d37b34b7399d003b74199274ce4"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@parallels.com",
        "time": "Thu Jul 10 16:54:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 10 16:54:50 2008 -0700"
      },
      "message": "ipv6: missed namespace context in ipv6_rthdr_rcv\n\nSigned-off-by: Denis V. Lunev \u003cden@parallels.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fe785bee05f08d37b34b7399d003b74199274ce4",
      "tree": "d87c30deefc4c35d5794879b3430470d554ae2a6",
      "parents": [
        "2e655571c618434c24ac2ca989374fdd84470d6d"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Jul 10 16:53:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 10 16:53:39 2008 -0700"
      },
      "message": "netlabel: netlink_unicast calls kfree_skb on error path by itself\n\nSo, no need to kfree_skb here on the error path. In this case we can\nsimply return.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e655571c618434c24ac2ca989374fdd84470d6d",
      "tree": "bf339af1fa392043afa9780d8f08e25ac6358a70",
      "parents": [
        "3d8ea1fd7001f39b5cc0ad2ff51696292ea3cfbf"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Thu Jul 10 16:52:52 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 10 16:52:52 2008 -0700"
      },
      "message": "ipv4: fib_trie: Fix lookup error return\n\nIn commit a07f5f508a4d9728c8e57d7f66294bf5b254ff7f \"[IPV4] fib_trie: style\ncleanup\", the changes to check_leaf() and fn_trie_lookup() were wrong - where\nfn_trie_lookup() would previously return a negative error value from\ncheck_leaf(), it now returns 0.\n \nNow fn_trie_lookup() doesn\u0027t appear to care about plen, so we can revert\ncheck_leaf() to returning the error value.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nTested-by: William Boughton \u003cbill@boughton.de\u003e\nAcked-by: Stephen Heminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3d8ea1fd7001f39b5cc0ad2ff51696292ea3cfbf",
      "tree": "3bdbd8c55e0dd16e01ff8585aa417e10d2119f44",
      "parents": [
        "4edc2f3416438a05b83a677ae7b1a78b3ca22bb9"
      ],
      "author": {
        "name": "Milton Miller",
        "email": "miltonm@bga.com",
        "time": "Thu Jul 10 16:51:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 10 16:51:32 2008 -0700"
      },
      "message": "tcp: correct kcalloc usage\n\nkcalloc is supposed to be called with the count as its first argument and\nthe element size as the second.\n\nSigned-off-by: Milton Miller \u003cmiltonm@bga.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2ddddb98694af847f70463dbdc69aa491d9f477a",
      "tree": "c4115467a95e9e1dbce3e71934eecb1168bc90bb",
      "parents": [
        "252815b0cfe711001eff0327872209986b36d490",
        "814feefa859a736d29d0700d49debf13904b429f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 09 15:10:09 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 09 15:10:09 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "252815b0cfe711001eff0327872209986b36d490",
      "tree": "84919cc1b91c8954c859127b8bd652400a1cc3b1",
      "parents": [
        "6b69fe0c73c0f5a8dacf8f889db3cc9adee53649"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Jul 09 15:06:45 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 09 15:06:45 2008 -0700"
      },
      "message": "netfilter: nf_nat_snmp_basic: fix a range check in NAT for SNMP\n\nFix a range check in netfilter IP NAT for SNMP to always use a big enough size\nvariable that the compiler won\u0027t moan about comparing it to ULONG_MAX/8 on a\n64-bit platform.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b69fe0c73c0f5a8dacf8f889db3cc9adee53649",
      "tree": "94334a28c9db60981a72478b18d54fccd353f7ff",
      "parents": [
        "32e8d4948bb0b5f3f0ac5cdb71d0ac8e305b29a5"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Jul 09 15:06:12 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 09 15:06:12 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_tcp: fix endless loop\n\nWhen a conntrack entry is destroyed in process context and destruction\nis interrupted by packet processing and the packet is an attempt to\nreopen a closed connection, TCP conntrack tries to kill the old entry\nitself and returns NF_REPEAT to pass the packet through the hook\nagain. This may lead to an endless loop: TCP conntrack repeatedly\nfinds the old entry, but can not kill it itself since destruction\nis already in progress, but destruction in process context can not\ncomplete since TCP conntrack is keeping the CPU busy.\n\nDrop the packet in TCP conntrack if we can\u0027t kill the connection\nourselves to avoid this.\n\nReported by: hemao77@gmail.com [ Kernel bugzilla #11058 ]\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "adeed48090fc370afa0db8d007748ee72a40b578",
      "tree": "a68a360ef3d1fb9c9962a3c894ed51850753bcad",
      "parents": [
        "32e8d4948bb0b5f3f0ac5cdb71d0ac8e305b29a5"
      ],
      "author": {
        "name": "Mattias Nissler",
        "email": "mattias.nissler@gmx.de",
        "time": "Mon Jul 07 23:08:19 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 09 16:16:31 2008 -0400"
      },
      "message": "rc80211_pid: Fix fast_start parameter handling\n\nThis removes the fast_start parameter from the rc_pid parameters\ninformation and instead uses the parameter macro when initializing\nthe rc_pid state. Since the parameter is only used on initialization,\nthere is no point of making exporting it via debugfs. This also fixes\nuninitialized memory references to the fast_start and norm_offset\nparameters detected by the kmemcheck utility.  Thanks to Vegard Nossum\nfor reporting the bug.\n\nSigned-off-by: Mattias Nissler \u003cmattias.nissler@gmx.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "381ba74af55e58bca4c01553835a360a9f6fbb07",
      "tree": "56e5f5159432ebb350af4adf330afa4f50b77a54",
      "parents": [
        "f45663ce5fb30f76a3414ab3ac69f4dd320e760a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jul 07 12:18:53 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:45 2008 -0400"
      },
      "message": "SUNRPC: Ensure our task is notified when an rpcbind call is done\n\nIf another task is busy in rpcb_getport_async number, it is more efficient\nto have it wake us up when it has finished instead of arbitrarily sleeping\nfor 5 seconds.\n\nAlso ensure that rpcb_wake_rpcbind_waiters() is called regardless of\nwhether or not rpcb_getport_done() gets called.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "40fef8a649e5344bfb6a67a7cc3def3e0dad6448",
      "tree": "bfcbea1a0cf81ca14d59debb6fb77e83a430b2ab",
      "parents": [
        "8842413aa4c3220ce9313791f99808fc149ca16d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Jun 25 17:24:54 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:37 2008 -0400"
      },
      "message": "SUNRPC: Use only rpcbind v2 for AF_INET requests\n\nSome server vendors support the higher versions of rpcbind only for\nAF_INET6.  The kernel doesn\u0027t need to use v3 or v4 for AF_INET anyway,\nso change the kernel\u0027s rpcbind client to query AF_INET servers over\nrpcbind v2 only.\n\nThis has a few interesting benefits:\n\n1. If the rpcbind request is going over TCP, and the server doesn\u0027t\n   support rpcbind versions 3 or 4, the client reduces by two the number\n   of ephemeral ports left in TIME_WAIT for each rpcbind request.  This\n   will help during NFS mount storms.\n\n2. The rpcbind interaction with servers that don\u0027t support rpcbind\n   versions 3 or 4 will use less network traffic.  Also helpful\n   during mount storms.\n\n3. We can eliminate the kernel build option that controls whether the\n   kernel\u0027s rpcbind client uses rpcbind version 3 and 4 for AF_INET\n   servers.  Less complicated kernel configuration...\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8842413aa4c3220ce9313791f99808fc149ca16d",
      "tree": "6b0869e818f7d525620c973b52242825c2ec109a",
      "parents": [
        "6a774051573042cdeb57e81f77b36c25e5856739"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Jun 25 17:24:47 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:36 2008 -0400"
      },
      "message": "SUNRPC: Use GETADDR for rpcbind version 4 queries\n\nSome rpcbind servers that do support rpcbind version 4 do not support\nthe GETVERSADDR procedure.  Use GETADDR for querying rpcbind servers\nvia rpcbind version 4 instead of GETVERSADDR.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6a774051573042cdeb57e81f77b36c25e5856739",
      "tree": "c563074d6c0834954a14e4b6e5c0bef650b82ca9",
      "parents": [
        "fc200e794d723bc88c39859e8f096b717532f9c9"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Jun 25 17:24:39 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:35 2008 -0400"
      },
      "message": "SUNRPC: Use rpcbind version 2 GETPORT\n\nClean up: Change the version 2 procedure name to GETPORT.  It\u0027s the same\nprocedure number as GETADDR, but version 2 implementations usually refer\nto it as GETPORT.\n\nThis also now matches the procedure name used in the version 2 procedure\nentry in the rpcb_next_version[] array, making it slightly less confusing.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fc200e794d723bc88c39859e8f096b717532f9c9",
      "tree": "8d87aa1d23936137902d1f5dbdad7ea48601b8c3",
      "parents": [
        "877fcf103982e52a59a1035378b4c0b8c63fe004"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Jun 25 17:24:31 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:34 2008 -0400"
      },
      "message": "SUNRPC: Document some naked integers in rpcbind client\n\nClean up: Replace naked integers that represent rpcbind protocol versions.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "877fcf103982e52a59a1035378b4c0b8c63fe004",
      "tree": "779d0ab48d29347585522e20bc4ec9b0728b1ca8",
      "parents": [
        "5afc597c5f0bd184457e49b9a330fcb37b69db11"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Jun 25 17:24:23 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:33 2008 -0400"
      },
      "message": "SUNRPC: More useful debugging output for rpcb client\n\nClean up dprintk\u0027s in rpcb client\u0027s XDR decoder functions.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b22602a673b1743bba4b62bb404ffd3b269d2f09",
      "tree": "70bb9bd6a6dd3339dbd3729ff70cbeab2a050ad5",
      "parents": [
        "659bfcd6dd88919a5ad453f62afbeffcb3106847"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Jun 06 13:22:25 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:15 2008 -0400"
      },
      "message": "SUNRPC: Ensure all transports set rq_xtime consistently\n\nThe RPC client uses the rq_xtime field in each RPC request to determine the\nround-trip time of the request.  Currently, the rq_xtime field is\ninitialized by each transport just before it starts enqueing a request to\nbe sent.  However, transports do not handle initializing this value\nconsistently; sometimes they don\u0027t initialize it at all.\n\nTo make the measurement of request round-trip time consistent for all\nRPC client transport capabilities, pull rq_xtime initialization into the\nRPC client\u0027s generic transport logic.  Now all transports will get a\nstandardized RTT measure automatically, from:\n\n  xprt_transmit()\n\nto\n\n  xprt_complete_rqst()\n\nThis makes round-trip time calculation more accurate for the TCP transport.\nThe socket -\u003esendmsg() method can return \"-EAGAIN\" if the socket\u0027s output\nbuffer is full, so the TCP transport\u0027s -\u003esend_request() method may call\nthe -\u003esendmsg() method repeatedly until it gets all of the request\u0027s bytes\nqueued in the socket\u0027s buffer.\n\nCurrently, the TCP transport sets the rq_xtime field every time through\nthat loop so the final value is the timestamp just before the *last* call\nto the underlying socket\u0027s -\u003esendmsg() method.  After this patch, the\nrq_xtime field contains a timestamp that reflects the time just before the\n*first* call to -\u003esendmsg().\n\nThis is consequential under heavy workloads because large requests often\ntake multiple -\u003esendmsg() calls to get all the bytes of a request queued.\nThe TCP transport causes the request to sleep until the remote end of the\nsocket has received enough bytes to clear space in the socket\u0027s local\noutput buffer.  This delay can be quite significant.\n\nThe method introduced by this patch is a more accurate measure of RTT\nfor stream transports, since the server can cause enough back pressure\nto delay (ie increase the latency of) requests from the client.\n\nAdditionally, this patch corrects the behavior of the RDMA transport, which\nentirely neglected to initialize the rq_xtime field.  RPC performance\nmetrics for RDMA transports now display correct RPC request round trip\ntimes.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nAcked-by: Tom Talpey \u003cthomas.talpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a486aeda9b2b0d944aecce7871b3186379b898de",
      "tree": "724ee69f012083efcd379733ba783efbe6341ab2",
      "parents": [
        "d25a03cf966f2cf9990dc0bf2a921a554919ea34"
      ],
      "author": {
        "name": "\\\\\\\"J. Bruce Fields\\\\\\",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Jun 09 16:51:35 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:14 2008 -0400"
      },
      "message": "rpc: minor cleanup of scheduler callback code\n\nTry to make the comment here a little more clear and concise.\n\nAlso, this macro definition seems unnecessary.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d25a03cf966f2cf9990dc0bf2a921a554919ea34",
      "tree": "48ffd3dc435e5e7edf99159d049d24f5ef2d229a",
      "parents": [
        "720b8f2d6f7de9e16f1217448cc7396e1604e175"
      ],
      "author": {
        "name": "\\\\\\\"J. Bruce Fields\\\\\\",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Jun 09 16:51:34 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:12 2008 -0400"
      },
      "message": "rpc: remove some unused macros\n\nThere used to be a print_hexl() function that used isprint(), now gone.\nI don\u0027t know why NFS_NGROUPS and CA_RUN_AS_MACHINE were here.\n\nI also don\u0027t know why another #define that\u0027s actually used was marked\n\"unused\".\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "720b8f2d6f7de9e16f1217448cc7396e1604e175",
      "tree": "440a87cbc2ad2ac5a57501ac1018fbb4c8bff2fb",
      "parents": [
        "b6b6152c46861dd914d0e6cea9c27df057d6e235"
      ],
      "author": {
        "name": "\\\\\\\"J. Bruce Fields\\\\\\",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Jun 09 16:51:33 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:11 2008 -0400"
      },
      "message": "rpc: eliminate unused variable in auth_gss upcall code\n\nAlso, a minor comment grammar fix in the same file.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b6b6152c46861dd914d0e6cea9c27df057d6e235",
      "tree": "0d63ce529c13c09a1997da06199e27b049bb55aa",
      "parents": [
        "48b605f83c920d8daa50e43fc2c7f718e04c7bfa"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Mon Jun 09 16:51:31 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:10 2008 -0400"
      },
      "message": "rpc: bring back cl_chatty\n\nThe cl_chatty flag alows us to control whether a given rpc client leaves\n\n\t\"server X not responding, timed out\"\n\nmessages in the syslog.  Such messages make sense for ordinary nfs\nclients (where an unresponsive server means applications on the\nmountpoint are probably hanging), but not for the callback client (which\ncan fail more commonly, with the only result just of disabling some\noptimizations).\n\nPreviously cl_chatty was removed, do to lack of users; reinstate it, and\nuse it for the nfsd\u0027s callback client.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cd983ef81b9d79573848dabf81277c7314220257",
      "tree": "954f22ca07ff077e50b05ef54c87491cd8506bce",
      "parents": [
        "48186c7d5734a6b137f9186b37f6dc98097d0429"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Jun 11 17:56:13 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:06 2008 -0400"
      },
      "message": "SUNRPC: Remove obsolete messages during transport connect\n\nRecent changes to the RPC client\u0027s transport connect logic make connect\nstatus values ECONNREFUSED and ECONNRESET impossible.\n\nClean up xprt_connect_status() to account for these changes.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cb3997b5a0b21864368bd1bd1d0929f9304fb6d9",
      "tree": "b3b0f4369c8dba139e0e359cfcfc9277d82430a1",
      "parents": [
        "38e886e0c18975543938519254fc9bf0829c75a3"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed May 21 17:09:41 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:58 2008 -0400"
      },
      "message": "SUNRPC: Display some debugging information as text rather than numbers\n\nIn rpc_show_tasks(), display the program name, version number, procedure\nname and tk_action as human-readable variable-length text fields rather\nthan columnar numbers.\n\nDoing the symbol lookup here helps in cases where we have actual\ndebugging output from a kernel log, but don\u0027t have access to the kernel\nimage or RPC module that generated the output.\n\nSample output:\n\n -pid- flgs status -client- --rqstp- -timeout ---ops--\n  5608 0001    -11 eeb42690 f6d93710        0 f8fa1764 nfsv3 WRITE a:call_transmit_status q:none\n  5609 0001    -11 eeb42690 f6d937e0        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5610 0001    -11 eeb42690 f6d93230        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5611 0001    -11 eeb42690 f6d93300        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5612 0001    -11 eeb42690 f6d93090        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5613 0001    -11 eeb42690 f6d933d0        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5614 0001    -11 eeb42690 f6d93cc0        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5615 0001    -11 eeb42690 f6d93a50        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5616 0001    -11 eeb42690 f6d93640        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5617 0001    -11 eeb42690 f6d93b20        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5618 0001    -11 eeb42690 f6d93160        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "38e886e0c18975543938519254fc9bf0829c75a3",
      "tree": "310aa1aa78833bc0ef8836c0bfceb3a7823e6c31",
      "parents": [
        "68a23ee94e3a06819f5a39d64f2e1f3131bab12d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed May 21 17:09:33 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:56 2008 -0400"
      },
      "message": "SUNRPC: Refactor rpc_show_tasks\n\nClean up: move the logic that displays each task to its own function.\nThis removes indentation and makes future changes easier.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "68a23ee94e3a06819f5a39d64f2e1f3131bab12d",
      "tree": "47b9e954ccbd2ead56307f64516da91298153b9a",
      "parents": [
        "b0e1c57ea00302c3ac541ffd37e7db07d13cd674"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed May 21 17:09:26 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:55 2008 -0400"
      },
      "message": "SUNRPC: Don\u0027t display the rpc_show_tasks header if there are no tasks\n\nClean up: don\u0027t display the rpc_show_tasks column header unless there is at\nleast one task to display.  As far as I can tell, it is safe to let the\nlist_for_each_entry macro decide that each list is empty.\n\nscripts/checkpatch.pl also wants a KERN_FOO at the start of any newly added\nprintk() calls, so this and subsequent patches will also add KERN_INFO.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b0e1c57ea00302c3ac541ffd37e7db07d13cd674",
      "tree": "1efbe305bfff8141ae0d27a03dacc5bbf4ae58a6",
      "parents": [
        "3748f1e447ac1dbf45f33ee7491a008a8bb5cdf0"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed May 21 17:09:19 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:53 2008 -0400"
      },
      "message": "SUNRPC: Rename \"call_\" functions that are no longer FSM states\n\nThe RPC client uses a finite state machine to move RPC tasks through each\nstep of an RPC request.  Each state is contained in a function in\nnet/sunrpc/clnt.c, and named call_foo.\n\nSome of the functions named call_foo have changed over the past few years and\nare no longer states in the FSM.  These include: call_encode, call_header,\nand call_verify.  As a clean up, rename the functions that have changed.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3748f1e447ac1dbf45f33ee7491a008a8bb5cdf0",
      "tree": "1e6fced9b21cb730424a1dc0805bf08819b43832",
      "parents": [
        "6fb1bc10303c0d88f635d014324432ab6ee49d1b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed May 21 17:09:12 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:53 2008 -0400"
      },
      "message": "SUNRPC: Add a function to display the name of an RPC procedure\n\nImprove debugging messages in call_start() and call_verify() by having\nthem show the RPC procedure name instead of the procedure number.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0f38b873aeaae698c3693748438547c8493165fb",
      "tree": "c858b2a08251c2f5792cf83582697dcd9909b7d8",
      "parents": [
        "7e5f6146609eb9134fac7d1b6bfee43df1732188"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jun 10 18:31:01 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:48 2008 -0400"
      },
      "message": "SUNRPC: Use GFP_NOFS when allocating credentials\n\nSince the credentials may be allocated during the call to rpc_new_task(),\nwhich again may be called by a memory allocator...\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b390c2b55c830eb3b64633fa8d8b8837e073e458",
      "tree": "e18f0041626a88447d34809f35041cd4b4425610",
      "parents": [
        "8b39f2b41033754e7ba669503d27268beb1b524a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jun 10 18:30:11 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:43 2008 -0400"
      },
      "message": "SUNRPC: An ENOMEM error from call_encode is always fatal\n\nThe special \u0027ENOMEM\u0027 case that was previously flagged as non-fatal is\nbogus: auth_gss always returns EAGAIN for non-fatal errors, and may in fact\nreturn ENOMEM in the special case where xdr_buf_read_netobj runs out of\npreallocated buffer space (invariably a _fatal_ error, since there is no\nprovision for preallocating larger buffers).\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8b39f2b41033754e7ba669503d27268beb1b524a",
      "tree": "50377c7d6c4918141f3b8bda5040477854458e7c",
      "parents": [
        "2116271a347d1181b5497602c2bfada1de8fd53b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 14 19:48:25 2008 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:41 2008 -0400"
      },
      "message": "SUNRPC: Ensure we exit early in case of an encode error\n\nAll errors from call_encode(), with exception of EAGAIN are fatal, so we\nshould immediately return instead of proceeding to xprt_transmit().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b2238566401f01eb796e75750213c7b0fce396b2",
      "tree": "01135bc75b5a212fe13e98ddc7721e9aae6584f0",
      "parents": [
        "07035fc1bbf931a06e47583cddd2cea2907ac0db"
      ],
      "author": {
        "name": "Andrey Vagin",
        "email": "avagin@parallels.com",
        "time": "Tue Jul 08 15:13:31 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 15:13:31 2008 -0700"
      },
      "message": "ipv6: fix race between ipv6_del_addr and DAD timer\n\nConsider the following scenario:\n\nipv6_del_addr(ifp)\n  ipv6_ifa_notify(RTM_DELADDR, ifp)\n    ip6_del_rt(ifp-\u003ert)\n\nafter returning from the ipv6_ifa_notify and enabling BH-s\nback, but *before* calling the addrconf_del_timer the \nifp-\u003etimer fires and:\n\naddrconf_dad_timer(ifp)\n  addrconf_dad_completed(ifp)\n    ipv6_ifa_notify(RTM_NEWADDR, ifp)\n      ip6_ins_rt(ifp-\u003ert)\n\nthen return back to the ipv6_del_addr and:\n\nin6_ifa_put(ifp)\n  inet6_ifa_finish_destroy(ifp)\n    dst_release(\u0026ifp-\u003ert-\u003eu.dst)\n\nAfter this we have an ifp-\u003ert inserted into fib6 lists, but \nqueued for gc, which in turn can result in oopses in the\nfib6_run_gc. Maybe some other nasty things, but we caught \nonly the oops in gc so far.\n\nThe solution is to disarm the ifp-\u003etimer before flushing the\nrt from it.\n\nSigned-off-by: Andrey Vagin \u003cavagin@parallels.com\u003e\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "803a9067e19714ea7b7da760fe92f0d53bfa6994",
      "tree": "d95c3f118759ae78754c95f5fc83e187b9d41e56",
      "parents": [
        "0d3a34b48c87a374b37d7a21a60d257d076484f3"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 01 15:20:55 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 08 15:23:10 2008 -0400"
      },
      "message": "SUNRPC: Fix an rpcbind breakage for the case of IPv6 lookups\n\nNow that rpcb_next_version has been split into an IPv4 version and an IPv6\nversion, we Oops when rpcb_call_async attempts to look up the IPv6-specific\nRPC procedure in rpcb_next_version.\n\nFix the Oops simply by having rpcb_getport_async pass the correct RPC\nprocedure as an argument.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0d3a34b48c87a374b37d7a21a60d257d076484f3",
      "tree": "b3b95c5855e25c5693d505bf74f9c5f7eccde8dc",
      "parents": [
        "2aac05a91971fbd1bf6cbed78b8731eb7454b9b7"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jul 07 12:18:52 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 08 15:23:00 2008 -0400"
      },
      "message": "SUNRPC: Fix a double-free in rpcbind\n\nIt is wrong to be freeing up the rpcbind arguments if the call to\nrpcb_call_async() fails, since they should already have been freed up by\nrpcb_map_release().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "07035fc1bbf931a06e47583cddd2cea2907ac0db",
      "tree": "7fda25add89536a7ae44e4e91537e5815dd59f97",
      "parents": [
        "02307080622da0312f2ede0f9c0ac779a1cc4f9a"
      ],
      "author": {
        "name": "Julius Volz",
        "email": "juliusv@google.com",
        "time": "Tue Jul 08 03:07:43 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 03:07:43 2008 -0700"
      },
      "message": "irda: Fix netlink error path return value\n\nFix an incorrect return value check of genlmsg_put() in irda_nl_get_mode().\ngenlmsg_put() does not use ERR_PTR() to encode return values, it just\nreturns NULL on error.\n\nSigned-off-by: Julius Volz \u003cjuliusv@google.com\u003e\nSigned-off-by: Samuel Ortiz \u003csamuel@sortiz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3888e9efc9bf05e60504d2a420be7a527ff43678",
      "tree": "5c4b889c057eac0951ed8bf248379ce2dcc33f90",
      "parents": [
        "6e43829bb69bf1d584a592075f1357590eb49b1a"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Tue Jul 08 02:28:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 02:28:39 2008 -0700"
      },
      "message": "sctp: Mark the tsn as received after all allocations finish\n\nIf we don\u0027t have the buffer space or memory allocations fail,\nthe data chunk is dropped, but TSN is still reported as received.\nThis introduced a data loss that can\u0027t be recovered.  We should\nonly mark TSNs are received after memory allocations finish.\nThe one exception is the invalid stream identifier, but that\u0027s\ndue to user error and is reported back to the user.\n\nThis was noticed by Michael Tuexen.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6e43829bb69bf1d584a592075f1357590eb49b1a",
      "tree": "e3c6b3e0e84998f2fdcfec0f36cdbe0141aa7331",
      "parents": [
        "9e095a687b3561972272063260e14ab1bc21de08"
      ],
      "author": {
        "name": "Vladimir Koutny",
        "email": "vlado@work.ksp.sk",
        "time": "Mon Jul 07 14:23:01 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 07 15:31:40 2008 -0400"
      },
      "message": "mac80211: don\u0027t report selected IBSS when not found\n\nDon\u0027t report a \u0027selected\u0027 IBSS in sta_find_ibss when none was found.\n\nSigned-off-by: Vladimir Koutny \u003cvlado@ksp.sk\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ea0c925370b33baf168bb33782c613468c1aa119",
      "tree": "3a1c0edb45895a289c5e3e36a85c8fb57439e3ee",
      "parents": [
        "8db9369ff92b1cd93566baadd8bd2992f025fdd0"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "ivdoorn@gmail.com",
        "time": "Thu Jul 03 19:02:44 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 07 15:31:39 2008 -0400"
      },
      "message": "mac80211: Only flush workqueue when last interface was removed\n\nCurrently the ieee80211_hw-\u003eworkqueue is flushed each time\nan interface is being removed. However most scheduled work\nis not interface specific but device specific, for example things like\nperiodic work for link tuners.\n\nThis patch will move the flush_workqueue() call to directly behind\nthe call to ops-\u003estop() to make sure the workqueue is only flushed\nwhen all interfaces are gone and there really shouldn\u0027t be any scheduled\nwork in the drivers left.\n\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8db9369ff92b1cd93566baadd8bd2992f025fdd0",
      "tree": "0b52162cacc30138045d0a52476d0a61365ac10d",
      "parents": [
        "0ff1cca0e272045b9c11a2ff94bd3e6893c9308c"
      ],
      "author": {
        "name": "Guy Cohen",
        "email": "guy.cohen@intel.com",
        "time": "Thu Jul 03 19:56:13 2008 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 07 15:31:39 2008 -0400"
      },
      "message": "mac80211: move netif_carrier_on to after ieee80211_bss_info_change_notify\n\nPutting netif_carrier_on before configuring the driver/device with the\nnew association state may cause a race (tx frames may be sent before\nconfiguration is done)\n\nSigned-off-by: Guy Cohen \u003cguy.cohen@intel.com\u003e\nSigned-off-by: Tomas Winkler \u003ctomas.winkler@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b2798bf0ec2cb5a17bfc1430c5ba6d971c436a03",
      "tree": "ef2b01160811d8d6312518a177968d58d5fe9e44",
      "parents": [
        "3bc5ab9b7f2760d2892fd0a0589e1077e869d4f5",
        "7f2d38eb7a42bea1c1df51bbdaa2ca0f0bdda07f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 07 09:24:28 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 07 09:24:28 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  can: add sanity checks\n  fs_enet: restore promiscuous and multicast settings in restart()\n  ibm_newemac: Fixes entry of short packets\n  ibm_newemac: Fixes kernel crashes when speed of cable connected changes\n  pasemi_mac: Access iph-\u003etot_len with correct endianness\n  ehea: Access iph-\u003etot_len with correct endianness\n  ehea: fix race condition\n  ehea: add MODULE_DEVICE_TABLE\n  ehea: fix might sleep problem\n  forcedeth: fix lockdep warning on ethtool -s\n  Add missing skb-\u003edev assignment in Frame Relay RX code\n  bridge: fix use-after-free in br_cleanup_bridges()\n  tcp: fix a size_t \u003c 0 comparison in tcp_read_sock\n  tcp: net/ipv4/tcp.c needs linux/scatterlist.h\n  libertas: support USB persistence on suspend/resume (resend)\n  iwlwifi: drop skb silently for Tx request in monitor mode\n  iwlwifi: fix incorrect 5GHz rates reported in monitor mode\n"
    },
    {
      "commit": "7f2d38eb7a42bea1c1df51bbdaa2ca0f0bdda07f",
      "tree": "930ee4b119242ea70d020521f217b42090e42b6e",
      "parents": [
        "c5a78ac00c400df29645e59938700301efb371d0"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver.hartkopp@volkswagen.de",
        "time": "Sat Jul 05 23:38:43 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 05 23:38:43 2008 -0700"
      },
      "message": "can: add sanity checks\n\nEven though the CAN netlayer only deals with CAN netdevices, the \nnetlayer interface to the userspace and to the device layer should \nperform some sanity checks.\n\nThis patch adds several sanity checks that mainly prevent userspace apps \nto send broken content into the system that may be misinterpreted by \nsome other userspace application.\n\nSigned-off-by: Oliver Hartkopp \u003coliver.hartkopp@volkswagen.de\u003e\nSigned-off-by: Urs Thuermann \u003curs.thuermann@volkswagen.de\u003e\nAcked-by: Andre Naujoks \u003cnautsch@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b620754bfeb8b0e0c6622b03d5ee2f1af1d3082f",
      "tree": "a91c96f8200904a0fe4224f05a43698b2f8cb4cb",
      "parents": [
        "97055a915720fe1aff9ac71c17fae60e929d4ed6"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jul 03 15:26:35 2008 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 03 12:46:56 2008 -0700"
      },
      "message": "svcrpc: fix handling of garbage args\n\nTo return garbage_args, the accept_stat must be 0, and we must have a\nverifier.  So we shouldn\u0027t be resetting the write pointer as we reject\nthe call.\n\nAlso, we must add the two placeholder words here regardless of success\nof the unwrap, to ensure the output buffer is left in a consistent state\nfor svcauth_gss_release().\n\nThis fixes a BUG() in svcauth_gss.c:svcauth_gss_release().\n\nThanks to Aime Le Rouzic for bug report, debugging help, and testing.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nTested-by: Aime Le Rouzic \u003caime.le-rouzic@bull.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ab1b20467cd2214ad89a95d007047cd2a6b5bf5d",
      "tree": "d6cb28dab25eada6f2963d23afd284d0b899bab5",
      "parents": [
        "374e7b59498ce0785b3727794b351221528a5159"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jul 03 03:53:42 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 03 03:53:42 2008 -0700"
      },
      "message": "bridge: fix use-after-free in br_cleanup_bridges()\n\nUnregistering a bridge device may cause virtual devices stacked on the\nbridge, like vlan or macvlan devices, to be unregistered as well.\nbr_cleanup_bridges() uses for_each_netdev_safe() to iterate over all\ndevices during cleanup. This is not enough however, if one of the\nadditionally unregistered devices is next in the list to the bridge\ndevice, it will get freed as well and the iteration continues on\nthe freed element.\n\nRestart iteration after each bridge device removal from the beginning to\nfix this, similar to what rtnl_link_unregister() does.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "374e7b59498ce0785b3727794b351221528a5159",
      "tree": "dca488eae546ff8a113e614670e23460a23dc7ea",
      "parents": [
        "81b23b4a7acd9b37a269c62d02479d4f645dd20a"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "opurdila@ixiacom.com",
        "time": "Thu Jul 03 03:31:21 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 03 03:31:21 2008 -0700"
      },
      "message": "tcp: fix a size_t \u003c 0 comparison in tcp_read_sock\n\n\u003cused\u003e should be of type int (not size_t) since recv_actor can return\nnegative values and it is also used in a \u003c 0 comparison.\n\nSigned-off-by: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81b23b4a7acd9b37a269c62d02479d4f645dd20a",
      "tree": "b9e36252237aae5a572f70438b6b331c173ed201",
      "parents": [
        "2fff58fce14701e27d5e8a50fa73caef9a6907f5"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Jul 03 03:22:02 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 03 03:22:02 2008 -0700"
      },
      "message": "tcp: net/ipv4/tcp.c needs linux/scatterlist.h\n\nalpha:\n\nnet/ipv4/tcp.c: In function \u0027tcp_calc_md5_hash\u0027:\nnet/ipv4/tcp.c:2479: error: implicit declaration of function \u0027sg_init_table\u0027    net/ipv4/tcp.c:2482: error: implicit declaration of function \u0027sg_set_buf\u0027\nnet/ipv4/tcp.c:2507: error: implicit declaration of function \u0027sg_mark_end\u0027      \n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2fe195cfe3e53c144d247b2768e37732e8eae4d8",
      "tree": "5184938031f0caaa11e6668ea9aa8a121ef682e1",
      "parents": [
        "93b3cff9915322d6fa36bac0064714a7076230e4"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 01 19:59:37 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 01 19:59:37 2008 -0700"
      },
      "message": "net: fib_rules: fix error code for unsupported families\n\nThe errno code returned must be negative.\n\nFixes \"RTNETLINK answers: Unknown error 18446744073709551519\".\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "93b3cff9915322d6fa36bac0064714a7076230e4",
      "tree": "f17f0fd69b2c5c930b29f5e40b214d6a458cbbfc",
      "parents": [
        "8fde8a076940969d32805b853efdce8b988d7dda"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Tue Jul 01 19:57:19 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 01 19:57:19 2008 -0700"
      },
      "message": "netdevice: Fix wrong string handle in kernel command line parsing\n\nv1-\u003ev2: Use strlcpy() to ensure s[i].name be null-termination.\n\n1. In netdev_boot_setup_add(), a long name will leak.\n   ex. : dev\u003d21,0x1234,0x1234,0x2345,eth123456789verylongname.........\n2. In netdev_boot_setup_check(), mismatch will happen if s[i].name\n   is a substring of dev-\u003ename.\n   ex. : dev\u003d...eth1 dev\u003d...eth11\n\n[ With feedback from Ben Hutchings. ]\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8fde8a076940969d32805b853efdce8b988d7dda",
      "tree": "c384f4cb3eaa665a3e958cfef3b0d596db0763fb",
      "parents": [
        "8487460720fd03a0f4ecd032f017b0a8468028da"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Tue Jul 01 19:55:40 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 01 19:55:40 2008 -0700"
      },
      "message": "net: Tyop of sk_filter() comment\n\nParameter \"needlock\" no long exists.\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8487460720fd03a0f4ecd032f017b0a8468028da",
      "tree": "f546d710946a25505db23486632b974850fabfa6",
      "parents": [
        "a4aebb83cf0da0363684f1c339f7e6149a3e74c1"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Tue Jul 01 19:55:09 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 01 19:55:09 2008 -0700"
      },
      "message": "netlink: Unneeded local variable\n\nWe already have a variable, which has the same capability.\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a4aebb83cf0da0363684f1c339f7e6149a3e74c1",
      "tree": "b009adf7577ff4822ede398b1a162374ce32fb81",
      "parents": [
        "ff31ab56c0e900235f653e375fc3b01ba2d8d6a3"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 01 19:53:09 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 01 19:53:09 2008 -0700"
      },
      "message": "net-sched: fix filter destruction in atm/hfsc qdisc destruction\n\nFilters need to be destroyed before beginning to destroy classes\nsince the destination class needs to still be alive to unbind the\nfilter.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ff31ab56c0e900235f653e375fc3b01ba2d8d6a3",
      "tree": "e35bab914ce853527e1531dc7681a13a08720ed6",
      "parents": [
        "77a538d5aa25a8866606a1faa4300c9aa2a59dfc"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 01 19:52:38 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 01 19:52:38 2008 -0700"
      },
      "message": "net-sched: change tcf_destroy_chain() to clear start of filter list\n\nPass double tcf_proto pointers to tcf_destroy_chain() to make it\nclear the start of the filter list for more consistency.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a64cc4b793f8a84969401afe5a28bd08bc20c9b",
      "tree": "8a0233feae22b5c7e49bc6526579207f333922aa",
      "parents": [
        "aebb6a849cfe7d89bcacaaecc20a480dfc1180e7",
        "23976efedd5ecb420b87455787c537eb4aed1981"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 30 13:18:53 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 30 13:18:53 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "23976efedd5ecb420b87455787c537eb4aed1981",
      "tree": "902550e2716af5682de8219da1f228e13a5f0adb",
      "parents": [
        "1bcca3c463e4930cef9986b05165bb0b3eb46f63"
      ],
      "author": {
        "name": "Emmanuel Grumbach",
        "email": "emmanuel.grumbach@intel.com",
        "time": "Sat Jun 28 02:50:13 2008 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 30 15:43:53 2008 -0400"
      },
      "message": "mac80211: don\u0027t accept WEP keys other than WEP40 and WEP104\n\nThis patch makes mac80211 refuse a WEP key whose length is not WEP40 nor\nWEP104.\n\nSigned-off-by: Emmanuel Grumbach \u003cemmanuel.grumbach@intel.com\u003e\nSigned-off-by: Tomas Winkler \u003ctomas.winkler@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "84ebe1cdae56707b9aa1b40ae5aa7d817ba745f5",
      "tree": "d325c80abe018baac9cd492a76d38b998ae87d4c",
      "parents": [
        "d420895efb259a78dda50f95289571faa6e10e41"
      ],
      "author": {
        "name": "Jozsef Kadlecsik",
        "email": "kadlec@blackhole.kfki.hu",
        "time": "Mon Jun 30 12:41:30 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 30 12:41:30 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_tcp: fixing to check the lower bound of valid ACK\n\nLost connections was reported by Thomas Bätzler (running 2.6.25 kernel) on\nthe netfilter mailing list (see the thread \"Weird nat/conntrack Problem\nwith PASV FTP upload\"). He provided tcpdump recordings which helped to\nfind a long lingering bug in conntrack.\n\nIn TCP connection tracking, checking the lower bound of valid ACK could\nlead to mark valid packets as INVALID because:\n\n - We have got a \"higher or equal\" inequality, but the test checked\n   the \"higher\" condition only; fixed.\n - If the packet contains a SACK option, it could occur that the ACK\n   value was before the left edge of our (S)ACK \"window\": if a previous\n   packet from the other party intersected the right edge of the window\n   of the receiver, we could move forward the window parameters beyond\n   accepting a valid ack. Therefore in this patch we check the rightmost\n   SACK edge instead of the ACK value in the lower bound of valid (S)ACK\n   test.\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": "d420895efb259a78dda50f95289571faa6e10e41",
      "tree": "230f4b9b50b716c843186dd0450867f00d829941",
      "parents": [
        "59d88c00cafe5192b058abf4f3ce17c2e27d1c09"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Jun 27 20:14:54 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 20:14:54 2008 -0700"
      },
      "message": "ipv6 route: Convert rt6_device_match() to use RT6_LOOKUP_F_xxx flags.\n\nThe commit 77d16f450ae0452d7d4b009f78debb1294fb435c (\"[IPV6] ROUTE:\nUnify RT6_F_xxx and RT6_SELECT_F_xxx flags\") intended to pass various\nrouting lookup hints around RT6_LOOKUP_F_xxx flags, but conversion was\nmissing for rt6_device_match().\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "59d88c00cafe5192b058abf4f3ce17c2e27d1c09",
      "tree": "da7fb7007e05fb4b22c94408ab4b9dc279a81d4c",
      "parents": [
        "251a4b320f2352598f84e4452ab538aa8064af52"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Fri Jun 27 20:12:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 20:12:32 2008 -0700"
      },
      "message": "netlabel: Fix a problem when dumping the default IPv6 static labels\n\nThere is a missing \"!\" in a conditional statement which is causing entries to\nbe skipped when dumping the default IPv6 static label entries.  This can be\ndemonstrated by running the following:\n\n # netlabelctl unlbl add default address:::1 \\\n                                 label:system_u:object_r:unlabeled_t:s0\n # netlabelctl -p unlbl list\n\n... you will notice that the entry for the IPv6 localhost address is not\ndisplayed but does exist (works correctly, causes collisions when attempting\nto add duplicate entries, etc.).\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "251a4b320f2352598f84e4452ab538aa8064af52",
      "tree": "8993e1aafe4917c85a12f3ac0e8bb10b37a787e1",
      "parents": [
        "9a375803feaadb6c34e0807bd9325885dcca5c00"
      ],
      "author": {
        "name": "Eli Cohen",
        "email": "eli@mellanox.co.il",
        "time": "Fri Jun 27 20:09:00 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 20:09:00 2008 -0700"
      },
      "message": "net/inet_lro: remove setting skb-\u003eip_summed when not LRO-able\n\nWhen an SKB cannot be chained to a session, the current code attempts\nto \"restore\" its ip_summed field from lro_mgr-\u003eip_summed. However,\nlro_mgr-\u003eip_summed does not hold the original value; in fact, we\u0027d\nbetter not touch skb-\u003eip_summed since it is not modified by the code\nin the path leading to a failure to chain it.  Also use a cleaer\ncomment to the describe the ip_summed field of struct net_lro_mgr.\n\nIssue raised by Or Gerlitz \u003cogerlitz@voltaire.com\u003e\n\nSigned-off-by: Eli Cohen \u003celi@mellanox.co.il\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a375803feaadb6c34e0807bd9325885dcca5c00",
      "tree": "fba3b0835d1fb3211da1c1be9dd6d4508e6668a6",
      "parents": [
        "a0a61a604c60c14accc3962ecfeee9acc7a3c08a"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jun 27 20:06:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 20:06:08 2008 -0700"
      },
      "message": "inet fragments: fix race between inet_frag_find and inet_frag_secret_rebuild\n\nThe problem is that while we work w/o the inet_frags.lock even\nread-locked the secret rebuild timer may occur (on another CPU, since\nBHs are still disabled in the inet_frag_find) and change the rnd seed\nfor ipv4/6 fragments.\n\nIt was caused by my patch fd9e63544cac30a34c951f0ec958038f0529e244\n([INET]: Omit double hash calculations in xxx_frag_intern) late \nin the 2.6.24 kernel, so this should probably be queued to -stable.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "10b595aff138961b520bfed51d664fd99980f6e9",
      "tree": "47bdac6ac801296a855730e8c6646f038e9f46de",
      "parents": [
        "7be87351a1f6430426e88b4fcde353ab3330caff"
      ],
      "author": {
        "name": "Julius Volz",
        "email": "juliusv@google.com",
        "time": "Fri Jun 27 20:02:14 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 20:02:14 2008 -0700"
      },
      "message": "netlink: Fix some doc comments in net/netlink/attr.c\n\nFix some doc comments to match function and attribute names in\nnet/netlink/attr.c.\n\nSigned-off-by: Julius Volz \u003cjuliusv@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7be87351a1f6430426e88b4fcde353ab3330caff",
      "tree": "5e9d89ab2d96a82dbeb0ed63a2454fdfe8529710",
      "parents": [
        "c88e6f51c2154c7606f7e281bcca2d1a2c89d7b2"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Jun 27 20:00:19 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 20:00:19 2008 -0700"
      },
      "message": "tcp: /proc/net/tcp rto,ato values not scaled properly (v2)\n\nI found another case where we are sending information to userspace\nin the wrong HZ scale.  This should have been fixed back in 2.5 :-(\n\nThis means an ABI change but as it stands there is no way for an application\nlike ss to get the right value.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ede16af4cdbd21fa15d4178beb7c6fcbcccd07e9",
      "tree": "905f5151fa1f36f9eb946ddc36e13574cab6d7df",
      "parents": [
        "01e123d79a23000f85c4cfb12a957908c0b2c3d8"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jun 27 19:54:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 19:54:05 2008 -0700"
      },
      "message": "pkt_sched: Remove CONFIG_NET_SCH_RR\n\nCommit d62733c8e437fdb58325617c4b3331769ba82d70\n([SCHED]: Qdisc changes and sch_rr added for multiqueue)\nadded a NET_SCH_RR option that was unused since the code\nwent unconditionally into sch_prio.\n\nReported-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "01e123d79a23000f85c4cfb12a957908c0b2c3d8",
      "tree": "bcce410625a8cca323dd02b153df785272f65ed7",
      "parents": [
        "5dbaec5dc6a4895db8bf9765a867418481ed7311"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "wcong@critical-links.com",
        "time": "Fri Jun 27 19:51:35 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 19:51:35 2008 -0700"
      },
      "message": "pkt_sched: ERR_PTR() ususally encodes an negative errno, not positive.\n\nNote, in the following patch, \u0027err\u0027 is initialized as:\n\nint err \u003d -ENOBUFS;\n\nSigned-off-by: WANG Cong \u003cwcong@critical-links.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5dbaec5dc6a4895db8bf9765a867418481ed7311",
      "tree": "d0eb0fec1d8acd940bb892e439584374c3f81b4f",
      "parents": [
        "ec0d215f9420564fc8286dcf93d2d068bb53a07e"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Fri Jun 27 19:35:16 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 19:35:16 2008 -0700"
      },
      "message": "netdevice: Fix typo of dev_unicast_add() comment\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec0d215f9420564fc8286dcf93d2d068bb53a07e",
      "tree": "f28d77219b4983c5e8c042202d5e37a746f05e60",
      "parents": [
        "db43a282d3ec92ea45109c5551fff3dcc5afef02"
      ],
      "author": {
        "name": "Rainer Weikusat",
        "email": "rweikusat@mssgmbh.com",
        "time": "Fri Jun 27 19:34:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 19:34:18 2008 -0700"
      },
      "message": "af_unix: fix \u0027poll for write\u0027/connected DGRAM sockets\n\nFor n:1 \u0027datagram connections\u0027 (eg /dev/log), the unix_dgram_sendmsg\nroutine implements a form of receiver-imposed flow control by\ncomparing the length of the receive queue of the \u0027peer socket\u0027 with\nthe max_ack_backlog value stored in the corresponding sock structure,\neither blocking the thread which caused the send-routine to be called\nor returning EAGAIN. This routine is used by both SOCK_DGRAM and\nSOCK_SEQPACKET sockets. The poll-implementation for these socket types\nis datagram_poll from core/datagram.c. A socket is deemed to be\nwriteable by this routine when the memory presently consumed by\ndatagrams owned by it is less than the configured socket send buffer\nsize. This is always wrong for PF_UNIX non-stream sockets connected to\nserver sockets dealing with (potentially) multiple clients if the\nabovementioned receive queue is currently considered to be full.\n\u0027poll\u0027 will then return, indicating that the socket is writeable, but\na subsequent write result in EAGAIN, effectively causing an (usual)\napplication to \u0027poll for writeability by repeated send request with\nO_NONBLOCK set\u0027 until it has consumed its time quantum.\n\nThe change below uses a suitably modified variant of the datagram_poll\nroutines for both type of PF_UNIX sockets, which tests if the\nrecv-queue of the peer a socket is connected to is presently\nconsidered to be \u0027full\u0027 as part of the \u0027is this socket\nwriteable\u0027-checking code. The socket being polled is additionally\nput onto the peer_wait wait queue associated with its peer, because the\nunix_dgram_recvmsg routine does a wake up on this queue after a\ndatagram was received and the \u0027other wakeup call\u0027 is done implicitly\nas part of skb destruction, meaning, a process blocked in poll\nbecause of a full peer receive queue could otherwise sleep forever\nif no datagram owned by its socket was already sitting on this queue.\nAmong this change is a small (inline) helper routine named\n\u0027unix_recvq_full\u0027, which consolidates the actual testing code (in three\ndifferent places) into a single location.\n\nSigned-off-by: Rainer Weikusat \u003crweikusat@mssgmbh.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "db43a282d3ec92ea45109c5551fff3dcc5afef02",
      "tree": "9104c9559f3bfbdb0868e04a46176989e65c2efa",
      "parents": [
        "57413ebc4e0f1e471a3b4db4aff9a85c083d090e"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "opurdila@ixiacom.com",
        "time": "Fri Jun 27 17:27:21 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 17:27:21 2008 -0700"
      },
      "message": "tcp: fix for splice receive when used with software LRO\n\nIf an skb has nr_frags set to zero but its frag_list is not empty (as\nit can happen if software LRO is enabled), and a previous\ntcp_read_sock has consumed the linear part of the skb, then\n__skb_splice_bits:\n\n(a) incorrectly reports an error and\n\n(b) forgets to update the offset to account for the linear part\n\nAny of the two problems will cause the subsequent __skb_splice_bits\ncall (the one that handles the frag_list skbs) to either skip data,\nor, if the unadjusted offset is greater then the size of the next skb\nin the frag_list, make tcp_splice_read loop forever.\n\nSigned-off-by: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "57413ebc4e0f1e471a3b4db4aff9a85c083d090e",
      "tree": "325ee5d251700d991cea87d2c4d643b374959095",
      "parents": [
        "479798211967cd828e09ce27775b8cbfe99462ab"
      ],
      "author": {
        "name": "Miquel van Smoorenburg",
        "email": "miquels@cistron.nl",
        "time": "Fri Jun 27 17:23:57 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 27 17:23:57 2008 -0700"
      },
      "message": "tcp: calculate tcp_mem based on low memory instead of all memory\n\nThe tcp_mem array which contains limits on the total amount of memory\nused by TCP sockets is calculated based on nr_all_pages.  On a 32 bits\nx86 system, we should base this on the number of lowmem pages.\n\nSigned-off-by: Miquel van Smoorenburg \u003cmiquels@cistron.nl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "00eb7fe77eb455f807c396f9917f0f623d4c84bb",
      "tree": "ce67292589f9c387ff31203db36cb220202a7ee7",
      "parents": [
        "5f4a6fae46a214c4dce3bd63a6219a5f1c818c78"
      ],
      "author": {
        "name": "Emmanuel Grumbach",
        "email": "emmanuel.grumbach@intel.com",
        "time": "Thu Jun 26 12:13:46 2008 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jun 27 14:49:52 2008 -0400"
      },
      "message": "mac80211: fix an oops in several failure paths in key allocation\n\nThis patch fixes an oops in several failure paths in key allocation. This\nOops occurs when freeing a key that has not been linked yet, so the\nkey-\u003esdata is not set.\n\nSigned-off-by: Emmanuel Grumbach \u003cemmanuel.grumbach@intel.com\u003e\nSigned-off-by: Tomas Winkler \u003ctomas.winkler@intel.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "15c8b6c1aaaf1c4edd67e2f02e4d8e1bd1a51c0d",
      "tree": "3658f893c2f89ea0be4c6cc08aa11fa54476d0f4",
      "parents": [
        "8691e5a8f691cc2a4fda0651e8d307aaba0e7d68"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 09 09:39:44 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 26 11:24:38 2008 +0200"
      },
      "message": "on_each_cpu(): kill unused \u0027retry\u0027 parameter\n\nIt\u0027s not even passed on to smp_call_function() anymore, since that\nwas removed. So kill it.\n\nAcked-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "8691e5a8f691cc2a4fda0651e8d307aaba0e7d68",
      "tree": "6cb6767064d2d43441212566da2d83dcc9a0cd8e",
      "parents": [
        "490f5de52a87063fcb40e3b22f61b0779603ff6d"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jun 06 11:18:06 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 26 11:24:35 2008 +0200"
      },
      "message": "smp_call_function: get rid of the unused nonatomic/retry argument\n\nIt\u0027s never used and the comments refer to nonatomic and retry\ninterchangably. So get rid of it.\n\nAcked-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "59d393ad92f719d9ef36b96eae56d4817a7eeb10",
      "tree": "07fec813628c030d884589d44f6789ffcc475cf6",
      "parents": [
        "88a6f4ad76be425f47df7f892baf913bcd466fb3"
      ],
      "author": {
        "name": "Tony Vroon",
        "email": "tony@linx.net",
        "time": "Wed Jun 11 16:23:56 2008 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 25 10:31:29 2008 -0400"
      },
      "message": "mac80211: implement EU regulatory domain\n\nImplement missing EU regulatory domain for mac80211. Based on the\ninformation in IEEE 802.11-2007 (specifically pages 1142, 1143 \u0026 1148)\nand ETSI 301 893 (V1.4.1).\nWith thanks to Johannes Berg.\n\nSigned-off-by: Tony Vroon \u003ctony@linx.net\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "88a6f4ad76be425f47df7f892baf913bcd466fb3",
      "tree": "105b5d30f1dd6bb931acf5dc14b6c186c3108acf",
      "parents": [
        "b9f75f45a6b46a0ab4eb0857d437a0845871f314"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 24 13:30:45 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 24 13:30:45 2008 -0700"
      },
      "message": "netfilter: ip6table_mangle: don\u0027t reroute in LOCAL_IN\n\nRerouting should only happen in LOCAL_OUT, in INPUT its useless\nsince the packet has already chosen its final destination.\n\nNoticed by Alexey Dobriyan \u003cadobriyan@gmail.com\u003e.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1e74f9cbbba5348a6c58988cce0f19d6ef887cc8",
      "tree": "47fcfdba6a17a02cf6745146ebb2ae435405ab1a",
      "parents": [
        "31a72bce0bd6f3e0114009288bccbc96376eeeca",
        "481c5346d0981940ee63037eb53e4e37b0735c10"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 23 11:29:11 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 23 11:29:11 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/rcu\n"
    },
    {
      "commit": "a60b33cf59d1c9e0e363287fce799cb23d45660c",
      "tree": "85eb8feea5717cf472a2549e53f59183a95617c5",
      "parents": [
        "0f476b6d91a1395bda6464e653ce66ea9bea7167",
        "481c5346d0981940ee63037eb53e4e37b0735c10"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 23 10:52:59 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 23 10:52:59 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/softirq\n"
    },
    {
      "commit": "b9f75f45a6b46a0ab4eb0857d437a0845871f314",
      "tree": "5c893f3b63d52e5b52fbb7644a833cffdb2c5af2",
      "parents": [
        "735ce972fbc8a65fb17788debd7bbe7b4383cc62"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Jun 20 22:16:51 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 20 22:16:51 2008 -0700"
      },
      "message": "netns: Don\u0027t receive new packets in a dead network namespace.\n\nAlexey Dobriyan \u003cadobriyan@gmail.com\u003e writes:\n\u003e Subject: ICMP sockets destruction vs ICMP packets oops\n\n\u003e After icmp_sk_exit() nuked ICMP sockets, we get an interrupt.\n\u003e icmp_reply() wants ICMP socket.\n\u003e\n\u003e Steps to reproduce:\n\u003e\n\u003e \tlaunch shell in new netns\n\u003e \tmove real NIC to netns\n\u003e \tsetup routing\n\u003e \tping -i 0\n\u003e \texit from shell\n\u003e\n\u003e BUG: unable to handle kernel NULL pointer dereference at 0000000000000000\n\u003e IP: [\u003cffffffff803fce17\u003e] icmp_sk+0x17/0x30\n\u003e PGD 17f3cd067 PUD 17f3ce067 PMD 0 \n\u003e Oops: 0000 [1] PREEMPT SMP DEBUG_PAGEALLOC\n\u003e CPU 0 \n\u003e Modules linked in: usblp usbcore\n\u003e Pid: 0, comm: swapper Not tainted 2.6.26-rc6-netns-ct #4\n\u003e RIP: 0010:[\u003cffffffff803fce17\u003e]  [\u003cffffffff803fce17\u003e] icmp_sk+0x17/0x30\n\u003e RSP: 0018:ffffffff8057fc30  EFLAGS: 00010286\n\u003e RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffff81017c7db900\n\u003e RDX: 0000000000000034 RSI: ffff81017c7db900 RDI: ffff81017dc41800\n\u003e RBP: ffffffff8057fc40 R08: 0000000000000001 R09: 000000000000a815\n\u003e R10: 0000000000000000 R11: 0000000000000001 R12: ffffffff8057fd28\n\u003e R13: ffffffff8057fd00 R14: ffff81017c7db938 R15: ffff81017dc41800\n\u003e FS:  0000000000000000(0000) GS:ffffffff80525000(0000) knlGS:0000000000000000\n\u003e CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b\n\u003e CR2: 0000000000000000 CR3: 000000017fcda000 CR4: 00000000000006e0\n\u003e DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n\u003e DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n\u003e Process swapper (pid: 0, threadinfo ffffffff8053a000, task ffffffff804fa4a0)\n\u003e Stack:  0000000000000000 ffff81017c7db900 ffffffff8057fcf0 ffffffff803fcfe4\n\u003e  ffffffff804faa38 0000000000000246 0000000000005a40 0000000000000246\n\u003e  000000000001ffff ffff81017dd68dc0 0000000000005a40 0000000055342436\n\u003e Call Trace:\n\u003e  \u003cIRQ\u003e  [\u003cffffffff803fcfe4\u003e] icmp_reply+0x44/0x1e0\n\u003e  [\u003cffffffff803d3a0a\u003e] ? ip_route_input+0x23a/0x1360\n\u003e  [\u003cffffffff803fd645\u003e] icmp_echo+0x65/0x70\n\u003e  [\u003cffffffff803fd300\u003e] icmp_rcv+0x180/0x1b0\n\u003e  [\u003cffffffff803d6d84\u003e] ip_local_deliver+0xf4/0x1f0\n\u003e  [\u003cffffffff803d71bb\u003e] ip_rcv+0x33b/0x650\n\u003e  [\u003cffffffff803bb16a\u003e] netif_receive_skb+0x27a/0x340\n\u003e  [\u003cffffffff803be57d\u003e] process_backlog+0x9d/0x100\n\u003e  [\u003cffffffff803bdd4d\u003e] net_rx_action+0x18d/0x250\n\u003e  [\u003cffffffff80237be5\u003e] __do_softirq+0x75/0x100\n\u003e  [\u003cffffffff8020c97c\u003e] call_softirq+0x1c/0x30\n\u003e  [\u003cffffffff8020f085\u003e] do_softirq+0x65/0xa0\n\u003e  [\u003cffffffff80237af7\u003e] irq_exit+0x97/0xa0\n\u003e  [\u003cffffffff8020f198\u003e] do_IRQ+0xa8/0x130\n\u003e  [\u003cffffffff80212ee0\u003e] ? mwait_idle+0x0/0x60\n\u003e  [\u003cffffffff8020bc46\u003e] ret_from_intr+0x0/0xf\n\u003e  \u003cEOI\u003e  [\u003cffffffff80212f2c\u003e] ? mwait_idle+0x4c/0x60\n\u003e  [\u003cffffffff80212f23\u003e] ? mwait_idle+0x43/0x60\n\u003e  [\u003cffffffff8020a217\u003e] ? cpu_idle+0x57/0xa0\n\u003e  [\u003cffffffff8040f380\u003e] ? rest_init+0x70/0x80\n\u003e Code: 10 5b 41 5c 41 5d 41 5e c9 c3 66 2e 0f 1f 84 00 00 00 00 00 55 48 89 e5 53\n\u003e 48 83 ec 08 48 8b 9f 78 01 00 00 e8 2b c7 f1 ff 89 c0 \u003c48\u003e 8b 04 c3 48 83 c4 08\n\u003e 5b c9 c3 66 66 66 66 66 2e 0f 1f 84 00\n\u003e RIP  [\u003cffffffff803fce17\u003e] icmp_sk+0x17/0x30\n\u003e  RSP \u003cffffffff8057fc30\u003e\n\u003e CR2: 0000000000000000\n\u003e ---[ end trace ea161157b76b33e8 ]---\n\u003e Kernel panic - not syncing: Aiee, killing interrupt handler!\n\nReceiving packets while we are cleaning up a network namespace is a\nracy proposition. It is possible when the packet arrives that we have\nremoved some but not all of the state we need to fully process it.  We\nhave the choice of either playing wack-a-mole with the cleanup routines\nor simply dropping packets when we don\u0027t have a network namespace to\nhandle them.\n\nSince the check looks inexpensive in netif_receive_skb let\u0027s just\ndrop the incoming packets.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "735ce972fbc8a65fb17788debd7bbe7b4383cc62",
      "tree": "b047160a720011021b148350e42d8cc020f06a61",
      "parents": [
        "2645a3c3761ac25498db2e627271016c849c68e1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 20 22:04:34 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 20 22:04:34 2008 -0700"
      },
      "message": "sctp: Make sure N * sizeof(union sctp_addr) does not overflow.\n\nAs noticed by Gabriel Campana, the kmalloc() length arg\npassed in by sctp_getsockopt_local_addrs_old() can overflow\nif -\u003eaddr_num is large enough.\n\nTherefore, enforce an appropriate limit.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cddf63d99d0d145f18b293c3d0de4af7dab2a922",
      "tree": "dd59333592ce2f899bd21f06dd5bcb05d474dea5",
      "parents": [
        "af96f0103d332be92c42a44accf731da667ecc03"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue May 20 19:16:06 2008 +0200"
      },
      "committer": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Fri Jun 20 14:05:58 2008 -0600"
      },
      "message": "irnet_ppp: BKL pushdown\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "f630e43a215a3129d0c1173cae0bce6ea4855cf7",
      "tree": "9bd9c07a59622dfb166624f79d2d71f7e076aa13",
      "parents": [
        "aea7427f70cce5fa8f99ce447b213e9e3b49f24c"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Jun 19 16:33:57 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 19 16:33:57 2008 -0700"
      },
      "message": "ipv6: Drop packets for loopback address from outside of the box.\n\n[ Based upon original report and patch by Karsten Keil.  Karsten\n  has verified that this fixes the TAHI test case \"ICMPv6 test\n  v6LC.5.1.2 Part F\". -DaveM ]\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aea7427f70cce5fa8f99ce447b213e9e3b49f24c",
      "tree": "cf247ed4683d498ed7c067da7e6ef315ad97f3ff",
      "parents": [
        "ef3a62d272f033989e83eb1f26505f93f93e3e69"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Thu Jun 19 16:29:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 19 16:29:39 2008 -0700"
      },
      "message": "ipv6: Remove options header when setsockopt\u0027s optlen is 0\n\nRemove the sticky Hop-by-Hop options header by calling setsockopt()\nfor IPV6_HOPOPTS with a zero option length, per RFC3542.\n\nRouting header and Destination options header does the same as\nHop-by-Hop options header.\n\nSigned-off-by: Shan Wei \u003cshanwei@cn.fujitsu.com\u003e\nAcked-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ef3a62d272f033989e83eb1f26505f93f93e3e69",
      "tree": "9ce3eea86642e33dbec68dd2b3f81298f5ece235",
      "parents": [
        "6d1a3fb567a728d31474636e167c324702a0c38b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jun 18 15:39:48 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 18 15:39:48 2008 -0700"
      },
      "message": "mac80211: detect driver tx bugs\n\nWhen a driver rejects a frame in it\u0027s -\u003etx() callback, it must also\nstop queues, otherwise mac80211 can go into a loop here. Detect this\nsituation and abort the loop after five retries, warning about the\ndriver bug.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6d1a3fb567a728d31474636e167c324702a0c38b",
      "tree": "02ffcef1520345d44f080b821aa32f4a596b7e1f",
      "parents": [
        "3a5be7d4b079f3a9ce1e8ce4a93ba15ae6d00111"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Jun 18 02:07:07 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 18 02:07:07 2008 -0700"
      },
      "message": "netlink: genl: fix circular locking\n\ngenetlink has a circular locking dependency when dumping the registered\nfamilies:\n\n- dump start:\ngenl_rcv()            : take genl_mutex\ngenl_rcv_msg()        : call netlink_dump_start() while holding genl_mutex\nnetlink_dump_start(),\nnetlink_dump()        : take nlk-\u003ecb_mutex\nctrl_dumpfamily()     : try to detect this case and not take genl_mutex a\n                        second time\n\n- dump continuance:\nnetlink_rcv()         : call netlink_dump\nnetlink_dump          : take nlk-\u003ecb_mutex\nctrl_dumpfamily()     : take genl_mutex\n\nRegister genl_lock as callback mutex with netlink to fix this. This slightly\nwidens an already existing module unload race, the genl ops used during the\ndump might go away when the module is unloaded. Thomas Graf is working on a\nseperate fix for this.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3a5be7d4b079f3a9ce1e8ce4a93ba15ae6d00111",
      "tree": "c9480b8cca612e9355f6035f2e2814482a07d4b2",
      "parents": [
        "3c73419c09a5ef73d56472dbfdade9e311496e9b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 18 01:19:51 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 18 01:19:51 2008 -0700"
      },
      "message": "Revert \"mac80211: Use skb_header_cloned() on TX path.\"\n\nThis reverts commit 608961a5eca8d3c6bd07172febc27b5559408c5d.\n\nThe problem is that the mac80211 stack not only needs to be able to\nmuck with the link-level headers, it also might need to mangle all of\nthe packet data if doing sw wireless encryption.\n\nThis fixes kernel bugzilla #10903.  Thanks to Didier Raboud (for the\nbugzilla report), Andrew Prince (for bisecting), Johannes Berg (for\nbringing this bisection analysis to my attention), and Ilpo (for\ntrying to analyze this purely from the TCP side).\n\nIn 2.6.27 we can take another stab at this, by using something like\nskb_cow_data() when the TX path of mac80211 ends up with a non-NULL\ntx-\u003ekey.  The ESP protocol code in the IPSEC stack can be used as a\nmodel for implementation.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3c73419c09a5ef73d56472dbfdade9e311496e9b",
      "tree": "19dc2714a4649445bc7cbcd06c0d1851962d41fc",
      "parents": [
        "4552e1198a08198ce0b42e856845b5394c82c59c"
      ],
      "author": {
        "name": "Rainer Weikusat",
        "email": "rweikusat@mssgmbh.com",
        "time": "Tue Jun 17 22:28:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 17 22:28:05 2008 -0700"
      },
      "message": "af_unix: fix \u0027poll for write\u0027/ connected DGRAM sockets\n\nThe unix_dgram_sendmsg routine implements a (somewhat crude)\nform of receiver-imposed flow control by comparing the length of the\nreceive queue of the \u0027peer socket\u0027 with the max_ack_backlog value\nstored in the corresponding sock structure, either blocking\nthe thread which caused the send-routine to be called or returning\nEAGAIN. This routine is used by both SOCK_DGRAM and SOCK_SEQPACKET\nsockets. The poll-implementation for these socket types is\ndatagram_poll from core/datagram.c. A socket is deemed to be writeable\nby this routine when the memory presently consumed by datagrams\nowned by it is less than the configured socket send buffer size. This\nis always wrong for connected PF_UNIX non-stream sockets when the\nabovementioned receive queue is currently considered to be full.\n\u0027poll\u0027 will then return, indicating that the socket is writeable, but\na subsequent write result in EAGAIN, effectively causing an\n(usual) application to \u0027poll for writeability by repeated send request\nwith O_NONBLOCK set\u0027 until it has consumed its time quantum.\n\nThe change below uses a suitably modified variant of the datagram_poll\nroutines for both type of PF_UNIX sockets, which tests if the\nrecv-queue of the peer a socket is connected to is presently\nconsidered to be \u0027full\u0027 as part of the \u0027is this socket\nwriteable\u0027-checking code. The socket being polled is additionally\nput onto the peer_wait wait queue associated with its peer, because the\nunix_dgram_sendmsg routine does a wake up on this queue after a\ndatagram was received and the \u0027other wakeup call\u0027 is done implicitly\nas part of skb destruction, meaning, a process blocked in poll\nbecause of a full peer receive queue could otherwise sleep forever\nif no datagram owned by its socket was already sitting on this queue.\nAmong this change is a small (inline) helper routine named\n\u0027unix_recvq_full\u0027, which consolidates the actual testing code (in three\ndifferent places) into a single location.\n\nSigned-off-by: Rainer Weikusat \u003crweikusat@mssgmbh.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fe833fca2eac6b3d3ad5e35f44ad4638362f1da8",
      "tree": "5069eb9f5b9c9f881fb42dc0e2c347ef7b45036f",
      "parents": [
        "a56b8f81580761c65e4d8d0c04ac1cb7a788bdf1"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Jun 17 16:37:13 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 17 16:38:23 2008 -0700"
      },
      "message": "xfrm: fix fragmentation for ipv4 xfrm tunnel\n\nWhen generating the ip header for the transformed packet we just copy\nthe frag_off field of the ip header from the original packet to the ip\nheader of the new generated packet. If we receive a packet as a chain\nof fragments, all but the last of the new generated packets have the\nIP_MF flag set. We have to mask the frag_off field to only keep the\nIP_DF flag from the original packet. This got lost with git commit\n36cf9acf93e8561d9faec24849e57688a81eb9c5 (\"[IPSEC]: Separate\ninner/outer mode processing on output\")\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a56b8f81580761c65e4d8d0c04ac1cb7a788bdf1",
      "tree": "4757959413d9988ddf1cad9c9e28aead5f222276",
      "parents": [
        "8a548868db62422113104ebc658065e3fe976951"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 17 15:52:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 17 15:52:32 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_h323: fix module unload crash\n\nThe H.245 helper is not registered/unregistered, but assigned to\nconnections manually from the Q.931 helper. This means on unload\nexisting expectations and connections using the helper are not\ncleaned up, leading to the following oops on module unload:\n\nCPU 0 Unable to handle kernel paging request at virtual address c00a6828, epc \u003d\u003d 802224dc, ra \u003d\u003d 801d4e7c\nOops[#1]:\nCpu 0\n$ 0   : 00000000 00000000 00000004 c00a67f0\n$ 4   : 802a5ad0 81657e00 00000000 00000000\n$ 8   : 00000008 801461c8 00000000 80570050\n$12   : 819b0280 819b04b0 00000006 00000000\n$16   : 802a5a60 80000000 80b46000 80321010\n$20   : 00000000 00000004 802a5ad0 00000001\n$24   : 00000000 802257a8\n$28   : 802a4000 802a59e8 00000004 801d4e7c\nHi    : 0000000b\nLo    : 00506320\nepc   : 802224dc ip_conntrack_help+0x38/0x74     Tainted: P\nra    : 801d4e7c nf_iterate+0xbc/0x130\nStatus: 1000f403    KERNEL EXL IE\nCause : 00800008\nBadVA : c00a6828\nPrId  : 00019374\nModules linked in: ip_nat_pptp ip_conntrack_pptp ath_pktlog wlan_acl wlan_wep wlan_tkip wlan_ccmp wlan_xauth ath_pci ath_dev ath_dfs ath_rate_atheros wlan ath_hal ip_nat_tftp ip_conntrack_tftp ip_nat_ftp ip_conntrack_ftp pppoe ppp_async ppp_deflate ppp_mppe pppox ppp_generic slhc\nProcess swapper (pid: 0, threadinfo\u003d802a4000, task\u003d802a6000)\nStack : 801e7d98 00000004 802a5a60 80000000 801d4e7c 801d4e7c 802a5ad0 00000004\n        00000000 00000000 801e7d98 00000000 00000004 802a5ad0 00000000 00000010\n        801e7d98 80b46000 802a5a60 80320000 80000000 801d4f8c 802a5b00 00000002\n        80063834 00000000 80b46000 802a5a60 801e7d98 80000000 802ba854 00000000\n        81a02180 80b7e260 81a021b0 819b0000 819b0000 80570056 00000000 00000001\n        ...\nCall Trace:\n [\u003c801e7d98\u003e] ip_finish_output+0x0/0x23c\n [\u003c801d4e7c\u003e] nf_iterate+0xbc/0x130\n [\u003c801d4e7c\u003e] nf_iterate+0xbc/0x130\n [\u003c801e7d98\u003e] ip_finish_output+0x0/0x23c\n [\u003c801e7d98\u003e] ip_finish_output+0x0/0x23c\n [\u003c801d4f8c\u003e] nf_hook_slow+0x9c/0x1a4\n\nOne way to fix this would be to split helper cleanup from the unregistration\nfunction and invoke it for the H.245 helper, but since ctnetlink needs to be\nable to find the helper for synchonization purposes, a better fix is to\nregister it normally and make sure its not assigned to connections during\nhelper lookup. The missing l3num initialization is enough for this, this\npatch changes it to use AF_UNSPEC to make it more explicit though.\n\nReported-by: liannan \u003cliannan@twsz.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8a548868db62422113104ebc658065e3fe976951",
      "tree": "e3956afadd1d46bedd38237e8b4866b506235367",
      "parents": [
        "68b80f11380889996aa7eadba29dbbb5c29a5864"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 17 15:52:07 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 17 15:52:07 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_h323: fix memory leak in module initialization error path\n\nProperly free h323_buffer when helper registration fails.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "68b80f11380889996aa7eadba29dbbb5c29a5864"
}
