)]}'
{
  "log": [
    {
      "commit": "c80a5cdfc5ca6533cb893154f546370da1fdb8f0",
      "tree": "963fef5f697a5953469441d5eaafbbad99fc64a8",
      "parents": [
        "217cbfa856dc1cbc2890781626c4032d9e3ec59f"
      ],
      "author": {
        "name": "Doug Leith",
        "email": "doug.leith@nuim.ie",
        "time": "Mon May 25 22:44:59 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 25 22:44:59 2009 -0700"
      },
      "message": "tcp: tcp_vegas ssthresh bugfix\n\nThis patch fixes ssthresh accounting issues in tcp_vegas when cwnd decreases\n\nSigned-off-by: Doug Leith \u003cdoug.leith@nuim.ie\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ed18d76d959e5cbfa5d70c8f7ba95476582a556",
      "tree": "9fbd15b820b43627440fd6961f687c30e8d4e130",
      "parents": [
        "5b5f792a6a9a2f9ae812d151ed621f72e99b1725"
      ],
      "author": {
        "name": "Robert Olsson",
        "email": "robert.olsson@its.uu.se",
        "time": "Thu May 21 15:20:59 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 21 15:20:59 2009 -0700"
      },
      "message": "ipv4: Fix oops with FIB_TRIE\n\nIt seems we can fix this by disabling preemption while we re-balance the \ntrie. This is with the CONFIG_CLASSIC_RCU. It\u0027s been stress-tested at high \nloads continuesly taking a full BGP table up/down via iproute -batch.\n\nNote. fib_trie is not updated for CONFIG_PREEMPT_RCU\n\nReported-by: Andrei Popa\nSigned-off-by: Robert Olsson \u003crobert.olsson@its.uu.se\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1ddbcb005c395518c2cd0df504cff3d4b5c85853",
      "tree": "03567b8b50d3094ae13c64b44890f9c0d53361b7",
      "parents": [
        "cf8da764fc6959b7efb482f375dfef9830e98205"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue May 19 20:14:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 20 17:18:02 2009 -0700"
      },
      "message": "net: fix rtable leak in net/ipv4/route.c\n\nAlexander V. Lukyanov found a regression in 2.6.29 and made a complete\nanalysis found in http://bugzilla.kernel.org/show_bug.cgi?id\u003d13339\nQuoted here because its a perfect one :\n\nbegin_of_quotation\n 2.6.29 patch has introduced flexible route cache rebuilding. Unfortunately the\n patch has at least one critical flaw, and another problem.\n\n rt_intern_hash calculates rthi pointer, which is later used for new entry\n insertion. The same loop calculates cand pointer which is used to clean the\n list. If the pointers are the same, rtable leak occurs, as first the cand is\n removed then the new entry is appended to it.\n\n This leak leads to unregister_netdevice problem (usage count \u003e 0).\n\n Another problem of the patch is that it tries to insert the entries in certain\n order, to facilitate counting of entries distinct by all but QoS parameters.\n Unfortunately, referencing an existing rtable entry moves it to list beginning,\n to speed up further lookups, so the carefully built order is destroyed.\n\n For the first problem the simplest patch it to set rthi\u003d0 when rthi\u003d\u003dcand, but\n it will also destroy the ordering.\nend_of_quotation\n\nProblematic commit is 1080d709fb9d8cd4392f93476ee46a9d6ea05a5b\n(net: implement emergency route cache rebulds when gc_elasticity is exceeded)\n\nTrying to keep dst_entries ordered is too complex and breaks the fact that\norder should depend on the frequency of use for garbage collection.\n\nA possible fix is to make rt_intern_hash() simpler, and only makes\nrt_check_expire() a litle bit smarter, being able to cope with an arbitrary\nentries order. The added loop is running on cache hot data, while cpu\nis prefetching next object, so should be unnoticied.\n\nReported-and-analyzed-by: Alexander V. Lukyanov \u003clav@yar.ru\u003e\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf8da764fc6959b7efb482f375dfef9830e98205",
      "tree": "701e4c42f6563cdb50153485015f0c4b439294ec",
      "parents": [
        "bc8a5397433e4effbaddfa7e462d10b3c060cabb"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue May 19 18:54:22 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 20 17:18:01 2009 -0700"
      },
      "message": "net: fix length computation in rt_check_expire()\n\nrt_check_expire() computes average and standard deviation of chain lengths,\nbut not correclty reset length to 0 at beginning of each chain.\nThis probably gives overflows for sum2 (and sum) on loaded machines instead\nof meaningful results.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc8a5397433e4effbaddfa7e462d10b3c060cabb",
      "tree": "8eb8ad8fecf937006a6f1d8bb70f368821442577",
      "parents": [
        "995b337952cdf7e05d288eede580257b632a8343"
      ],
      "author": {
        "name": "Frans Pop",
        "email": "elendil@planet.nl",
        "time": "Mon May 18 21:48:38 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 21:48:38 2009 -0700"
      },
      "message": "ipv4: make default for INET_LRO consistent with help text\n\nCommit e81963b1 (\"ipv4: Make INET_LRO a bool instead of tristate.\")\nchanged this config from tristate to bool.  Add default so that it is\nconsistent with the help text.\n\nSigned-off-by: Frans Pop \u003celendil@planet.nl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "775273131810caa41dfc7f9e552ea5d8508caf40",
      "tree": "38ee8e4815d614c483be352524134c6f7fc163c3",
      "parents": [
        "705efc3b03cbee449e4d83b230423894152f7982"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun May 10 20:32:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 15:05:40 2009 -0700"
      },
      "message": "tcp: fix MSG_PEEK race check\n\nCommit 518a09ef11 (tcp: Fix recvmsg MSG_PEEK influence of\nblocking behavior) lets the loop run longer than the race check\ndid previously expect, so we need to be more careful with this\ncheck and consider the work we have been doing.\n\nI tried my best to deal with urg hole madness too which happens\nhere:\n\tif (!sock_flag(sk, SOCK_URGINLINE)) {\n\t\t++*seq;\n\t\t...\nby using additional offset by one but I certainly have very\nlittle interest in testing that part.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nTested-by: Frans Pop \u003celendil@planet.nl\u003e\nTested-by: Ian Zimmermann \u003citz@buug.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2513dfb83fc775364fe85803d3a84d7ebe5763a5",
      "tree": "157003b5c1b88c1eb95b1307db9835ddd610fb02",
      "parents": [
        "5e392739d6ab72f7c35040aa07f4097904bce6e7"
      ],
      "author": {
        "name": "Chris Friesen",
        "email": "cfriesen@nortel.com",
        "time": "Sun May 17 20:39:33 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 17 20:39:33 2009 -0700"
      },
      "message": "ipconfig: handle case of delayed DHCP server\n\nIf a DHCP server is delayed, it\u0027s possible for the client to receive the \nDHCPOFFER after it has already sent out a new DHCPDISCOVER message from \na second interface.  The client then sends out a DHCPREQUEST from the \nsecond interface, but the server doesn\u0027t recognize the device and \nrejects the request.\n\nThis patch simply tracks the current device being configured and throws \naway the OFFER if it is not intended for the current device.  A more \nsophisticated approach would be to put the OFFER information into the \nstruct ic_device rather than storing it globally.\n\nSigned-off-by: Chris Friesen \u003ccfriesen@nortel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e81963b180ac502fda0326edf059b1e29cdef1a2",
      "tree": "47b8b84acbaa45bc683a51e97c236eb35975aa0d",
      "parents": [
        "9b05126baa146fc3f41360164141d4e1b3ea93c4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 08 12:45:26 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 08 12:45:26 2009 -0700"
      },
      "message": "ipv4: Make INET_LRO a bool instead of tristate.\n\nThis code is used as a library by several device drivers,\nwhich select INET_LRO.\n\nIf some are modules and some are statically built into the\nkernel, we get build failures if INET_LRO is modular.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0c266898b42fe4e4e2f9edfc9d3474c10f93aa6a",
      "tree": "d964259d2fdd67f22f005852b1770c40ba4d6474",
      "parents": [
        "0b2febf38a33d7c40fb7bb4a58c113a1fa33c412"
      ],
      "author": {
        "name": "Satoru SATOH",
        "email": "satoru.satoh@gmail.com",
        "time": "Mon May 04 11:11:01 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 04 11:11:01 2009 -0700"
      },
      "message": "tcp: Fix tcp_prequeue() to get correct rto_min value\n\ntcp_prequeue() refers to the constant value (TCP_RTO_MIN) regardless of\nthe actual value might be tuned. The following patches fix this and make\ntcp_prequeue get the actual value returns from tcp_rto_min().\n\nSigned-off-by: Satoru SATOH \u003csatoru.satoh@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "942e4a2bd680c606af0211e64eb216be2e19bf61",
      "tree": "a83af49242d4a8d53aa0f3b5814eb17da72edc09",
      "parents": [
        "bf368e4e70cd4e0f880923c44e95a4273d725ab4"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Apr 28 22:36:33 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 28 22:36:33 2009 -0700"
      },
      "message": "netfilter: revised locking for x_tables\n\nThe x_tables are organized with a table structure and a per-cpu copies\nof the counters and rules. On older kernels there was a reader/writer \nlock per table which was a performance bottleneck. In 2.6.30-rc, this\nwas converted to use RCU and the counters/rules which solved the performance\nproblems for do_table but made replacing rules much slower because of\nthe necessary RCU grace period.\n\nThis version uses a per-cpu set of spinlocks and counters to allow to\ntable processing to proceed without the cache thrashing of a global\nreader lock and keeps the same performance for table updates.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c9503e0fe052020e0294cd07d0ecd982eb7c9177",
      "tree": "aa0425fc1f30ebdf8d7455cf59db5c3ea2c7dfd0",
      "parents": [
        "2296e5a0136f7ba64c99f3a48a55a687aa9abcc8"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Mon Apr 27 05:42:24 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 27 05:42:24 2009 -0700"
      },
      "message": "ipv4: Limit size of route cache hash table\n\nRight now we have no upper limit on the size of the route cache hash table.\nOn a 128GB POWER6 box it ends up as 32MB:\n\n    IP route cache hash table entries: 4194304 (order: 9, 33554432 bytes)\n\nIt would be nice to cap this for memory consumption reasons, but a massive\nhashtable also causes a significant spike when measuring OS jitter.\n\nWith a 32MB hashtable and 4 million entries, rt_worker_func is taking\n5 ms to complete. On another system with more memory it\u0027s taking 14 ms.\nEven though rt_worker_func does call cond_sched() to limit its impact,\nin an HPC environment we want to keep all sources of OS jitter to a minimum.\n\nWith the patch applied we limit the number of entries to 512k which\ncan still be overriden by using the rt_entries boot option:\n\n    IP route cache hash table entries: 524288 (order: 6, 4194304 bytes)\n\nWith this patch rt_worker_func now takes 0.460 ms on the same system.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nAcked-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "52cf3cc8acea52ecb93ef1dddb4ef2ae4e35c319",
      "tree": "b4ef4d7350d57d1512f12d3d529efa677ff94243",
      "parents": [
        "8caf153974f2274301e583fda732cc8e5b80331f"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Apr 18 05:48:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 20 02:15:00 2009 -0700"
      },
      "message": "tcp: fix mid-wq adjustment helper\n\nJust noticed while doing some new work that the recent\nmid-wq adjustment logic will misbehave when FACK is not\nin use (happens either due sysctl\u0027ed off or auto-detected\nreordering) because I forgot the relevant TCPCB tagbit.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a0a69a0106dab8d20596f97f6674bed3b394d1ee",
      "tree": "2477a32cab5f8afdb1c158f0b151048ee7afc594",
      "parents": [
        "9dd014eb9804f19d6230c3cbc10fa25f5416bda7"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Apr 17 02:34:38 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 17 02:34:38 2009 -0700"
      },
      "message": "gro: Fix use after free in tcp_gro_receive\n\nAfter calling skb_gro_receive skb-\u003elen can no longer be relied\non since if the skb was merged using frags, then its pages will\nhave been removed and the length reduced.\n\nThis caused tcp_gro_receive to prematurely end merging which\nresulted in suboptimal performance with ixgbe.\n\nThe fix is to store skb-\u003elen on the stack.\n\nReported-by: Mark Wagner \u003cmwagner@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "134ffb4cad92a6aa534e55a9be145bca780a32c1",
      "tree": "be2b312eefbe4b38e81efb384fda4d8fdfae9943",
      "parents": [
        "2238aff5bbd9d928b69e579b4c95842f97da95ba",
        "98d500d66cb7940747b424b245fc6a51ecfbf005"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 16 16:32:29 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 16 16:32:29 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6\n"
    },
    {
      "commit": "98d500d66cb7940747b424b245fc6a51ecfbf005",
      "tree": "0c5d745901be7aab151071829a8dc6fac193fb30",
      "parents": [
        "38fb0afcd8761f8858e27135ed89a65117e2019c"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Apr 16 18:33:01 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Apr 16 18:33:01 2009 +0200"
      },
      "message": "netfilter: nf_nat: add support for persistent mappings\n\nThe removal of the SAME target accidentally removed one feature that is\nnot available from the normal NAT targets so far, having multi-range\nmappings that use the same mapping for each connection from a single\nclient. The current behaviour is to choose the address from the range\nbased on source and destination IP, which breaks when communicating\nwith sites having multiple addresses that require all connections to\noriginate from the same IP address.\n\nIntroduce a IP_NAT_RANGE_PERSISTENT option that controls whether the\ndestination address is taken into account for selecting addresses.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d12954\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "86bcebafc5e7f5163ccf828792fe694b112ed6fa",
      "tree": "fa383567eae0553e73a834ad97f64e07d1b47dfe",
      "parents": [
        "1a31f2042e938f1b467aa3d807cc5666352bf8a3"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Tue Apr 14 02:08:53 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 14 02:08:53 2009 -0700"
      },
      "message": "tcp: fix \u003e2 iw selection\n\nA long-standing feature in tcp_init_metrics() is such that\nany of its goto reset prevents call to tcp_init_cwnd().\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "499923c7a3254971873e55a1690d07d3700eea47",
      "tree": "42c5c7281d9edd02e8130ee72306a5f5d8a2f367",
      "parents": [
        "48f6e8990858fc9a0ca7d3c9347e6774eb941dba"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Apr 09 17:37:33 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 11 01:53:06 2009 -0700"
      },
      "message": "ipv6: Fix NULL pointer dereference with time-wait sockets\n\nCommit b2f5e7cd3dee2ed721bf0675e1a1ddebb849aee6\n(ipv6: Fix conflict resolutions during ipv6 binding)\nintroduced a regression where time-wait sockets were\nnot treated correctly.  This resulted in the following:\n\nBUG: unable to handle kernel NULL pointer dereference at 0000000000000062\nIP: [\u003cffffffff805d7d61\u003e] ipv4_rcv_saddr_equal+0x61/0x70\n...\nCall Trace:\n[\u003cffffffffa033847b\u003e] ipv6_rcv_saddr_equal+0x1bb/0x250 [ipv6]\n[\u003cffffffffa03505a8\u003e] inet6_csk_bind_conflict+0x88/0xd0 [ipv6]\n[\u003cffffffff805bb18e\u003e] inet_csk_get_port+0x1ee/0x400\n[\u003cffffffffa0319b7f\u003e] inet6_bind+0x1cf/0x3a0 [ipv6]\n[\u003cffffffff8056d17c\u003e] ? sockfd_lookup_light+0x3c/0xd0\n[\u003cffffffff8056ed49\u003e] sys_bind+0x89/0x100\n[\u003cffffffff80613ea2\u003e] ? trace_hardirqs_on_thunk+0x3a/0x3c\n[\u003cffffffff8020bf9b\u003e] system_call_fastpath+0x16/0x1b\n\nTested-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nTested-by: Ed Tomlinson \u003cedt@aei.ca\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ef8a97bbc92ec07e3a07a81cc011dc549f8c7a23",
      "tree": "82a95f16d9236bc35a4cfd42ba8cab61981efda8",
      "parents": [
        "4f032ac4122a77dbabf7a24b2739b2790448180f",
        "6c8ad3b07f7d9efdc41396db6da0aed906922701"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 21:05:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 21:05:30 2009 -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: (54 commits)\n  glge: remove unused #include \u003cversion.h\u003e\n  dnet: remove unused #include \u003cversion.h\u003e\n  tcp: miscounts due to tcp_fragment pcount reset\n  tcp: add helper for counter tweaking due mid-wq change\n  hso: fix for the \u0027invalid frame length\u0027 messages\n  hso: fix for crash when unplugging the device\n  fsl_pq_mdio: Fix compile failure\n  fsl_pq_mdio: Revive UCC MDIO support\n  ucc_geth: Pass proper device to DMA routines, otherwise oops happens\n  i.MX31: Fixing cs89x0 network building to i.MX31ADS\n  tc35815: Fix build error if NAPI enabled\n  hso: add Vendor/Product ID\u0027s for new devices\n  ucc_geth: Remove unused header\n  gianfar: Remove unused header\n  kaweth: Fix locking to be SMP-safe\n  net: allow multiple dev per napi with GRO\n  r8169: reset IntrStatus after chip reset\n  ixgbe: Fix potential memory leak/driver panic issue while setting up Tx \u0026 Rx ring parameters\n  ixgbe: fix ethtool -A|a behavior\n  ixgbe: Patch to fix driver panic while freeing up tx \u0026 rx resources\n  ...\n"
    },
    {
      "commit": "9eb9362e569062e2f841b7a023e5fcde10ed63b4",
      "tree": "06dc2aa031ca9cd604ece8a9fd5c5bc8502b2257",
      "parents": [
        "797108d134a91afca9fa59c572336b279bc66afb"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Wed Apr 01 23:18:20 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 02 16:31:45 2009 -0700"
      },
      "message": "tcp: miscounts due to tcp_fragment pcount reset\n\nIt seems that trivial reset of pcount to one was not sufficient\nin tcp_retransmit_skb. Multiple counters experience a positive\nmiscount when skb\u0027s pcount gets lowered without the necessary\nadjustments (depending on skb\u0027s sacked bits which exactly), at\nworst a packets_out miscount can crash at RTO if the write queue\nis empty!\n\nTriggering this requires mss change, so bidir tcp or mtu probe or\nlike.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nReported-by: Markus Trippelsdorf \u003cmarkus@trippelsdorf.de\u003e\nTested-by: Uwe Bugla \u003cuwe.bugla@gmx.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "797108d134a91afca9fa59c572336b279bc66afb",
      "tree": "0355a88f43e16448e0126f51d7be66d953152fd5",
      "parents": [
        "0de8ca597d7b449e9e7ce7af138944acf06c8f05"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Wed Apr 01 23:15:17 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 02 16:31:44 2009 -0700"
      },
      "message": "tcp: add helper for counter tweaking due mid-wq change\n\nWe need full-scale adjustment to fix a TCP miscount in the next\npatch, so just move it into a helper and call for that from the\nother places.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fa9a86ddc8ecd2830a5e773facc250f110300ae7",
      "tree": "fb7120974ec38932aa909403c2598cbd01353b35",
      "parents": [
        "8cbd9606a6367c221a7bbcc47f3ab1a8c31b6437"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Apr 02 00:53:49 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 02 00:54:43 2009 -0700"
      },
      "message": "netfilter: use rcu_read_bh() in ipt_do_table()\n\nCommit 784544739a25c30637397ace5489eeb6e15d7d49\n(netfilter: iptables: lock free counters) forgot to disable BH\nin arpt_do_table(), ipt_do_table() and  ip6t_do_table()\n\nUse rcu_read_lock_bh() instead of rcu_read_lock() cures the problem.\n\nReported-and-bisected-by: Roman Mindalev \u003cr000n@r000n.net\u003e\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nAcked-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": "377f0a08e4cb56658d878d22c3aed4716e283c6b",
      "tree": "9b18ef210d92a04dc95bd694f680e52bbdf51223",
      "parents": [
        "eeb5f5c9b3c8bee5ab4794323c1d23d100a9db59"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "ramirose@gmail.com",
        "time": "Tue Mar 31 14:43:17 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 31 14:43:17 2009 -0700"
      },
      "message": "ipv4: remove unused parameter from tcp_recv_urg().\n\nSigned-off-by: Rami Rosen \u003cramirose@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7541bba880fb6989f489f0c68fa246a375b44035",
      "tree": "19ce55af8e8732aa61cb8db529cf2304d9d738b5",
      "parents": [
        "795e2fe0a3b69dbc040d7efcf517e0cbad6901d0",
        "4303154e86597885bc3cbc178a48ccbc8213875f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 28 17:30:42 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 28 17:30:42 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:\n  smack: Add a new \u0027-CIPSO\u0027 option to the network address label configuration\n  netlabel: Cleanup the Smack/NetLabel code to fix incoming TCP connections\n  lsm: Remove the socket_post_accept() hook\n  selinux: Remove the \"compat_net\" compatibility code\n  netlabel: Label incoming TCP connections correctly in SELinux\n  lsm: Relocate the IPv4 security_inet_conn_request() hooks\n  TOMOYO: Fix a typo.\n  smack: convert smack to standard linux lists\n"
    },
    {
      "commit": "389fb800ac8be2832efedd19978a2b8ced37eb61",
      "tree": "fa0bc16050dfb491aa05f76b54fa4c167de96376",
      "parents": [
        "284904aa79466a4736f4c775fdbe5c7407fa136c"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Fri Mar 27 17:10:34 2009 -0400"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Sat Mar 28 15:01:36 2009 +1100"
      },
      "message": "netlabel: Label incoming TCP connections correctly in SELinux\n\nThe current NetLabel/SELinux behavior for incoming TCP connections works but\nonly through a series of happy coincidences that rely on the limited nature of\nstandard CIPSO (only able to convey MLS attributes) and the write equality\nimposed by the SELinux MLS constraints.  The problem is that network sockets\ncreated as the result of an incoming TCP connection were not on-the-wire\nlabeled based on the security attributes of the parent socket but rather based\non the wire label of the remote peer.  The issue had to do with how IP options\nwere managed as part of the network stack and where the LSM hooks were in\nrelation to the code which set the IP options on these newly created child\nsockets.  While NetLabel/SELinux did correctly set the socket\u0027s on-the-wire\nlabel it was promptly cleared by the network stack and reset based on the IP\noptions of the remote peer.\n\nThis patch, in conjunction with a prior patch that adjusted the LSM hook\nlocations, works to set the correct on-the-wire label format for new incoming\nconnections through the security_inet_conn_request() hook.  Besides the\ncorrect behavior there are many advantages to this change, the most significant\nis that all of the NetLabel socket labeling code in SELinux now lives in hooks\nwhich can return error codes to the core stack which allows us to finally get\nride of the selinux_netlbl_inode_permission() logic which greatly simplfies\nthe NetLabel/SELinux glue code.  In the process of developing this patch I\nalso ran into a small handful of AF_INET6 cleanliness issues that have been\nfixed which should make the code safer and easier to extend in the future.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nAcked-by: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "284904aa79466a4736f4c775fdbe5c7407fa136c",
      "tree": "b2ab3842d58126ab7596f81c1f95c1678945ed26",
      "parents": [
        "bb798169d1bb860b07192cf9c75937fadc8610b4"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Fri Mar 27 17:10:28 2009 -0400"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Sat Mar 28 15:01:36 2009 +1100"
      },
      "message": "lsm: Relocate the IPv4 security_inet_conn_request() hooks\n\nThe current placement of the security_inet_conn_request() hooks do not allow\nindividual LSMs to override the IP options of the connection\u0027s request_sock.\nThis is a problem as both SELinux and Smack have the ability to use labeled\nnetworking protocols which make use of IP options to carry security attributes\nand the inability to set the IP options at the start of the TCP handshake is\nproblematic.\n\nThis patch moves the IPv4 security_inet_conn_request() hooks past the code\nwhere the request_sock\u0027s IP options are set/reset so that the LSM can safely\nmanipulate the IP options as needed.  This patch intentionally does not change\nthe related IPv6 hooks as IPv6 based labeling protocols which use IPv6 options\nare not currently implemented, once they are we will have a better idea of\nthe correct placement for the IPv6 hooks.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "82268da1b130f763d22d04f7d016bbf6fc8815c2",
      "tree": "9803f361556d10708313e980428e63a18162e667",
      "parents": [
        "6e15cf04860074ad032e88c306bea656bbdd0f22",
        "5d80f8e5a9dc9c9a94d4aeaa567e219a808b8a4a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 28 04:21:18 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 28 04:26:01 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into percpu-cpumask-x86-for-linus-2\n\nConflicts:\n\tarch/sparc/kernel/time_64.c\n\tdrivers/gpu/drm/drm_proc.c\n\nManual merge to resolve build warning due to phys_addr_t type change\non x86:\n\n\tdrivers/gpu/drm/drm_info.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6e15cf04860074ad032e88c306bea656bbdd0f22",
      "tree": "c346383bb7563e8d66b2f4a502f875b259c34870",
      "parents": [
        "be0ea69674ed95e1e98cb3687a241badc756d228",
        "60db56422043aaa455ac7f858ce23c273220f9d9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 21:39:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 27 17:28:43 2009 +0100"
      },
      "message": "Merge branch \u0027core/percpu\u0027 into percpu-cpumask-x86-for-linus-2\n\nConflicts:\n\tarch/parisc/kernel/irq.c\n\tarch/x86/include/asm/fixmap_64.h\n\tarch/x86/include/asm/setup.h\n\tkernel/irq/handle.c\n\nSemantic merge:\n        arch/x86/include/asm/fixmap.h\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "01e6de64d9c8d0e75dca3bb4cf898db73abe00d4",
      "tree": "925982e6241e5ac47f268bc2c2942ab0f06775cd",
      "parents": [
        "8f1ead2d1a626ed0c85b3d2c2046a49081d5933f",
        "d271e8bd8c60ce059ee36d836ba063cfc61c3e21"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 26 22:45:23 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 26 22:45:23 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6\n"
    },
    {
      "commit": "f0de70f8bb56952f6e016a65a8a8d006918f5bf6",
      "tree": "1d38f828b212adc0a0f2d100d58544979fab543d",
      "parents": [
        "bb3daa4a5960cd9d39bad88679fcf587b456c05d",
        "cda6d377ec6b2ee2e58d563d0bd7eb313e0165df"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 26 01:22:01 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 26 01:22:01 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "a400c30edb1958ceb53c4b8ce78989189b36df47",
      "tree": "827ee7b83e64597101a4bdbd6e1d0cd503fe8f87",
      "parents": [
        "5c0de29d06318ec8f6e3ba0d17d62529dbbdc1e8"
      ],
      "author": {
        "name": "Holger Eitzenberger",
        "email": "holger@eitzenberger.org",
        "time": "Wed Mar 25 21:53:39 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Mar 25 21:53:39 2009 +0100"
      },
      "message": "netfilter: nf_conntrack: calculate per-protocol nlattr size\n\nSigned-off-by: Holger Eitzenberger \u003cholger@eitzenberger.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "ea781f197d6a835cbb93a0bf88ee1696296ed8aa",
      "tree": "820fe7df1199d8bb6c793e664e480ea56ecf612e",
      "parents": [
        "1f9352ae2253a97b07b34dcf16ffa3b4ca12c558"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Mar 25 21:05:46 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Mar 25 21:05:46 2009 +0100"
      },
      "message": "netfilter: nf_conntrack: use SLAB_DESTROY_BY_RCU and get rid of call_rcu()\n\nUse \"hlist_nulls\" infrastructure we added in 2.6.29 for RCUification of UDP \u0026 TCP.\n\nThis permits an easy conversion from call_rcu() based hash lists to a\nSLAB_DESTROY_BY_RCU one.\n\nAvoiding call_rcu() delay at nf_conn freeing time has numerous gains.\n\nFirst, it doesnt fill RCU queues (up to 10000 elements per cpu).\nThis reduces OOM possibility, if queued elements are not taken into account\nThis reduces latency problems when RCU queue size hits hilimit and triggers\nemergency mode.\n\n- It allows fast reuse of just freed elements, permitting better use of\nCPU cache.\n\n- We delete rcu_head from \"struct nf_conn\", shrinking size of this structure\nby 8 or 16 bytes.\n\nThis patch only takes care of \"struct nf_conn\".\ncall_rcu() is still used for less critical conntrack parts, that may\nbe converted later if necessary.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "1f9352ae2253a97b07b34dcf16ffa3b4ca12c558",
      "tree": "e6d487c5d0dd82da34b53cc64bfd7c2d5e9f98f1",
      "parents": [
        "af9d32ad6718b9a80fa89f557cc1fbb63a93ec15"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Mar 25 19:26:35 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Mar 25 19:26:35 2009 +0100"
      },
      "message": "netfilter: {ip,ip6,arp}_tables: fix incorrect loop detection\n\nCommit e1b4b9f ([NETFILTER]: {ip,ip6,arp}_tables: fix exponential worst-case\nsearch for loops) introduced a regression in the loop detection algorithm,\ncausing sporadic incorrectly detected loops.\n\nWhen a chain has already been visited during the check, it is treated as\nhaving a standard target containing a RETURN verdict directly at the\nbeginning in order to not check it again. The real target of the first\nrule is then incorrectly treated as STANDARD target and checked not to\ncontain invalid verdicts.\n\nFix by making sure the rule does actually contain a standard target.\n\nBased on patch by Francis Dupont \u003cFrancis_Dupont@isc.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "b8dfe498775de912116f275680ddb57c8799d9ef",
      "tree": "0472ffb18e0354deedc37bcab8c7d9bb4a2941bb",
      "parents": [
        "78f3648601fdc7a8166748bbd6d0555a88efa24a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Mar 25 17:31:52 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Mar 25 17:31:52 2009 +0100"
      },
      "message": "netfilter: factorize ifname_compare()\n\nWe use same not trivial helper function in four places. We can factorize it.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "b2f5e7cd3dee2ed721bf0675e1a1ddebb849aee6",
      "tree": "a7b48c260a3cb0050ad6198c6a50b52b318dfcb8",
      "parents": [
        "63d9950b08184e6531adceb65f64b429909cc101"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Tue Mar 24 16:24:51 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 24 19:49:11 2009 -0700"
      },
      "message": "ipv6: Fix conflict resolutions during ipv6 binding\n\nThe ipv6 version of bind_conflict code calls ipv6_rcv_saddr_equal()\nwhich at times wrongly identified intersections between addresses.\nIt particularly broke down under a few instances and caused erroneous\nbind conflicts.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "35c7f6de7339f40a591a8aeccacdc429b1953674",
      "tree": "0359631a2a13cb41daa545eee36450996f1a0c6b",
      "parents": [
        "8dd1d0471bcf634f2cd6a6cf4b6531bb61f0af47"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Mar 24 14:15:22 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 24 14:15:22 2009 -0700"
      },
      "message": "arp_tables: ifname_compare() can assume 16bit alignment\n\nArches without efficient unaligned access can still perform a loop\nassuming 16bit alignment in ifname_compare()\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b5bb14386eabcb4229ade2bc0a2b237ca166d37d",
      "tree": "1966e65479f0d12cec0a204443a95b8eb57946db",
      "parents": [
        "bb4f92b3a33bfc31f55098da85be44702bea2d16",
        "1d45209d89e647e9f27e4afa1f47338df73bc112"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 24 13:24:36 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 24 13:24:36 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6\n"
    },
    {
      "commit": "30842f2989aacfaba3ccb39829b3417be9313dbe",
      "tree": "e165238f359d3790a2cf21373f856226e80c7977",
      "parents": [
        "e072b639dc13b06b65be487633dad9bb3d2067d5"
      ],
      "author": {
        "name": "Vitaly Mayatskikh",
        "email": "v.mayatskih@gmail.com",
        "time": "Mon Mar 23 15:22:33 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 23 15:22:33 2009 -0700"
      },
      "message": "udp: Wrong locking code in udp seq_file infrastructure\n\nReading zero bytes from /proc/net/udp or other similar files which use\nthe same seq_file udp infrastructure panics kernel in that way:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ BUG: bad unlock balance detected! ]\n-------------------------------------\nread/1985 is trying to release lock (\u0026table-\u003ehash[i].lock) at:\n[\u003cffffffff81321d83\u003e] udp_seq_stop+0x27/0x29\nbut there are no more locks to release!\n\nother info that might help us debug this:\n1 lock held by read/1985:\n #0:  (\u0026p-\u003elock){--..}, at: [\u003cffffffff810eefb6\u003e] seq_read+0x38/0x348\n\nstack backtrace:\nPid: 1985, comm: read Not tainted 2.6.29-rc8 #9\nCall Trace:\n [\u003cffffffff81321d83\u003e] ? udp_seq_stop+0x27/0x29\n [\u003cffffffff8106dab9\u003e] print_unlock_inbalance_bug+0xd6/0xe1\n [\u003cffffffff8106db62\u003e] lock_release_non_nested+0x9e/0x1c6\n [\u003cffffffff810ef030\u003e] ? seq_read+0xb2/0x348\n [\u003cffffffff8106bdba\u003e] ? mark_held_locks+0x68/0x86\n [\u003cffffffff81321d83\u003e] ? udp_seq_stop+0x27/0x29\n [\u003cffffffff8106dde7\u003e] lock_release+0x15d/0x189\n [\u003cffffffff8137163c\u003e] _spin_unlock_bh+0x1e/0x34\n [\u003cffffffff81321d83\u003e] udp_seq_stop+0x27/0x29\n [\u003cffffffff810ef239\u003e] seq_read+0x2bb/0x348\n [\u003cffffffff810eef7e\u003e] ? seq_read+0x0/0x348\n [\u003cffffffff8111aedd\u003e] proc_reg_read+0x90/0xaf\n [\u003cffffffff810d878f\u003e] vfs_read+0xa6/0x103\n [\u003cffffffff8106bfac\u003e] ? trace_hardirqs_on_caller+0x12f/0x153\n [\u003cffffffff810d88a2\u003e] sys_read+0x45/0x69\n [\u003cffffffff8101123a\u003e] system_call_fastpath+0x16/0x1b\nBUG: scheduling while atomic: read/1985/0xffffff00\nINFO: lockdep is turned off.\nModules linked in: cpufreq_ondemand acpi_cpufreq freq_table dm_multipath kvm ppdev snd_hda_codec_analog snd_hda_intel snd_hda_codec snd_hwdep snd_seq_dummy snd_seq_oss snd_seq_midi_event arc4 snd_s\neq ecb thinkpad_acpi snd_seq_device iwl3945 hwmon sdhci_pci snd_pcm_oss sdhci rfkill mmc_core snd_mixer_oss i2c_i801 mac80211 yenta_socket ricoh_mmc i2c_core iTCO_wdt snd_pcm iTCO_vendor_support rs\nrc_nonstatic snd_timer snd lib80211 cfg80211 soundcore snd_page_alloc video parport_pc output parport e1000e [last unloaded: scsi_wait_scan]\nPid: 1985, comm: read Not tainted 2.6.29-rc8 #9\nCall Trace:\n [\u003cffffffff8106b456\u003e] ? __debug_show_held_locks+0x1b/0x24\n [\u003cffffffff81043660\u003e] __schedule_bug+0x7e/0x83\n [\u003cffffffff8136ede9\u003e] schedule+0xce/0x838\n [\u003cffffffff810d7972\u003e] ? fsnotify_access+0x5f/0x67\n [\u003cffffffff810112d0\u003e] ? sysret_careful+0xb/0x37\n [\u003cffffffff8106be9c\u003e] ? trace_hardirqs_on_caller+0x1f/0x153\n [\u003cffffffff8137127b\u003e] ? trace_hardirqs_on_thunk+0x3a/0x3f\n [\u003cffffffff810112f6\u003e] sysret_careful+0x31/0x37\nread[1985]: segfault at 7fffc479bfe8 ip 0000003e7420a180 sp 00007fffc479bfa0 error 6\nKernel panic - not syncing: Aiee, killing interrupt handler!\n\nudp_seq_stop() tries to unlock not yet locked spinlock. The lock was lost\nduring splitting global udp_hash_lock to subsequent spinlocks.\n\nSigned-off by: Vitaly Mayatskikh \u003cv.mayatskih@gmail.com\u003e\nAcked-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "96e0bf4b5193d0d97d139f99e2dd128763d55521",
      "tree": "5e5a69c68072e605759a9cf9152caf0d0c6d1b7e",
      "parents": [
        "763dccdc8e9775b247c3ea86ae8f5f592c12024e"
      ],
      "author": {
        "name": "John Dykstra",
        "email": "john.dykstra1@gmail.com",
        "time": "Sun Mar 22 21:49:57 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 22 21:49:57 2009 -0700"
      },
      "message": "tcp: Discard segments that ack data not yet sent\n\nDiscard incoming packets whose ack field iincludes data not yet sent.\nThis is consistent with RFC 793 Section 3.9.\n\nChange tcp_ack() to distinguish between too-small and too-large ack\nfield values.  Keep segments with too-large ack fields out of the fast\npath, and change slow path to discard them.\n\nReported-by:  Oliver Zheng \u003cmailinglists+netdev@oliverzheng.com\u003e\nSigned-off-by: John Dykstra \u003cjohn.dykstra1@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a0bffffc148cd8e75a48a89ad2ddb74e4081a20a",
      "tree": "3a4d350d65d88bb1df8906b4822af2350ceb1cfc",
      "parents": [
        "a3ac80a130300573de351083cf4a5b46d233e8bf"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Mar 21 13:36:17 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 21 13:36:17 2009 -0700"
      },
      "message": "net/*: use linux/kernel.h swap()\n\ntcp_sack_swap seems unnecessary so I pushed swap to the caller.\nAlso removed comment that seemed then pointless, and added include\nwhen not already there. Compile tested.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2b1c4354de72ced917d2f3fe88117613f992234b",
      "tree": "3e7643cad45d94e3c331366418532043bd4fa5a9",
      "parents": [
        "5e140dfc1fe87eae27846f193086724806b33c7d",
        "170ebf85160dd128e1c4206cc197cce7d1424705"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 20 02:27:41 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 20 02:27:41 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/virtio_net.c\n"
    },
    {
      "commit": "2bad35b7c9588eb5e65c03bcae54e7eb6b1a6504",
      "tree": "1a0dff781b3d756470845b58cade9c9b074fadb4",
      "parents": [
        "e4a389a9b5c892446b5de2038bdc0cca8703c615"
      ],
      "author": {
        "name": "Jorge Boncompte [DTI2]",
        "email": "jorge@dti2.net",
        "time": "Wed Mar 18 23:26:11 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 18 23:26:11 2009 -0700"
      },
      "message": "netns: oops in ip[6]_frag_reasm incrementing stats\n\ndev can be NULL in ip[6]_frag_reasm for skb\u0027s coming from RAW sockets.\n\nQuagga\u0027s OSPFD sends fragmented packets on a RAW socket, when netfilter\nconntrack reassembles them on the OUTPUT path you hit this code path.\n\nYou can test it with something like \"hping2 -0 -d 2000 -f AA.BB.CC.DD\"\n\nWith help from Jarek Poplawski.\n\nSigned-off-by: Jorge Boncompte [DTI2] \u003cjorge@dti2.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "beedad923ad6237f03265fdf86eb8a1b50d14ae9",
      "tree": "14de83c72e68bcae559616f45da16dd990065cd0",
      "parents": [
        "9bdd8d40c8c59435664af6049dabe24b7779b203"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "ramirose@gmail.com",
        "time": "Wed Mar 18 18:50:09 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 18 18:50:09 2009 -0700"
      },
      "message": "tcp: remove parameter from tcp_recv_urg().\n\nThis patch removes an unused parameter (addr_len) from tcp_recv_urg()\nmethod in net/ipv4/tcp.c.\n\nSigned-off-by: Rami Rosen \u003cramirose@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95ba434f898c3cb5c7457dce265bf0ab72ba8ce9",
      "tree": "ec1edef53134c7c0eac587408e88bb062c041d69",
      "parents": [
        "26c3b6780618f09abb5f7e03b09b13dbb8e8aa24"
      ],
      "author": {
        "name": "Scott James Remnant",
        "email": "scott@canonical.com",
        "time": "Mon Mar 16 15:31:10 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Mar 16 15:31:10 2009 +0100"
      },
      "message": "netfilter: auto-load ip_queue module when socket opened\n\nThe ip_queue module is missing the net-pf-16-proto-3 alias that would\ncausae it to be auto-loaded when a socket of that type is opened.  This\npatch adds the alias.\n\nSigned-off-by: Scott James Remnant \u003cscott@canonical.com\u003e\nSigned-off-by: Tim Gardner \u003ctim.gardner@canonical.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "1db7a748dfd50d7615913730763c024444900030",
      "tree": "66a89288be39fc7b6575c2039006b48e16889c21",
      "parents": [
        "67c0d57930ff9a24c6c34abee1b01f7716a9b0e2"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Mar 16 15:18:50 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Mar 16 15:18:50 2009 +0100"
      },
      "message": "netfilter: conntrack: increase drop stats if sequence adjustment fails\n\nThis patch increases the statistics of packets drop if the sequence\nadjustment fails in ipv4_confirm().\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "67c0d57930ff9a24c6c34abee1b01f7716a9b0e2",
      "tree": "2e0e167e3547430a11b9584389c8676c750a0493",
      "parents": [
        "9d2493f88f846b391a15a736efc7f4b97d6c4046"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "sheminger@vyatta.com",
        "time": "Mon Mar 16 15:17:23 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Mar 16 15:17:23 2009 +0100"
      },
      "message": "netfilter: Kconfig spelling fixes (trivial)\n\nSigned-off-by: Stephen Hemminger \u003csheminger@vyatta.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "ca735b3aaa945626ba65a3e51145bfe4ecd9e222",
      "tree": "5fe88e398080a1287fefc10a8bbc54f7eb8c99ba",
      "parents": [
        "28337ff5438a640afa713d874d076e3a8a9150da"
      ],
      "author": {
        "name": "Eric Leblond",
        "email": "eric@inl.fr",
        "time": "Mon Mar 16 14:54:21 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Mar 16 14:54:21 2009 +0100"
      },
      "message": "netfilter: use a linked list of loggers\n\nThis patch modifies nf_log to use a linked list of loggers for each\nprotocol. This list of loggers is read and write protected with a\nmutex.\n\nThis patch separates registration and binding. To be used as\nlogging module, a module has to register calling nf_log_register()\nand to bind to a protocol it has to call nf_log_bind_pf().\nThis patch also converts the logging modules to the new API. For nfnetlink_log,\nit simply switchs call to register functions to call to bind function and\nadds a call to nf_log_register() during init. For other modules, it just\nremove a const flag from the logger structure and replace it with a\n__read_mostly.\n\nSigned-off-by: Eric Leblond \u003ceric@inl.fr\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "afece1c6587010cc81d1a43045c855774e8234a3",
      "tree": "00caa55dc0c2a86c44883154986885f0421d1251",
      "parents": [
        "2a3a041c4e2c1685e668b280c121a5a40a029a03"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Mar 14 14:23:07 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 15 20:09:55 2009 -0700"
      },
      "message": "tcp: make sure xmit goal size never becomes zero\n\nIt\u0027s not too likely to happen, would basically require crafted\npackets (must hit the max guard in tcp_bound_to_half_wnd()).\nIt seems that nothing that bad would happen as there\u0027s tcp_mems\nand congestion window that prevent runaway at some point from\nhurting all too much (I\u0027m not that sure what all those zero\nsized segments we would generate do though in write queue).\nPreventing it regardless is certainly the best way to go.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nCc: Evgeniy Polyakov \u003czbr@ioremap.net\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a3a041c4e2c1685e668b280c121a5a40a029a03",
      "tree": "dab327c0cbebec79968c3c2207d064a9152857f0",
      "parents": [
        "0c54b85f2828128274f319a1eb3ce7f604fe2a53"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Mar 14 22:45:16 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 15 20:09:55 2009 -0700"
      },
      "message": "tcp: cache result of earlier divides when mss-aligning things\n\nThe results is very unlikely change every so often so we\nhardly need to divide again after doing that once for a\nconnection. Yet, if divide still becomes necessary we\ndetect that and do the right thing and again settle for\nnon-divide state. Takes the u16 space which was previously\ntaken by the plain xmit_size_goal.\n\nThis should take care part of the tso vs non-tso difference\nwe found earlier.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0c54b85f2828128274f319a1eb3ce7f604fe2a53",
      "tree": "8ff84b9aa9cd4775f244c2421e11adfbd206a7bf",
      "parents": [
        "72211e90501f954f586481c25521c3724cda3cc7"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Mar 14 14:23:05 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 15 20:09:54 2009 -0700"
      },
      "message": "tcp: simplify tcp_current_mss\n\nThere\u0027s very little need for most of the callsites to get\ntp-\u003exmit_goal_size updated. That will cost us divide as is,\nso slice the function in two. Also, the only users of the\ntp-\u003exmit_goal_size are directly behind tcp_current_mss(),\nso there\u0027s no need to store that variable into tcp_sock\nat all! The drop of xmit_goal_size currently leaves 16-bit\nhole and some reorganization would again be necessary to\nchange that (but I\u0027m aiming to fill that hole with u16\nxmit_goal_size_segs to cache the results of the remaining\ndivide to get that tso on regression).\n\nBring xmit_goal_size parts into tcp.c\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nCc: Evgeniy Polyakov \u003czbr@ioremap.net\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72211e90501f954f586481c25521c3724cda3cc7",
      "tree": "c794106a2ea0ba62053247513ecd624a0160a54e",
      "parents": [
        "c887e6d2d9aee56ee7c9f2af4cec3a5efdcc4c72"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Mar 14 14:23:04 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 15 20:09:53 2009 -0700"
      },
      "message": "tcp: don\u0027t check mtu probe completion in the loop\n\nIt seems that no variables clash such that we couldn\u0027t do\nthe check just once later on. Therefore move it.\n\nAlso kill dead obvious comment, dead argument and add\nunlikely since this mtu probe does not happen too often.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c887e6d2d9aee56ee7c9f2af4cec3a5efdcc4c72",
      "tree": "ee267baadce309166ceea5649292f221cd9a6766",
      "parents": [
        "c43d558a5139a3b22dcac3f19f64ecb39130b02e"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Mar 14 14:23:03 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 15 20:09:52 2009 -0700"
      },
      "message": "tcp: consolidate paws check\n\nWow, it was quite tricky to merge that stream of negations\nbut I think I finally got it right:\n\ncheck \u0026 replace_ts_recent:\n(s32)(rcv_tsval - ts_recent) \u003e\u003d 0                  \u003d\u003e 0\n(s32)(ts_recent - rcv_tsval) \u003c\u003d 0                  \u003d\u003e 0\n\ndiscard:\n(s32)(ts_recent - rcv_tsval)  \u003e TCP_PAWS_WINDOW    \u003d\u003e 1\n(s32)(ts_recent - rcv_tsval) \u003c\u003d TCP_PAWS_WINDOW    \u003d\u003e 0\n\nI toggled the return values of tcp_paws_check around since\nthe old encoding added yet-another negation making tracking\nof truth-values really complicated.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c43d558a5139a3b22dcac3f19f64ecb39130b02e",
      "tree": "1a64361ad6bb033e7f039452855105c21707e59a",
      "parents": [
        "5861f8e58dd84fc34b691c2e8d4824dea68c360e"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Mar 14 14:23:02 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 15 20:09:51 2009 -0700"
      },
      "message": "tcp: kill dead end_seq variable in clean_rtx_queue\n\nI\u0027ve already forgotten what for this was necessary, anyway\nit\u0027s no longer used (if it ever was).\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5861f8e58dd84fc34b691c2e8d4824dea68c360e",
      "tree": "5c202f6866cca91ded45213cbb1a3d7f75fc6749",
      "parents": [
        "7cd0a63872ac6ef97265f07adc367ca4f984468e"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Mar 14 14:23:01 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 15 20:09:51 2009 -0700"
      },
      "message": "tcp: remove pointless .dsack/.num_sacks code\n\nIn the pure assignment case, the earlier zeroing is\nstill in effect.\n\nDavid S. Miller raised concerns if the ifs are there to avoid\ndirtying cachelines. I came to these conclusions:\n\n\u003e We\u0027ll be dirty it anyway (now that I check), the first \"real\" statement\n\u003e in tcp_rcv_established is:\n\u003e\n\u003e       tp-\u003erx_opt.saw_tstamp \u003d 0;\n\u003e\n\u003e ...that\u0027ll land on the same dword. :-/\n\u003e\n\u003e I suppose the blocks are there just because they had more complexity\n\u003e inside when they had to calculate the eff_sacks too (maybe it would\n\u003e have been better to just remove them in that drop-patch so you would\n\u003e have had less head-ache :-)).\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a2025b8b1039e5abaa38319b2eaab3b17867479a",
      "tree": "563c6542ad52663144a71485e4286483b5c3b23a",
      "parents": [
        "8db09f26f912f7c90c764806e804b558da520d4f"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Fri Mar 13 16:05:14 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 13 16:05:14 2009 -0700"
      },
      "message": "tcp: \u0027\u003c 0\u0027 test on unsigned\n\npromote \u0027cnt\u0027 to size_t, to match \u0027len\u0027.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "73ce7b01b4496a5fbf9caf63033c874be692333f",
      "tree": "0443c33aa40c45f6f1867dba2440369c225f5667",
      "parents": [
        "1f8ae0a21d83f43006d7f6d2862e921dbf2eeddd"
      ],
      "author": {
        "name": "Denys Fedoryshchenko",
        "email": "denys@visp.net.lb",
        "time": "Fri Mar 13 16:02:07 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 13 16:02:07 2009 -0700"
      },
      "message": "ipv4: arp announce, arp_proxy and windows ip conflict verification\n\nWindows (XP at least) hosts on boot, with configured static ip, performing \naddress conflict detection, which is defined in RFC3927.\nHere is quote of important information:\n\n\"\nAn ARP announcement is identical to the ARP Probe described above, \nexcept    that now the sender and target IP addresses are both set \nto the host\u0027s newly selected IPv4 address. \n\"\n\nBut it same time this goes wrong with RFC5227.\n\"\nThe \u0027sender IP address\u0027 field MUST be set to all zeroes; this is to avoid\npolluting ARP caches in other hosts on the same link in the case\nwhere the address turns out to be already in use by another host.\n\"\n\nWhen ARP proxy configured, it must not answer to both cases, because \nit is address conflict verification in any case. For Windows it is just \ncausing to detect false \"ip conflict\". Already there is code for RFC5227, so \njust trivially we just check also if source ip \u003d\u003d target ip.\n\nSigned-off-by: Denys Fedoryshchenko \u003cdenys@visp.net.lb\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ead2ceb0ec9f85cff19c43b5cdb2f8a054484431",
      "tree": "258874b824bf241698d943daa9298bb18955e451",
      "parents": [
        "4893d39e865b2897bf9fcd329697d37032d853a1"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed Mar 11 09:49:55 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 13 12:09:28 2009 -0700"
      },
      "message": "Network Drop Monitor: Adding kfree_skb_clean for non-drops and modifying end-of-line points for skbs\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\n\n include/linux/skbuff.h |    4 +++-\n net/core/datagram.c    |    2 +-\n net/core/skbuff.c      |   22 ++++++++++++++++++++++\n net/ipv4/arp.c         |    2 +-\n net/ipv4/udp.c         |    2 +-\n net/packet/af_packet.c |    2 +-\n 6 files changed, 29 insertions(+), 5 deletions(-)\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fc1ad92dfc4e363a055053746552cdb445ba5c57",
      "tree": "6f6f8ef6cd887530f5eb4d083cbaceaa8f0512c8",
      "parents": [
        "3e1a3ce2f19a8a74fe6771f6dcd642d61ae050dc"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Mar 11 09:23:57 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 11 09:23:57 2009 -0700"
      },
      "message": "tcp: allow timestamps even if SYN packet has tsval\u003d0\n\nSome systems send SYN packets with apparently wrong RFC1323 timestamp\noption values [timestamp tsval\u003d0 tsecr\u003d0].\nIt might be for security reasons (http://www.secuobs.com/plugs/25220.shtml )\n\nLinux TCP stack ignores this option and sends back a SYN+ACK packet\nwithout timestamp option, thus many TCP flows cannot use timestamps\nand lose some benefit of RFC1323.\n\nOther operating systems seem to not care about initial tsval value, and let\ntcp flows to negotiate timestamp option.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7546dd97d27306d939c13e03318aae695badaa88",
      "tree": "ced310466fd679ceae4e676ae8c31fd78b7bd72f",
      "parents": [
        "3f612132c7164d5cc9ed677a2fdf8950222d2170"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Mar 09 08:18:29 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 10 05:22:43 2009 -0700"
      },
      "message": "net: convert usage of packet_type to read_mostly\n\nProtocols that use packet_type can be __read_mostly section for better\nlocality. Elminate any unnecessary initializations of NULL.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91d75e209bd59695f0708d66964d928d45b3b2f3",
      "tree": "32cab1359d951e4193bebb181a0f0319824a2b95",
      "parents": [
        "9976b39b5031bbf76f715893cf080b6a17683881",
        "8b0e5860cb099d7958d13b00ffbc35ad02735700"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 04 02:29:19 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 04 02:29:19 2009 +0100"
      },
      "message": "Merge branch \u0027x86/core\u0027 into core/percpu\n"
    },
    {
      "commit": "2f20d2e667ab1ca44cde5fb361386dff5bb6081d",
      "tree": "5041eaca4e87d1203c631c6cb482d3b8fc7defb9",
      "parents": [
        "6eb0777228f31932fc941eafe8b08848466630a1"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Sun Feb 22 00:10:18 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 03 01:14:21 2009 -0800"
      },
      "message": "tcp: Like icmp use register_pernet_subsys\n\nTo remove the possibility of packets flying around when network\ndevices are being cleaned up use reisger_pernet_subsys instead of\nregister_pernet_device.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nAcked-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6eb0777228f31932fc941eafe8b08848466630a1",
      "tree": "41154f46d5a87add0e60cff21ebd2c88493813f0",
      "parents": [
        "176c39af29bc4edaf37f663553eeaacd47b5bc9c"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Sun Feb 22 00:09:14 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 03 01:14:15 2009 -0800"
      },
      "message": "netns: Fix icmp shutdown.\n\nRecently I had a kernel panic in icmp_send during a network namespace\ncleanup.  There were packets in the arp queue that failed to be sent\nand we attempted to generate an ICMP host unreachable message, but\nfailed because icmp_sk_exit had already been called.\n\nThe network devices are removed from a network namespace and their\narp queues are flushed before we do attempt to shutdown subsystems\nso this error should have been impossible.\n\nIt turns out icmp_init is using register_pernet_device instead\nof register_pernet_subsys.  Which resulted in icmp being shut down\nwhile we still had the possibility of packets in flight, making\na nasty NULL pointer deference in interrupt context possible.\n\nChanging this to register_pernet_subsys fixes the problem in\nmy testing.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nAcked-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee7537b63a28b42b22e48842dfeedc66d96b71f1",
      "tree": "70fe4bad071ee03afd4368a8487eb378abdfa3a5",
      "parents": [
        "c1accad323372ab788066974844fe4db3c43acb0"
      ],
      "author": {
        "name": "Hantzis Fotis",
        "email": "xantzis@ceid.upatras.gr",
        "time": "Mon Mar 02 22:42:02 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 22:42:02 2009 -0800"
      },
      "message": "tcp: tcp_init_wl / tcp_update_wl argument cleanup\n\nThe above functions from include/net/tcp.h have been defined with an\nargument that they never use. The argument is \u0027u32 ack\u0027 which is never\nused inside the function body, and thus it can be removed. The rest of\nthe patch involves the necessary changes to the function callers of the\nabove two functions.\n\nSigned-off-by: Hantzis Fotis \u003cxantzis@ceid.upatras.gr\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9ce01461028d595a6f1cd724fbd7a0dd70464fe4",
      "tree": "d1cf064853fb84001202a72bc1a03e7f0b69d595",
      "parents": [
        "0d6a775e27d975e5f9ea8e2911216d84face50ca"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:42 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:17 2009 -0800"
      },
      "message": "tcp: get rid of two unnecessary u16s in TCP skb flags copying\n\nI guess these fields were one day 16-bit in the struct but\nnowadays they\u0027re just using 8 bits anyway.\n\nThis is just a precaution, didn\u0027t result any change in my\ncase but who knows what all those varying gcc versions \u0026\noptions do. I\u0027ve been told that 16-bit is not so nice with\nsome cpus.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d6a775e27d975e5f9ea8e2911216d84face50ca",
      "tree": "a19fc1938325c517cab08ef7706115e784c72bb5",
      "parents": [
        "cabeccbd172cc305f4383f5a4808ae254745275f"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:41 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:16 2009 -0800"
      },
      "message": "tcp: in sendmsg/pages open code the real goto target\n\ncopied was assigned zero right before the goto, so if (copied)\ncannot ever be true.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cabeccbd172cc305f4383f5a4808ae254745275f",
      "tree": "0504d469ae4fc1a6c1ba368b3cc99ae7f55520cb",
      "parents": [
        "758ce5c8d11d6fc57fe5f1dbc237aa8ff6386eac"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:38 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:16 2009 -0800"
      },
      "message": "tcp: kill eff_sacks \"cache\", the sole user can calculate itself\n\nAlso fixes insignificant bug that would cause sending of stale\nSACK block (would occur in some corner cases).\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "758ce5c8d11d6fc57fe5f1dbc237aa8ff6386eac",
      "tree": "45b3dff5ca179712d50cdeae45846db8ffd51caa",
      "parents": [
        "571a5dd8d01f2a7e279c502fa220a69262d73694"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:37 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:15 2009 -0800"
      },
      "message": "tcp: add helper for AI algorithm\n\nIt seems that implementation in yeah was inconsistent to what\nother did as it would increase cwnd one ack earlier than the\nothers do.\n\nSize benefits:\n\n  bictcp_cong_avoid |  -36\n  tcp_cong_avoid_ai |  +52\n  bictcp_cong_avoid |  -34\n  tcp_scalable_cong_avoid |  -36\n  tcp_veno_cong_avoid |  -12\n  tcp_yeah_cong_avoid |  -38\n\n\u003d -104 bytes total\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "571a5dd8d01f2a7e279c502fa220a69262d73694",
      "tree": "1e4ab48f03f789c7afdd08acd81eaa77686274c8",
      "parents": [
        "e6c7d0857905f1d642cb8dbadae6794bfa1dff30"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:36 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:14 2009 -0800"
      },
      "message": "htcp: merge icsk_ca_state compare\n\nSimilar to what is done elsewhere in TCP code when double\nstate checks are being done.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e6c7d0857905f1d642cb8dbadae6794bfa1dff30",
      "tree": "7afb228de02ad9d105b2f1cc4054cbf7b04fa473",
      "parents": [
        "bc079e9ede5fb0225bd3e84891a6266f77142094"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:35 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:13 2009 -0800"
      },
      "message": "tcp: drop unnecessary local var in collapse\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc079e9ede5fb0225bd3e84891a6266f77142094",
      "tree": "a9f72c9b711ad06a011fb2b6ac1670578cfdae4f",
      "parents": [
        "7363a5b233734dba339f2874ff6ed6c489d3d865"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:13 2009 -0800"
      },
      "message": "tcp: cleanup ca_state mess in tcp_timer\n\nRedundant checks made indentation impossible to follow.\nHowever, it might be useful to make this ca_state+is_sack\nindexed array.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7363a5b233734dba339f2874ff6ed6c489d3d865",
      "tree": "e982156d409f29c82bcc7ec5e4e6160a11bc3685",
      "parents": [
        "d0af4160d19ff2849386140881e729f9ba86f2aa"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:33 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:12 2009 -0800"
      },
      "message": "tcp: separate timeout marking loop to it\u0027s own function\n\nSome comment about its current state added. So far I have\nseen very few cases where the thing is actually useful,\nusually just marginally (though admittedly I don\u0027t usually\nsee top of window losses where it seems possible that there\ncould be some gain), instead, more often the cases suffer\nfrom L-marking spike which is certainly not desirable\n(I\u0027ll bury improving it to my todo list, but on a low\nprio position).\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d0af4160d19ff2849386140881e729f9ba86f2aa",
      "tree": "d9582acc750f249839602316a129eddb59e21acb",
      "parents": [
        "02276f3c962fd408fa9d441251067845f948bfcf"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:32 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:11 2009 -0800"
      },
      "message": "tcp: remove redundant code from tcp_mark_lost_retrans\n\nArnd Hannemann \u003channemann@nets.rwth-aachen.de\u003e noticed and was\npuzzled by the fact that !tcp_is_fack(tp) leads to early return\nnear the beginning and the later on tcp_is_fack(tp) was still\nused in an if condition. The later check was a left-over from\nRFC3517 SACK stuff (\u003d\u003d !tcp_is_fack(tp) behavior nowadays) as\nthere wasn\u0027t clear way how to handle this particular check\ncheaply in the spirit of RFC3517 (using only SACK blocks, not\nholes + SACK blocks as with FACK). I sort of left it there as\na reminder but since it\u0027s confusing other people just remove\nit and comment the missing-feature stuff instead.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nCc: Arnd Hannemann \u003channemann@nets.rwth-aachen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "02276f3c962fd408fa9d441251067845f948bfcf",
      "tree": "040b778209f0694273a9d5d8337814b6a826c74e",
      "parents": [
        "d3d2ae454501a4dec360995649e1b002a2ad90c5"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:31 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:11 2009 -0800"
      },
      "message": "tcp: fix corner case issue in segmentation during rexmitting\n\nIf cur_mss grew very recently so that the previously G/TSOed skb\nnow fits well into a single segment it would get send up in\nparts unless we calculate # of segments again. This corner-case\ncould happen eg. after mtu probe completes or less than\npreviously sack blocks are required for the opposite direction.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d3d2ae454501a4dec360995649e1b002a2ad90c5",
      "tree": "7177d441defb9f3293ad83f71a57081a7c62962b",
      "parents": [
        "62ad27619cbcf23fb8581ae72f3806c1d90a861d"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:30 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:10 2009 -0800"
      },
      "message": "tcp: Don\u0027t clear hints when tcp_fragmenting\n\n1) We didn\u0027t remove any skbs, so no need to handle stale refs.\n\n2) scoreboard_skb_hint is trivial, no timestamps were changed\n   so no need to clear that one\n\n3) lost_skb_hint needs tweaking similar to that of\n   tcp_sacktag_one().\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "62ad27619cbcf23fb8581ae72f3806c1d90a861d",
      "tree": "2fa0b2f94534c333312aa2a657ef84c257993818",
      "parents": [
        "59a08cba6a604a265e45e9b970e372554cf46627"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:29 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:10 2009 -0800"
      },
      "message": "tcp: deferring in middle of queue makes very little sense\n\nIf skb can be sent right away, we certainly should do that\nif it\u0027s in the middle of the queue because it won\u0027t get\nmore data into it.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "59a08cba6a604a265e45e9b970e372554cf46627",
      "tree": "044bc6b23d3bd6a786dafb763363fa1da89afa65",
      "parents": [
        "ac11ba753f3aa839292c1a3b6c971c637ad2e839"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:09 2009 -0800"
      },
      "message": "tcp: fix lost_cnt_hint miscounts\n\nIt is possible that lost_cnt_hint gets underflow in\ntcp_clean_rtx_queue because the cumulative ACK can cover\nthe segment where lost_skb_hint points to only partially,\nwhich means that the hint is not cleared, opposite to what\nmy (earlier) comment claimed.\n\nAlso I don\u0027t agree what I ended up writing about non-trivial\ncase there to be what I intented to say. It was not supposed\nto happen that the hint won\u0027t get cleared and we underflow\nin any scenario.\n\nIn general, this is quite hard to trigger in practice.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ac11ba753f3aa839292c1a3b6c971c637ad2e839",
      "tree": "36bedcc6c6d6be721f2b9c5c0e5b8bf66ca112a5",
      "parents": [
        "79cb5def8dcad1a978841118bd14e155b3fd5589"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Feb 28 04:44:27 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 02 03:00:08 2009 -0800"
      },
      "message": "tcp: don\u0027t backtrack to sacked skbs\n\nBacktracking to sacked skbs is a horrible performance killer\nsince the hint cannot be advanced successfully past them...\n...And it\u0027s totally unnecessary too.\n\nIn theory this is 2.6.27..28 regression but I doubt anybody\ncan make .28 to have worse performance because of other TCP\nimprovements.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa4abc9bcce0d2a7ec189e897f8f8c58ca04643b",
      "tree": "22ef88d84a2e06380bb6a853c3ba28657e4e5f92",
      "parents": [
        "814c01dc7c533033b4e99981a2e24a6195bfb43c",
        "52c0326beaa3cb0049d0f1c51c6ad5d4a04e4430"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 21:35:16 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 21:35:16 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-tx.c\n\tnet/8021q/vlan_core.c\n\tnet/core/dev.c\n"
    },
    {
      "commit": "9ec06ff57a9badef3b6b019f35efc6b21fc27d03",
      "tree": "1a39f13a05a84aabbce39b8260283e36a9f84e61",
      "parents": [
        "709ab3261e3ed789c0bb31c6ab53c9eccb276522"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Mar 01 00:21:36 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 00:21:36 2009 -0800"
      },
      "message": "tcp: fix retrans_out leaks\n\nThere\u0027s conflicting assumptions in shifting, the caller assumes\nthat dupsack results in S\u0027ed skbs (or a part of it) for sure but\nnever gave a hint to tcp_sacktag_one when dsack is actually in\nuse. Thus DSACK retrans_out -\u003d pcount was not taken and the\ncounter became out of sync. Remove obstacle from that information\nflow to get DSACKs accounted in tcp_sacktag_one as expected.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nTested-by: Denys Fedoryshchenko \u003cdenys@visp.net.lb\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56bca31ff1989aa8b60f717e984b0e624f06324e",
      "tree": "574eb3761f17c037dbed7674420873f1f5a879ce",
      "parents": [
        "e57c624be8f99e56560fd2f4f485fe29f28dd74f"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "hannes@hanneseder.net",
        "time": "Wed Feb 25 10:32:52 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 26 23:13:35 2009 -0800"
      },
      "message": "inet fragments: fix sparse warning: context imbalance\n\nImpact: Attribute function with __releases(...)\n\nFix this sparse warning:\n  net/ipv4/inet_fragment.c:276:35: warning: context imbalance in \u0027inet_frag_find\u0027 - unexpected unlock\n\nSigned-off-by: Hannes Eder \u003channes@hanneseder.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0dcec8c27ba44cd11c6e68c46d5fd553818a3837",
      "tree": "30e5140fbb7f80b1492cb3579b5302a45d09c2f0",
      "parents": [
        "d325100504f1d0c296a1fbfef558deaa655e2240"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 14:07:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 14:09:41 2009 +0100"
      },
      "message": "alloc_percpu: add align argument to __alloc_percpu, fix\n\nImpact: build fix\n\nAPI was changed, but not all usage sites were converted:\n\n net/ipv4/route.c: In function ‘ip_rt_init’:\n net/ipv4/route.c:3379: error: too few arguments to function ‘__alloc_percpu’\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f11c179eea77b8afc2fb7cb4b9a8815b85e3c16f",
      "tree": "9edf1e86fbb91815f31d7728820d098041f03bb9",
      "parents": [
        "4545a3f2765bb7d2d93468a8ffa578ac87a2c5c7",
        "0c9a3aaaf30e1d1994de58c554ef97a719e20892"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 25 00:02:05 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 25 00:02:05 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/orinoco/orinoco.c\n"
    },
    {
      "commit": "26d94b46d09c97adb3c78c744c195e74ede699b2",
      "tree": "12cbfb8810d122defb0aa3b8f3ee87ef23cdb6e1",
      "parents": [
        "da6185d8743704bf7647c0aedaf8c7879d8f3cab"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Tue Feb 24 23:36:47 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 24 23:36:47 2009 -0800"
      },
      "message": "ipip: used time_before for comparing jiffies\n\nThe functions time_before is more robust for comparing\njiffies against other values.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da6185d8743704bf7647c0aedaf8c7879d8f3cab",
      "tree": "0d02bf7c2d308646fea12b2d5d617ada457e494c",
      "parents": [
        "800d55f146098c5ffd1914d7eef2fd4a6d558b1d"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Tue Feb 24 23:34:48 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 24 23:34:48 2009 -0800"
      },
      "message": "gre: used time_before for comparing jiffies\n\nThe functions time_before is more robust for comparing\njiffies against other values.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1ce85fe402137824246bad03ff85f3913d565c17",
      "tree": "3a54c150e9616709a8f65270cd1f4aeecac4d48e",
      "parents": [
        "4fb0a54a55d34c28dc53c39567ce171166572699"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Feb 24 23:18:28 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 24 23:18:28 2009 -0800"
      },
      "message": "netlink: change nlmsg_notify() return value logic\n\nThis patch changes the return value of nlmsg_notify() as follows:\n\nIf NETLINK_BROADCAST_ERROR is set by any of the listeners and\nan error in the delivery happened, return the broadcast error;\nelse if there are no listeners apart from the socket that\nrequested a change with the echo flag, return the result of the\nunicast notification. Thus, with this patch, the unicast\nnotification is handled in the same way of a broadcast listener\nthat has set the NETLINK_BROADCAST_ERROR socket flag.\n\nThis patch is useful in case that the caller of nlmsg_notify()\nwants to know the result of the delivery of a netlink notification\n(including the broadcast delivery) and take any action in case\nthat the delivery failed. For example, ctnetlink can drop packets\nif the event delivery failed to provide reliable logging and\nstate-synchronization at the cost of dropping packets.\n\nThis patch also modifies the rtnetlink code to ignore the return\nvalue of rtnl_notify() in all callers. The function rtnl_notify()\n(before this patch) returned the error of the unicast notification\nwhich makes rtnl_set_sk_err() reports errors to all listeners. This\nis not of any help since the origin of the change (the socket that\nrequested the echoing) notices the ENOBUFS error if the notification\nfails and should resync itself.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a52b8bd338630f78a6bfe39fe17cb8469d2679ae",
      "tree": "ae43d6ce4551be1b7c3295cde42920abdb9acfb1",
      "parents": [
        "8b6f92b1bd187b4f57296e5cf2e43ba883dd1968"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Feb 24 16:40:16 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 24 16:40:16 2009 -0800"
      },
      "message": "tcp_scalable: Update malformed \u0026 dead url\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0edcf8d6926f4038443dbc24e319530177ca0353",
      "tree": "6010af62f73d01ab673d5106f310eaf4f4228e32",
      "parents": [
        "87b203079ed949de52f0d92aeae20e5e0116c12f",
        "40150d37be7f7949b2ec07d511244da856647d84"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 24 21:52:45 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 24 21:52:45 2009 +0100"
      },
      "message": "Merge branch \u0027tj-percpu\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc into core/percpu\n\nConflicts:\n\tarch/x86/include/asm/pgtable.h\n"
    },
    {
      "commit": "e70049b9e74267dd47e1ffa62302073487afcb48",
      "tree": "2cd000c0751ef31c9044b020d63f278cdf4f332d",
      "parents": [
        "d18921a0e319ab512f8186b1b1142c7b8634c779",
        "f7e603ad8f78cd3b59e33fa72707da0cbabdf699"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 24 03:50:29 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 24 03:50:29 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n"
    },
    {
      "commit": "d18921a0e319ab512f8186b1b1142c7b8634c779",
      "tree": "4cd1393c094166f2baed5295254072b855781118",
      "parents": [
        "e18f5feb0c851a0e77e315b3d9ef1c432b1a50ec"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "jdb@comx.dk",
        "time": "Mon Feb 23 04:40:43 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 24 03:47:42 2009 -0800"
      },
      "message": "Doc: Refer to ip-sysctl.txt for strict vs. loose rp_filter mode\n\nThe IP_ADVANCED_ROUTER Kconfig describes the rp_filter\nproc option.  Recent changes added a loose mode.\nInstead of documenting this change too places, refer to\nthe document describing it:\n Documentation/networking/ip-sysctl.txt\n\nI\u0027m considering moving the rp_filter description away\nfrom the Kconfig file into ip-sysctl.txt.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d38e84ee39783e00bd0b83a8dd19e54709950912",
      "tree": "c98f6804c6fd7c32238602173a78b04210703042",
      "parents": [
        "20f4d6c3a2a23c5d7d9cc7f42fbb943ca7a03d1f",
        "486a87f1e5624096bd1c09e9e716239597d48dca"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 23 14:36:05 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 23 14:36:05 2009 -0800"
      },
      "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  netns: fix double free at netns creation\n  veth : add the set_mac_address capability\n  sunlance: Beyond ARRAY_SIZE of ib-\u003ebtx_ring\n  sungem: another error printed one too early\n  ISDN: fix sc/shmem printk format warning\n  SMSC: timeout reaches -1\n  smsc9420: handle magic field of ethtool_eeprom\n  sundance: missing parentheses?\n  smsc9420: fix another postfixed timeout\n  wimax/i2400m: driver loads firmware v1.4 instead of v1.3\n  vlan: Update skb-\u003emac_header in __vlan_put_tag().\n  cxgb3: Add support for PCI ID 0x35.\n  tcp: remove obsoleted comment about different passes\n  TG3: \u0026\u0026/|| confusion\n  ATM: misplaced parentheses?\n  net/mv643xx: don\u0027t disable the mib timer too early and lock properly\n  net/mv643xx: use GFP_ATOMIC while atomic\n  atl1c: Atheros L1C Gigabit Ethernet driver\n  net: Kill skb_truesize_check(), it only catches false-positives.\n  net: forcedeth: Fix wake-on-lan regression\n"
    },
    {
      "commit": "6a1b3054d9fd98001a6631501caf1969138ee00d",
      "tree": "5454ae55ea4936741868807dfc882c7d799dc77b",
      "parents": [
        "959d2726499175c6b724d87fed1dafca7582efe2"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Sun Feb 22 00:10:18 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 22 19:54:49 2009 -0800"
      },
      "message": "tcp: Like icmp use register_pernet_subsys\n\nTo remove the possibility of packets flying around when network\ndevices are being cleaned up use reisger_pernet_subsys instead of\nregister_pernet_device.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nAcked-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "959d2726499175c6b724d87fed1dafca7582efe2",
      "tree": "652620f82916d8f60bf5a58bae03624af1bb3f26",
      "parents": [
        "a6e8f27f3c02b0c0d0c45d14b2f4a8810c9a7dc7"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Sun Feb 22 00:09:14 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 22 19:54:48 2009 -0800"
      },
      "message": "netns: Fix icmp shutdown.\n\nRecently I had a kernel panic in icmp_send during a network namespace\ncleanup.  There were packets in the arp queue that failed to be sent\nand we attempted to generate an ICMP host unreachable message, but\nfailed because icmp_sk_exit had already been called.\n\nThe network devices are removed from a network namespace and their\narp queues are flushed before we do attempt to shutdown subsystems\nso this error should have been impossible.\n\nIt turns out icmp_init is using register_pernet_device instead\nof register_pernet_subsys.  Which resulted in icmp being shut down\nwhile we still had the possibility of packets in flight, making\na nasty NULL pointer deference in interrupt context possible.\n\nChanging this to register_pernet_subsys fixes the problem in\nmy testing.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nAcked-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a6e8f27f3c02b0c0d0c45d14b2f4a8810c9a7dc7",
      "tree": "6011b1087ac52c9f2361e6061d75a01439e96536",
      "parents": [
        "b2cc46a8ee905d1d642e01761939879c495e3e3a"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "hawk@comx.dk",
        "time": "Sun Feb 22 00:07:13 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 22 19:54:48 2009 -0800"
      },
      "message": "ipv4: Clean whitespaces in net/ipv4/Kconfig.\n\nWhile going through net/ipv4/Kconfig cleanup whitespaces.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2cc46a8ee905d1d642e01761939879c495e3e3a",
      "tree": "53de67ae5f324440b9a2c5ecc1c9722a5ae4c86a",
      "parents": [
        "0117cfabe3ba9b430c6ff6eecd4fdc569977f24f"
      ],
      "author": {
        "name": "Jesper Dangaard Brouer",
        "email": "hawk@comx.dk",
        "time": "Sun Feb 22 00:06:20 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 22 19:54:47 2009 -0800"
      },
      "message": "ipv4: Fix rp_filter description in net/ipv4/Kconfig.\n\nThe reverse path filter (rp_filter) will NOT get enabled\nwhen enabling forwarding.  Read the code and tested in\nin practice.\n\nMost distributions do enable it in startup scripts.\n\nSigned-off-by: Jesper Dangaard Brouer \u003chawk@comx.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5747a1aacde268017784a6a56df06c3b40194381",
      "tree": "50028d0d20bcb77725ca2ea5d0f3605e1295cffe",
      "parents": [
        "c1cf8422f0512c2b14f0d66bce34abb0645c888a"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Sun Feb 22 00:02:08 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 22 19:54:45 2009 -0800"
      },
      "message": "ip: ipip compile warning\n\nGet rid of compile warning about non-const format\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c1cf8422f0512c2b14f0d66bce34abb0645c888a",
      "tree": "b00499a8eb15d6613cfbce6d2770638b98cb2aae",
      "parents": [
        "6dac62d3888a34f5bccbe14222ba77e8877a2e54"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Feb 20 08:25:36 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 22 19:54:45 2009 -0800"
      },
      "message": "ip: add loose reverse path filtering\n\nExtend existing reverse path filter option to allow strict or loose\nfiltering. (See http://en.wikipedia.org/wiki/Reverse_path_filtering).\n\nFor compatibility with existing usage, the value 1 is chosen for strict mode\nand 2 for loose mode.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "586c25003707067f074043d80fb2071671c58db0",
      "tree": "7c5337c803ae01367f010c4e1eada49d6360be76",
      "parents": [
        "683fdc5fe5fec5c4f27eb58a8781f212f50c8e01"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Fri Feb 20 16:32:55 2009 -0500"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Feb 23 10:05:54 2009 +1100"
      },
      "message": "cipso: Fix documentation comment\n\nThe CIPSO protocol engine incorrectly stated that the FIPS-188 specification\ncould be found in the kernel\u0027s Documentation directory.  This patch corrects\nthat by removing the comment and directing users to the FIPS-188 documented\nhosted online.  For the sake of completeness I\u0027ve also included a link to the\nCIPSO draft specification on the NetLabel website.\n\nThanks to Randy Dunlap for spotting the error and letting me know.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "7691367d71fd77ab668ff3b6edb4340cecddc805",
      "tree": "1c3dbf52edfad6e4706a698b685b5e0fa1547b2e",
      "parents": [
        "7d3d5ec168f1f40e8547d2a1659670ef222a053b"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Feb 21 23:52:29 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 21 23:52:29 2009 -0800"
      },
      "message": "tcp: Always set urgent pointer if it\u0027s beyond snd_nxt\n\nOur TCP stack does not set the urgent flag if the urgent pointer\ndoes not fit in 16 bits, i.e., if it is more than 64K from the\nsequence number of a packet.\n\nThis behaviour is different from the BSDs, and clearly contradicts\nthe purpose of urgent mode, which is to send the notification\n(though not necessarily the associated data) as soon as possible.\nOur current behaviour may in fact delay the urgent notification\nindefinitely if the receiver window does not open up.\n\nSimply matching BSD however may break legacy applications which\nincorrectly rely on the out-of-band delivery of urgent data, and\nconversely the in-band delivery of non-urgent data.\n\nAlexey Kuznetsov suggested a safe solution of following BSD only\nif the urgent pointer itself has not yet been transmitted.  This\nway we guarantee that when the remote end sees the packet with\nnon-urgent data marked as urgent due to wrap-around we would have\nadvanced the urgent pointer beyond, either to the actual urgent\ndata or to an as-yet untransmitted packet.\n\nThe only potential downside is that applications on the remote\nend may see multiple SIGURG notifications.  However, this would\noccur anyway with other TCP stacks.  More importantly, the outcome\nof such a duplicate notification is likely to be harmless since\nthe signal itself does not carry any information other than the\nfact that we\u0027re in urgent mode.\n\nThanks to Ilpo Järvinen for fixing a critical bug in this and\nJeff Chua for reporting that bug.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nAcked-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "08361aa807ae5e5007cd226ca9e34287512de737",
      "tree": "2b0a51af98e4df407f7bce90ca8cd1a065691b1c",
      "parents": [
        "268cb38e1802db560c73167e643f14a3dcb4b07c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri Feb 20 11:03:33 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Feb 20 11:03:33 2009 +0100"
      },
      "message": "netfilter: ip_tables: unfold two critical loops in ip_packet_match()\n\nWhile doing oprofile tests I noticed two loops are not properly unrolled by gcc\n\nUsing a hand coded unrolled loop provides nice speedup : ipt_do_table\ncredited of 2.52 % of cpu instead of 3.29 % in tbench.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "784544739a25c30637397ace5489eeb6e15d7d49",
      "tree": "c48bbf30f3eb753858de9a03b74e81925cf39018",
      "parents": [
        "323dbf96382f057d035afce0237f08e18571ac1d"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Feb 20 10:35:32 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Feb 20 10:35:32 2009 +0100"
      },
      "message": "netfilter: iptables: lock free counters\n\nThe reader/writer lock in ip_tables is acquired in the critical path of\nprocessing packets and is one of the reasons just loading iptables can cause\na 20% performance loss. The rwlock serves two functions:\n\n1) it prevents changes to table state (xt_replace) while table is in use.\n   This is now handled by doing rcu on the xt_table. When table is\n   replaced, the new table(s) are put in and the old one table(s) are freed\n   after RCU period.\n\n2) it provides synchronization when accesing the counter values.\n   This is now handled by swapping in new table_info entries for each cpu\n   then summing the old values, and putting the result back onto one\n   cpu.  On a busy system it may cause sampling to occur at different\n   times on each cpu, but no packet/byte counts are lost in the process.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\n\nSucessfully tested on my dual quad core machine too, but iptables only (no ipv6 here)\nBTW, my new \"tbench 8\" result is 2450 MB/s, (it was 2150 MB/s not so long ago)\n\nAcked-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "313e458f81ec3852106c5a83830fe0d4f405a71a",
      "tree": "682cd5b6d7dc4e0e9eccdcc7915820dd33c87a34",
      "parents": [
        "b36128c830a8f5bd7d4981f5b0b69950f5928ee6"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Feb 20 16:29:08 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Feb 20 16:29:08 2009 +0900"
      },
      "message": "alloc_percpu: add align argument to __alloc_percpu.\n\nThis prepares for a real __alloc_percpu, by adding an alignment argument.\nOnly one place uses __alloc_percpu directly, and that\u0027s for a string.\n\ntj: af_inet also uses __alloc_percpu(), update it.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    }
  ],
  "next": "4323362e49bd10b8ff3fe5cf183fdd52662ff4a3"
}
