)]}'
{
  "log": [
    {
      "commit": "77a50df2b14c8d3ee3c58c21c4a0e0157570df09",
      "tree": "0e324a712e5e768c8353b0b5ba6ddc31095479f0",
      "parents": [
        "96fffeb4b413a4f8f65bb627d59b7dfc97ea0b39",
        "358c12953b88c5a06a57c33eb27c753b2e7934d1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 09:44:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 09:44:11 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  iwlwifi: Allow building iwl3945 without iwl4965.\n  wireless: Fix compile error with wifi \u0026 leds\n  tcp: Fix slab corruption with ipv6 and tcp6fuzz\n  ipv4/ipv6 compat: Fix SSM applications on 64bit kernels.\n  [IPSEC]: Use digest_null directly for auth\n  sunrpc: fix missing kernel-doc\n  can: Fix copy_from_user() results interpretation\n  Revert \"ipv6: Fix typo in net/ipv6/Kconfig\"\n  tipc: endianness annotations\n  ipv6: result of csum_fold() is already 16bit, no need to cast\n  [XFRM] AUDIT: Fix flowlabel text format ambibuity.\n"
    },
    {
      "commit": "9ae27e0adbf471c7a6b80102e38e1d5a346b3b38",
      "tree": "54ef2bb504625e003a35dae8ebbeb4b755f52419",
      "parents": [
        "dae50295488f35d2d617b08a5fae43154c947eec"
      ],
      "author": {
        "name": "Evgeniy Polyakov",
        "email": "johnpol@2ka.mipt.ru",
        "time": "Sun Apr 27 15:27:30 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 27 15:27:30 2008 -0700"
      },
      "message": "tcp: Fix slab corruption with ipv6 and tcp6fuzz\n\nFrom: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\n\nThis fixes a regression added by ec3c0982a2dd1e671bad8e9d26c28dcba0039d87\n(\"[TCP]: TCP_DEFER_ACCEPT updates - process as established\")\n\ntcp_v6_do_rcv()-\u003etcp_rcv_established(), the latter goes to step5, where\neventually skb can be freed via tcp_data_queue() (drop: label), then if\ncheck for tcp_defer_accept_check() returns true and thus\ntcp_rcv_established() returns -1, which forces tcp_v6_do_rcv() to jump\nto reset: label, which in turn will pass through discard: label and free\nthe same skb again.\n\nTested by Eric Sesterhenn.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-By: Patrick McManus \u003cmcmanus@ducksong.com\u003e\n"
    },
    {
      "commit": "dae50295488f35d2d617b08a5fae43154c947eec",
      "tree": "afee67a0e85f4a168e0bb75423f1b703f48baad3",
      "parents": [
        "01a2202c95989a4df48e9a5b5e013cb80c6b2d66"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Sun Apr 27 01:06:07 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 27 14:26:53 2008 -0700"
      },
      "message": "ipv4/ipv6 compat: Fix SSM applications on 64bit kernels.\n\nAdd support on 64-bit kernels for seting 32-bit compatible MCAST*\nsocket options.\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e561c7b7e705b619122e5386d6f99f28f2b6e5a",
      "tree": "be942c58cacd25c66cced37e1a82f269c37871de",
      "parents": [
        "2cfed60cc24676d65e01278dbf10d0069de02592",
        "653252c2302cdf2dfbca66a7e177f7db783f9efa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 25 12:28:28 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 25 12:28:28 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (48 commits)\n  net: Fix wrong interpretation of some copy_to_user() results.\n  xfrm: alg_key_len \u0026 alg_icv_len should be unsigned\n  [netdrvr] tehuti: move ioctl perm check closer to function start\n  ipv6: Fix typo in net/ipv6/Kconfig\n  via-velocity: fix vlan receipt\n  tg3: sparse cleanup\n  forcedeth: realtek phy crossover detection\n  ibm_newemac: Increase MDIO timeouts\n  gianfar: Fix skb allocation strategy\n  netxen: reduce stack usage of netxen_nic_flash_print\n  smc911x: test after postfix decrement fails in smc911x_{reset,drop_pkt}\n  net drivers: fix platform driver hotplug/coldplug\n  forcedeth: new backoff implementation\n  ehea: make things static\n  phylib: Add support for board-level PHY fixups\n  [netdrvr] atlx: code movement: move atl1 parameter parsing\n  atlx: remove flash vendor parameter\n  korina: misc cleanup\n  korina: fix misplaced return statement\n  WAN: Fix confusing insmod error code for C101 too.\n  ...\n"
    },
    {
      "commit": "8d390efd903485923419584275fd0c2aa4c94183",
      "tree": "b7ca93c9bb5d90ed31003106b9f8a73675f3ae3a",
      "parents": [
        "a5d6ab56daa439d681aab29955498486e452224d"
      ],
      "author": {
        "name": "Tom Quetchenbach",
        "email": "virtualphtn@gmail.com",
        "time": "Thu Apr 24 21:11:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 24 21:11:58 2008 -0700"
      },
      "message": "tcp: tcp_probe buffer overflow and incorrect return value\n\ntcp_probe has a bounds-checking bug that causes many programs (less,\npython) to crash reading /proc/net/tcp_probe. When it outputs a log\nline to the reader, it only checks if that line alone will fit in the\nreader\u0027s buffer, rather than that line and all the previous lines it\nhas already written.\n\ntcpprobe_read also returns the wrong value if copy_to_user fails--it\njust passes on the return value of copy_to_user (number of bytes not\ncopied), which makes a failure look like a success.\n\nThis patch fixes the buffer overflow and sets the return value to\n-EFAULT if copy_to_user fails.\n\nPatch is against latest net-2.6; tested briefly and seems to fix the\ncrashes in less and python.\n\nSigned-off-by: Tom Quetchenbach \u003cvirtualphtn@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d02aacff4467806ee56f147ac8eff6911d95811a",
      "tree": "3bc6197f735f18dd4c3cd7c77f2a45bb9b8fac16",
      "parents": [
        "e270b51df657011983241ec61a1fc7de186e16cd",
        "9edb74cc6ccb3a893c3d40727b7003c3c16f85a0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 24 08:40:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 24 08:40:34 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (22 commits)\n  tun: Multicast handling in tun_chr_ioctl() needs proper locking.\n  [NET]: Fix heavy stack usage in seq_file output routines.\n  [AF_UNIX] Initialise UNIX sockets before general device initcalls\n  [RTNETLINK]: Fix bogus ASSERT_RTNL warning\n  iwlwifi: Fix built-in compilation of iwlcore (part 2)\n  tun: Fix minor race in TUNSETLINK ioctl handling.\n  ppp_generic: use stats from net_device structure\n  iwlwifi: Don\u0027t unlock priv-\u003emutex if it isn\u0027t locked\n  wireless: rndis_wlan: modparam_workaround_interval is never below 0.\n  prism54: prism54_get_encode() test below 0 on unsigned index\n  mac80211: update mesh EID values\n  b43: Workaround DMA quirks\n  mac80211: fix use before check of Qdisc length\n  net/mac80211/rx.c: fix off-by-one\n  mac80211: Fix race between ieee80211_rx_bss_put and lookup routines.\n  ath5k: Fix radio identification on AR5424/2424\n  ssb: Fix all-ones boardflags\n  b43: Add more btcoexist workarounds\n  b43: Fix HostFlags data types\n  b43: Workaround invalid bluetooth settings\n  ...\n"
    },
    {
      "commit": "5e659e4cb0eedacdc1f621a61e400a4611ddef8a",
      "tree": "fa3c8743010dd640c48584a6fa8a910d27350c01",
      "parents": [
        "3d36696024499aef19dbf24a781e91a24fbbe4af"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Apr 24 01:02:16 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 24 01:02:16 2008 -0700"
      },
      "message": "[NET]: Fix heavy stack usage in seq_file output routines.\n\nPlan C: we can follow the Al Viro\u0027s proposal about %n like in this patch.\nThe same applies to udp, fib (the /proc/net/route file), rt_cache and \nsctp debug. This is minus ~150-200 bytes for each.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0d19a378a409373244088511e889957645f2a44",
      "tree": "25275409eeea845f2e7617f12c8f28801ee4198f",
      "parents": [
        "0093cb1199ec551f179562ca9fbd6f64fb750645",
        "d7d313000ba2fc94a5383511a17ff38a39bab928"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 23 12:23:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 23 12:23:45 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  iwlwifi: Fix built-in compilation of iwlcore\n  net: Unexport move_addr_to_{kernel,user}\n  rt2x00: Select LEDS_CLASS.\n  iwlwifi: Select LEDS_CLASS.\n  leds: Do not guard NEW_LEDS with HAS_IOMEM\n  [IPSEC]: Fix catch-22 with algorithm IDs above 31\n  time: Export set_normalized_timespec.\n  tcp: Make use of before macro in tcp_input.c\n  hamradio: Remove unneeded and deprecated cli()/sti() calls in dmascc.c\n  [NETNS]: Remove empty -\u003einit callback.\n  [DCCP]: Convert do_gettimeofday() to getnstimeofday().\n  [NETNS]: Don\u0027t initialize err variable twice.\n  [NETNS]: The ip6_fib_timer can work with garbage on net namespace stop.\n  [IPV4]: Convert do_gettimeofday() to getnstimeofday().\n  [IPV4]: Make icmp_sk_init() static.\n  [IPV6]: Make struct ip6_prohibit_entry_template static.\n  tcp: Trivial fix to correct function name in a comment in net/ipv4/tcp.c\n  [NET]: Expose netdevice dev_id through sysfs\n  skbuff: fix missing kernel-doc notation\n  [ROSE]: Fix soft lockup wrt. rose_node_list_lock\n"
    },
    {
      "commit": "529a41e36673b518c9e091f3a8d932b6b9e3c461",
      "tree": "12416411590cb5d2b7f365f3800e31306909d6ce",
      "parents": [
        "c3823c479e1f86a0adc7bb76fcfded67b042afc3",
        "43837b1e6c5aef803d57009a68db18df13e64892"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:46:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:46:17 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  rose: Socket lock was not released before returning to user space\n  hci_usb: remove code obfuscation\n  drivers/net/appletalk: use time_before, time_before_eq, etc\n  drivers/atm: use time_before, time_before_eq, etc\n  hci_usb: do not initialize static variables to 0\n  tg3: 5701 DMA corruption fix\n  atm nicstar: Removal of debug code containing deprecated calls to cli()/sti()\n  iwlwifi: Fix unconditional access to station-\u003etidp[].agg.\n  netfilter: Fix SIP conntrack build with NAT disabled.\n  netfilter: Fix SCTP nat build.\n"
    },
    {
      "commit": "d7ee147d4f84219a44670eb0db3a91e58d14a81c",
      "tree": "665f78c082a3ea2416be8fd76bd76d608bfe0a01",
      "parents": [
        "02651d20a3f90dab8920dad00dec8f62f2b6a7ea"
      ],
      "author": {
        "name": "Arnd Hannemann",
        "email": "hannemann@nets.rwth-aachen.de",
        "time": "Mon Apr 21 14:46:22 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 21 14:46:22 2008 -0700"
      },
      "message": "tcp: Make use of before macro in tcp_input.c\n\nMake use of tcp before macro.\n\nSigned-off-by: Arnd Hannemann \u003channemann@nets.rwth-aachen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f25c3d613b12b4b6219d03e9930cac5f59541468",
      "tree": "0438cd32c718aaefdb6e083eeb81f7f75e56256a",
      "parents": [
        "263173af5b4635c07dd862255e5b767cd429c640"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Apr 21 02:34:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 21 02:34:08 2008 -0700"
      },
      "message": "[IPV4]: Convert do_gettimeofday() to getnstimeofday().\n\nWhat do_gettimeofday() does is to call getnstimeofday() and\nto convert the result from timespec{} to timeval{}.\nAfter that, these callers convert the result again to msec.\nUse getnstimeofday() and convert the units at once.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "263173af5b4635c07dd862255e5b767cd429c640",
      "tree": "8c5ad0b5d315d02c99c0b7b096f6443e530612ae",
      "parents": [
        "280a34c87fe07cb15df19bd798b23740223350fb"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Apr 21 02:31:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 21 02:31:23 2008 -0700"
      },
      "message": "[IPV4]: Make icmp_sk_init() static.\n\nThis patch makes the needlessly global icmp_sk_init() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1f29b0584dcb695589407a11bb7533fe21fa47c4",
      "tree": "0eeed392ebde08d89f8d33692e51df98feda1faf",
      "parents": [
        "9d29672c64505f2d7f707701b829715705308a69"
      ],
      "author": {
        "name": "Satoru SATOH",
        "email": "satoru.satoh@gmail.com",
        "time": "Mon Apr 21 02:27:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 21 02:27:58 2008 -0700"
      },
      "message": "tcp: Trivial fix to correct function name in a comment in net/ipv4/tcp.c\n\nThis is a trivial fix to correct function name in a comment in\nnet/ipv4/tcp.c.\n\nSigned-off-by: Satoru SATOH \u003csatoru.satoh@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4e9d8a70e4a48e146a0eaaa5a666f0a4889d873d",
      "tree": "ed840a645ae653839b972690cd0d3f989f180398",
      "parents": [
        "3925e6fc1f774048404fdd910b0345b06c699eb4"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Apr 19 17:52:51 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 19 17:52:51 2008 -0700"
      },
      "message": "netfilter: Fix SCTP nat build.\n\nWe need to select LIBCRC32C.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5f090dcb4d4fff373ce7165bce4ba5e87534d50a",
      "tree": "7555518ce0687cc7de59aa271081cf648fc8a759",
      "parents": [
        "950e4da32426859ee4b37b2c95026d4f1efa5d05"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Fri Apr 18 22:15:50 2008 -0400"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Fri Apr 18 22:15:50 2008 -0400"
      },
      "message": "net: Remove unnecessary inclusions of asm/semaphore.h\n\nNone of these files use any of the functionality promised by\nasm/semaphore.h.  It\u0027s possible that they rely on it dragging in some\nunrelated header file, but I can\u0027t build all these files, so we\u0027ll have\nfix any build failures as they come up.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "1e42198609d73ed1a9adcba2af275c24c2678420",
      "tree": "32fd4d9073bfc0f3909af8f9fb4bcff38951d01a",
      "parents": [
        "794eb6bf20ebf992c040ea831cd3a9c64b0c1f7a",
        "4b119e21d0c66c22e8ca03df05d9de623d0eb50f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 17 23:56:30 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 17 23:56:30 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "53083773dcbd3c80477e2ace143e361e1e806745",
      "tree": "7a8b65350993c81d0360c072e096536c77098068",
      "parents": [
        "e56d8b8a2ee5fb7f63ceba58e1c0fb3c844888a4"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Apr 17 23:18:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 17 23:18:15 2008 -0700"
      },
      "message": "[INET]: Uninline the __inet_inherit_port call.\n\nThis deblats ~200 bytes when ipv6 and dccp are \u0027y\u0027.\n\nBesides, this will ease compilation issues for patches\nI\u0027m working on to make inet hash tables more scalable \nwrt net namespaces.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b4b8f57965e007afbbb0175ea28f733723c5260b",
      "tree": "7f4aeda48ada35771ea3e63bbbb36e52c47aeb62",
      "parents": [
        "424b00e2c0f0c38f2cf5331391742ec998f6d89f",
        "56f367bbfd5a7439961499ca6a2f0822d2074d83"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 16 07:44:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 16 07:44:27 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  [TCP]: Add return value indication to tcp_prune_ofo_queue().\n  PS3: gelic: fix the oops on the broken IE returned from the hypervisor\n  b43legacy: fix DMA mapping leakage\n  mac80211: remove message on receiving unexpected unencrypted frames\n  Update rt2x00 MAINTAINERS entry\n  Add rfkill to MAINTAINERS file\n  rfkill: Fix device type check when toggling states\n  b43legacy: Fix usage of struct device used for DMAing\n  ssb: Fix usage of struct device used for DMAing\n  MAINTAINERS: move to generic repository for iwlwifi\n  b43legacy: fix initvals loading on bcm4303\n  rtl8187: Add missing priv-\u003evif assignments\n  netconsole: only set CON_PRINTBUFFER if the user specifies a netconsole\n  [CAN]: Update documentation of struct sockaddr_can\n  MAINTAINERS: isdn4linux@listserv.isdn4linux.de is subscribers-only\n  [TCP]: Fix never pruned tcp out-of-order queue.\n  [NET_SCHED] sch_api: fix qdisc_tree_decrease_qlen() loop\n"
    },
    {
      "commit": "8c5da49a63c7675a3e137eb384b982e562622342",
      "tree": "b722d9b1849edfc6adec10850fa47e675a77d7bc",
      "parents": [
        "57d7a6009241fe04a699e5f65d55cf5cb7008fc7"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Apr 16 02:01:11 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 02:01:11 2008 -0700"
      },
      "message": "[NETNS]: Add netns refcnt debug for inet bind buckets.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "57d7a6009241fe04a699e5f65d55cf5cb7008fc7",
      "tree": "af0d7728dafa87ce11635139e4667f2e18ea8a74",
      "parents": [
        "cd5342d9055545624187a2d47e68bdabc1ca9963"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Apr 16 02:00:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 02:00:50 2008 -0700"
      },
      "message": "[NETNS]: Add netns refcnt debug into fib_info.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cd5342d9055545624187a2d47e68bdabc1ca9963",
      "tree": "57554b1aae7821ff6492ea83ca434741225848d0",
      "parents": [
        "65a18ec58e5e6186103f62f720acea94dfb26f4e"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Apr 16 02:00:28 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 02:00:28 2008 -0700"
      },
      "message": "[NETNS]: Add netns refcnt debug for timewait buckets.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0970c428b33ee6e0aa576f58f87dde74262a441",
      "tree": "d491af23c3aead55224aa0e2c3536a4f62508bae",
      "parents": [
        "7a97146cc6e8145f65abfee36e56de7b8061c34f"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:17:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:17:39 2008 -0700"
      },
      "message": "[SIT]: Allow for IPPROTO_IPV6 protocol in namespaces.\n\nThis makes sit-generated traffic enter the namespace.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f96c148fd53a2a0dbb2d768895c7cf6951e35cc5",
      "tree": "248cd94d99ef73431bc654d5094a775bd0432da2",
      "parents": [
        "0b67eceb198b77045950011e12bf176a7c11ad98"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:11:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:11:36 2008 -0700"
      },
      "message": "[GRE]: Allow for IPPROTO_GRE protocol in namespaces.\n\nThis one was also disabled by default for sanity.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0b67eceb198b77045950011e12bf176a7c11ad98",
      "tree": "6712704b88a6ea5b1a684f2ffcf47667c034b17b",
      "parents": [
        "96635522f7930025b8a56a7075db82c48a454a30"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:11:13 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:11:13 2008 -0700"
      },
      "message": "[GRE]: Allow to create IPGRE tunnels in net namespaces.\n\nI.e. set the proper net and mark as NETNS_LOCAL.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "96635522f7930025b8a56a7075db82c48a454a30",
      "tree": "17b8d7e0d79b94d2dc1cc25e1b8e51b5598f02b1",
      "parents": [
        "eb8ce741a3c4d4ba5f345ff19689c7d2e4555668"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:10:44 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:10:44 2008 -0700"
      },
      "message": "[GRE]: Use proper net in routing calls.\n\nAs for the IPIP tunnel, there are some ip_route_output_key()\ncalls in there that require a proper net so give one to them.\n\nAnd a proper net for the __get_dev_by_index hanging around.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb8ce741a3c4d4ba5f345ff19689c7d2e4555668",
      "tree": "e66ef0b4f3e5f13be195e4bdce2ac72d7d10dead",
      "parents": [
        "7daa0004895f0421bff41a3ac0464f2ff4d9cd41"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:10:26 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:10:26 2008 -0700"
      },
      "message": "[GRE]: Make tunnels hashes per-net.\n\nVery similar to what was done for the IPIP code.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7daa0004895f0421bff41a3ac0464f2ff4d9cd41",
      "tree": "59a6666156fe5236604df59ec1e749adb5eec177",
      "parents": [
        "3b4667f3db4d7d0b6d8f35c2ca80333ea141629a"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:10:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:10:05 2008 -0700"
      },
      "message": "[GRE]: Make the fallback tunnel device per-net.\n\nEverything is prepared for this change now. Create on in\ninit callback, use it over the code and destroy on net exit.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b4667f3db4d7d0b6d8f35c2ca80333ea141629a",
      "tree": "2224c61f148a25721753af6c526150668f040d5d",
      "parents": [
        "f57e7d5a7bd2a600a8a97e278e4c46904ceacf51"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:09:44 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:09:44 2008 -0700"
      },
      "message": "[GRE]: Use proper net in hash-lookup functions.\n\nThis is the part#2 of the patch #2 - get the proper net for\nthese functions. This change in a separate patch in order not\nto get lost in a large previous patch.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f57e7d5a7bd2a600a8a97e278e4c46904ceacf51",
      "tree": "dd446e0d47810e38ac0f28918f04eaddf6fd5a46",
      "parents": [
        "59a4c7594bcecef27f072a599e9fb3b18754fc60"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:09:22 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:09:22 2008 -0700"
      },
      "message": "[GRE]: Add net/gre_net argument to some functions.\n\nThe fallback device and hashes are to become per-net, but many\ncode doesn\u0027t have anything to get the struct net pointer from.\n\nSo pass the proper net there with an extra argument.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "59a4c7594bcecef27f072a599e9fb3b18754fc60",
      "tree": "b3098e132ce5373261b8f8ca1a5bb948c07eeaad",
      "parents": [
        "4597a0ce0849eaa62fc9083c21943e0c434e4135"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:08:53 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:08:53 2008 -0700"
      },
      "message": "[GRE]: Introduce empty ipgre_net structure and net init/exit ops.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4597a0ce0849eaa62fc9083c21943e0c434e4135",
      "tree": "2562912e41e53a95c6fb55deaa6c0b6571591a82",
      "parents": [
        "0a826406d4adf0c4b7cd47f116cb8e8ef65b92a3"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:06:56 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:06:56 2008 -0700"
      },
      "message": "[IPIP]: Allow for IPPROTO_IPIP protocol in namespaces.\n\nThis one was disabled by default for sanity.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a826406d4adf0c4b7cd47f116cb8e8ef65b92a3",
      "tree": "9da0f22c3dfc2d5b6bd672f5e14d816decba2540",
      "parents": [
        "b99f0152e5f96dde31d2b9060b4f1029abc11078"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:06:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:06:18 2008 -0700"
      },
      "message": "[IPIP]: Allow to create IPIP tunnels in net namespaces.\n\nSet the proper net before calling register_netdev and disable \nthe tunnel device netns changing.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b99f0152e5f96dde31d2b9060b4f1029abc11078",
      "tree": "6e71dcc55e5b36a7819f7521c0fa930b04143aac",
      "parents": [
        "44d3c299dcfee094f10e0c686ad6588fd36d4f8f"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:05:57 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:05:57 2008 -0700"
      },
      "message": "[IPIP]: Use proper net in (mostly) routing calls.\n\nThere are some ip_route_output_key() calls in there that require\na proper net so give one to them.\n\nBesides - give a proper net to a single __get_dev_by_index call \nin ipip_tunnel_bind_dev().\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "44d3c299dcfee094f10e0c686ad6588fd36d4f8f",
      "tree": "437aa81b715eee3805ca016df77923c3cb770892",
      "parents": [
        "cec3ffae1a019f02cd6b5fa291f279c8e9f86157"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:05:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:05:32 2008 -0700"
      },
      "message": "[IPIP]: Make tunnels hashes per net.\n\nEither net or ipip_net already exists in all the required \nplaces, so just use one.\n\nBesides, tune net_init and net_exit calls to respectively \ninitialize the hashes and destroy devices.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cec3ffae1a019f02cd6b5fa291f279c8e9f86157",
      "tree": "12711c9b887afaccf8dd5e48c80cc0da716211b0",
      "parents": [
        "b9fae5c9138086d27715a8a0f29d5b55239db35c"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:05:03 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:05:03 2008 -0700"
      },
      "message": "[IPIP]: Use proper net in hash-lookup functions.\n\nThis is the part#2 of the previous patch - get the proper\nnet for these functions.\n\nI make it in a separate patch, so that this change does not\nget lost in a large previous patch.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9fae5c9138086d27715a8a0f29d5b55239db35c",
      "tree": "d0641404b3abe00d626ddb6b96589e83055cff58",
      "parents": [
        "b9855c54dadc0768dcc3804df1972488783d2267"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:04:35 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:04:35 2008 -0700"
      },
      "message": "[IPIP]: Add net/ipip_net argument to some functions.\n\nThe hashes of tunnels will be per-net too, so prepare all the \nfunctions that uses them for this change by adding an argument.\n\nUse init_net temporarily in places, where the net does not exist\nexplicitly yet.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9855c54dadc0768dcc3804df1972488783d2267",
      "tree": "37ef8c0d01725440d5b87205b538a555e7eff7d2",
      "parents": [
        "10dc4c7bb70533d16184aaaa69e137a7d2b9a3a8"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:04:13 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:04:13 2008 -0700"
      },
      "message": "[IPIP]: Make the fallback tunnel device per-net.\n\nCreate on in ipip_init_net(), use it all over the code (the\nproper place to get the net from already exists) and destroy\nin ipip_net_exit().\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "10dc4c7bb70533d16184aaaa69e137a7d2b9a3a8",
      "tree": "6fb4348ea85911deb3e8d1154b8ab3cb14d42a0a",
      "parents": [
        "30688a9a3e06d83d187658bd1c15f0e306bed38b"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 16 01:03:13 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 16 01:03:13 2008 -0700"
      },
      "message": "[IPIP]: Introduce empty ipip_net structure and net init/exit ops.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "17515408a15fa51c553e67c415502e785145cd7f",
      "tree": "0aebcd0c357271b3b06a71d22796d5d323cbe230",
      "parents": [
        "b131dd5d659aaf287a3809473130c3ff5eddb71b"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Tue Apr 15 20:36:55 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 15 20:36:55 2008 -0700"
      },
      "message": "[TCP]: Remove superflushious skb \u003d\u003d write_queue_tail() check\n\nNeeded can only be more strict than what was checked by the\nearlier common case check for non-tail skbs, thus\ncwnd_len \u003c\u003d needed will never match in that case anyway.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56f367bbfd5a7439961499ca6a2f0822d2074d83",
      "tree": "cdd34f6fed1fcbaa80f2fb2bf17df4fe03a316db",
      "parents": [
        "c4cbb34bbdaaa841ef7c027f7b420db4c318c4fd"
      ],
      "author": {
        "name": "Vitaliy Gusev",
        "email": "vgusev@openvz.org",
        "time": "Tue Apr 15 20:26:34 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 15 20:26:34 2008 -0700"
      },
      "message": "[TCP]: Add return value indication to tcp_prune_ofo_queue().\n\nReturns non-zero if tp-\u003eout_of_order_queue was seen non-empty.\nThis allows tcp_try_rmem_schedule() to return early.\n\nSigned-off-by: Vitaliy Gusev \u003cvgusev@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b000cd3707e7b25d76745f9c0e261c23d21fa578",
      "tree": "d86dfd47954404e581f7f9d730ae3d3ce2532ad1",
      "parents": [
        "066a3b5b2346febf9a655b444567b7138e3bb939"
      ],
      "author": {
        "name": "Vitaliy Gusev",
        "email": "vgusev@openvz.org",
        "time": "Tue Apr 15 00:33:38 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 15 00:33:38 2008 -0700"
      },
      "message": "[TCP]: Fix never pruned tcp out-of-order queue.\n\ntcp_prune_queue() doesn\u0027t prune an out-of-order queue at all.\nTherefore sk_rmem_schedule() can fail but the out-of-order queue isn\u0027t\npruned . This can lead to tcp deadlock state if the next two\nconditions are held:\n\n1. There are a sequence hole between last received in\n   order segment and segments enqueued to the out-of-order queue.\n\n2. Size of all segments in the out-of-order queue is more than tcp_mem[2].\n\nSigned-off-by: Vitaliy Gusev \u003cvgusev@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "533bb8a4d7388686243c37a414c4448ba3566f8a",
      "tree": "506ef946871e4499862ecc8513f49b69389ae865",
      "parents": [
        "4f3f8e94b7b079131f0faf641e8afd790a6537d1",
        "159d83363b629c91d020734207c1bc788b96af5a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 14 07:56:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 14 07:56:24 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (31 commits)\n  [BRIDGE]: Fix crash in __ip_route_output_key with bridge netfilter\n  [NETFILTER]: ipt_CLUSTERIP: fix race between clusterip_config_find_get and _entry_put\n  [IPV6] ADDRCONF: Don\u0027t generate temporary address for ip6-ip6 interface.\n  [IPV6] ADDRCONF: Ensure disabling multicast RS even if privacy extensions are disabled.\n  [IPV6]: Use appropriate sock tclass setting for routing lookup.\n  [IPV6]: IPv6 extension header structures need to be packed.\n  [IPV6]: Fix ipv6 address fetching in raw6_icmp_error().\n  [NET]: Return more appropriate error from eth_validate_addr().\n  [ISDN]: Do not validate ISDN net device address prior to interface-up\n  [NET]: Fix kernel-doc for skb_segment\n  [SOCK] sk_stamp: should be initialized to ktime_set(-1L, 0)\n  net: check for underlength tap writes\n  net: make struct tun_struct private to tun.c\n  [SCTP]: IPv4 vs IPv6 addresses mess in sctp_inet[6]addr_event.\n  [SCTP]: Fix compiler warning about const qualifiers\n  [SCTP]: Fix protocol violation when receiving an error lenght INIT-ACK\n  [SCTP]: Add check for hmac_algo parameter in sctp_verify_param()\n  [NET_SCHED] cls_u32: refcounting fix for u32_delete()\n  [DCCP]: Fix skb-\u003ecb conflicts with IP\n  [AX25]: Potential ax25_uid_assoc-s leaks on module unload.\n  ...\n"
    },
    {
      "commit": "569508c964a8b5235e00998523bc3acd3f6aff01",
      "tree": "bae516f4df35e08cc515e49d36e6a8c14b8441da",
      "parents": [
        "a7d632b6b4ad1c92746ed409e41f9dc571ec04e2"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Apr 14 04:09:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 04:09:36 2008 -0700"
      },
      "message": "[TCP]: Format addresses appropriately in debug messages.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a7d632b6b4ad1c92746ed409e41f9dc571ec04e2",
      "tree": "90e6aa51a9df50aa4a437749e89356ab15a0ff5f",
      "parents": [
        "334f8b2afd9652e20f67ddee4fec483ed860425b"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon Apr 14 04:09:00 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 04:09:00 2008 -0700"
      },
      "message": "[IPV4]: Use NIPQUAD_FMT to format ipv4 addresses.\n\nAnd use %u to format port.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "334f8b2afd9652e20f67ddee4fec483ed860425b",
      "tree": "35d4fb46a9dc145e831fe5da026f2bfd9ee6657c",
      "parents": [
        "7477fd2e6b676fcd15861c2a96a7172f71afe0a5",
        "ef1a5a50bbd509b8697dcd4d13017e9e0053867b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 03:50:43 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 03:50:43 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6.26\n"
    },
    {
      "commit": "7477fd2e6b676fcd15861c2a96a7172f71afe0a5",
      "tree": "82801f361c0e196a8b67481a5fd9435a206ba76f",
      "parents": [
        "13f51d82acb003918d71ce4639ae77fceaa58cad"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Apr 14 02:42:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 02:42:27 2008 -0700"
      },
      "message": "[SOCK]: Add some notes about per-bind-bucket sock lookup.\n\nI was asked about \"why don\u0027t we perform a sk_net filtering in\nbind_conflict calls, like we do in other sock lookup places\"\nfor a couple of times.\n\nCan we please add a comment about why we do not need one?\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "df39e8ba56a788733d369068c7319e04b1da3cd5",
      "tree": "1e9be853bdb455e341cdbf957656f342cfa2eb9e",
      "parents": [
        "f5572855ec492334d8c3ec0e0e86c31865d5cf07",
        "159d83363b629c91d020734207c1bc788b96af5a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 02:30:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 02:30:23 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/ehea/ehea_main.c\n\tdrivers/net/wireless/iwlwifi/Kconfig\n\tdrivers/net/wireless/rt2x00/rt61pci.c\n\tnet/ipv4/inet_timewait_sock.c\n\tnet/ipv6/raw.c\n\tnet/mac80211/ieee80211_sta.c\n"
    },
    {
      "commit": "3c9fba656a185cf56872a325e5594d9b4d4168ec",
      "tree": "5750fdd533d36d28acb18c51a716ea8eb278e99f",
      "parents": [
        "12c33aa20e1e248ac199d58076fcd4522acbff17"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:54 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:54 2008 +0200"
      },
      "message": "[NETFILTER]: nf_conntrack: replace NF_CT_DUMP_TUPLE macro indrection by function call\n\nDirectly call IPv4 and IPv6 variants where the address family is\neasily known.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "12c33aa20e1e248ac199d58076fcd4522acbff17",
      "tree": "e6a32b31859a6ad161eb7387907616f0c32463c6",
      "parents": [
        "f2ea825f483d5d78754ae813b6db63f8b74e9343"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:54 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:54 2008 +0200"
      },
      "message": "[NETFILTER]: nf_conntrack: const annotations in nf_conntrack_sctp, nf_nat_proto_gre\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "f2ea825f483d5d78754ae813b6db63f8b74e9343",
      "tree": "9a71a03a99443078a14aad195fb6c15cbb3920c8",
      "parents": [
        "5f2b4c9006fc667c4614f0b079efab3721f68316"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:53 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:53 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: use bool type in nf_nat_proto\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "09f263cd39751cada63dec2dccc71e67c00bc38c",
      "tree": "99ec45362e3545b42757803bb43d926d39f3922a",
      "parents": [
        "8ce8439a31f723f3aa28adf27fe8797a5678dde1"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:53 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:53 2008 +0200"
      },
      "message": "[NETFILTER]: nf_conntrack: use bool type in struct nf_conntrack_l4proto\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "8ce8439a31f723f3aa28adf27fe8797a5678dde1",
      "tree": "f34b193c50f15878e8aa7f3bd5054f1f04958dbe",
      "parents": [
        "9dbae7917899d78a094aceeb5062cd76efa89052"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:52 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:52 2008 +0200"
      },
      "message": "[NETFILTER]: nf_conntrack: use bool type in struct nf_conntrack_l3proto\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "5e8fbe2ac8a3f1e34e7004c5750ef59bf9304f82",
      "tree": "7a42f4fa1825e215e3ca3f2d3b2f66a865294ce0",
      "parents": [
        "5f7da4d26d421f3bdf10c3bbdb86ffc3a12a84f2"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:52 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:52 2008 +0200"
      },
      "message": "[NETFILTER]: nf_conntrack: add tuplehash l3num/protonum accessors\n\nAdd accessors for l3num and protonum and get rid of some overly long\nexpressions.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "dd13b010368f85dfa59364ba87bfe8ae930b2832",
      "tree": "f7f0a8fa77858674564aeb614499f40dd3c6dcd8",
      "parents": [
        "55871d04793d9c069ee277b1e98794b88d92ed80"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:52 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:52 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: kill helper and seq_adjust hooks\n\nConnection tracking helpers (specifically FTP) need to be called\nbefore NAT sequence numbers adjustments are performed to be able\nto compare them against previously seen ones. We\u0027ve introduced\ntwo new hooks around 2.6.11 to maintain this ordering when NAT\nmodules were changed to get called from conntrack helpers directly.\n\nThe cost of netfilter hooks is quite high and sequence number\nadjustments are only rarely needed however. Add a RCU-protected\nsequence number adjustment function pointer and call it from\nIPv4 conntrack after calling the helper.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "8c87238b726e543f8af4bdb4296020a328df4744",
      "tree": "d6c74123cfdd8ccd784f8383446a19d260c9bddf",
      "parents": [
        "42cf800c240fa845e9c154429d70d62750e65b64"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:51 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:51 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: don\u0027t add NAT extension for confirmed conntracks\n\nAdding extensions to confirmed conntracks is not allowed to avoid races\non reallocation. Don\u0027t setup NAT for confirmed conntracks in case NAT\nmodule is loaded late.\n\nThe has one side-effect, the connections existing before the NAT module\nwas loaded won\u0027t enter the bysource hash. The only case where this actually\nmakes a difference is in case of SNAT to a multirange where the IP before\nNAT is also part of the range. Since old connections don\u0027t enter the\nbysource hash the first new connection from the IP will have a new address\nselected. This shouldn\u0027t matter at all.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "42cf800c240fa845e9c154429d70d62750e65b64",
      "tree": "e3144f6b168499ae946cad846259a8b024379691",
      "parents": [
        "9d908a69a32e0171eb5eeac93f2f46ffa4190573"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:50 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:50 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: remove obsolete check for ICMP redirects\n\nLocally generated ICMP packets have a reference to the conntrack entry\nof the original packet manually attached by icmp_send(). Therefore the\ncheck for locally originated untracked ICMP redirects can never be\ntrue.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "9d908a69a32e0171eb5eeac93f2f46ffa4190573",
      "tree": "876d1a05260ad73d1ac60700ecbed904d19982d1",
      "parents": [
        "4910a087996e637adc50f955eccf114307f8fab7"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:50 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:50 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: add SCTP protocol support\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "4910a087996e637adc50f955eccf114307f8fab7",
      "tree": "bf3402198dc4126b24618da1571c835510645be9",
      "parents": [
        "2bc780499aa33311ec0f3e42624dfaa7be0ade5e"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Mar 20 15:15:57 2008 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:50 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: add DCCP protocol support\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "d63a650736f566a1f9e9434725d2089597c0d2cc",
      "tree": "f0a3d5dbc9ced46f95582e4133b55bb70a1ae365",
      "parents": [
        "6185f870e293a0a3eae5c81eb0106480cf03dfde"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Mar 20 15:15:53 2008 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:49 2008 +0200"
      },
      "message": "[NETFILTER]: Add partial checksum validation helper\n\nMove the UDP-Lite conntrack checksum validation to a generic helper\nsimilar to nf_checksum() and make it fall back to nf_checksum()\nin case the full packet is to be checksummed and hardware checksums\nare available. This is to be used by DCCP conntrack, which also\nneeds to verify partial checksums.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "6185f870e293a0a3eae5c81eb0106480cf03dfde",
      "tree": "e4e9dad8838a97312be0b67657c642d042457ba3",
      "parents": [
        "2d2d84c40e19a7fce51ba1f124ecde105104192d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Mar 20 15:15:51 2008 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:48 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: add UDP-Lite support\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "2d2d84c40e19a7fce51ba1f124ecde105104192d",
      "tree": "7388dd42d235b02e5028e4bb6242a481f1a47a41",
      "parents": [
        "ca6a50749012fc17feeec91ee2f9eeacacf06f0b"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Mar 20 15:15:49 2008 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:48 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: remove unused name from struct nf_nat_protocol\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "ca6a50749012fc17feeec91ee2f9eeacacf06f0b",
      "tree": "b5dd90319ac557fedda67287576a4bb4be38347b",
      "parents": [
        "535b57c7c1524125444aa1b874332f6ff1608ef5"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:47 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:47 2008 +0200"
      },
      "message": "[NETFILTER]: nf_conntrack_netlink: clean up NAT protocol parsing\n\nMove responsibility for setting the IP_NAT_RANGE_PROTO_SPECIFIED flag\nto the NAT protocol, properly propagate errors and get rid of ugly\nreturn value convention.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "535b57c7c1524125444aa1b874332f6ff1608ef5",
      "tree": "c127d9bce1b29158343447967c50edd51e357890",
      "parents": [
        "5abd363f738dcd048ee790fb9b84d0768a8a407f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:47 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:47 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: move NAT ctnetlink helpers to nf_nat_proto_common\n\nMove to nf_nat_proto_common and rename to nf_nat_proto_... since they\u0027re\nalso used by protocols that don\u0027t have port numbers.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "5abd363f738dcd048ee790fb9b84d0768a8a407f",
      "tree": "d6b7351ee220614e4aeed8130452da579bd4a530",
      "parents": [
        "937e0dfd87a8b7946a17161664500fba93eb13fd"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:46 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:46 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: fix random mode not to overwrite port rover\n\nThe port rover should not get overwritten when using random mode,\notherwise other rules will also use more or less random ports.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "937e0dfd87a8b7946a17161664500fba93eb13fd",
      "tree": "2dae4611ca2fc22d8973dcf0dfbed315de70ff86",
      "parents": [
        "544473c1664f3a688be949ac078bdee6f4afeef1"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Mar 20 15:15:47 2008 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:46 2008 +0200"
      },
      "message": "[NETFILTER]: nf_nat: add helpers for common NAT protocol operations\n\nAdd generic -\u003ein_range and -\u003eunique_tuple ops to avoid duplicating them\nagain and again for future NAT modules and save a few bytes of text:\n\nnet/ipv4/netfilter/nf_nat_proto_tcp.c:\n  tcp_in_range     |  -62 (removed)\n  tcp_unique_tuple | -259 # 271 -\u003e 12, # inlines: 1 -\u003e 0, size inlines: 7 -\u003e 0\n 2 functions changed, 321 bytes removed\n\nnet/ipv4/netfilter/nf_nat_proto_udp.c:\n  udp_in_range     |  -62 (removed)\n  udp_unique_tuple | -259 # 271 -\u003e 12, # inlines: 1 -\u003e 0, size inlines: 7 -\u003e 0\n 2 functions changed, 321 bytes removed\n\nnet/ipv4/netfilter/nf_nat_proto_gre.c:\n  gre_in_range |  -62 (removed)\n 1 function changed, 62 bytes removed\n\nvmlinux:\n 5 functions changed, 704 bytes removed\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "544473c1664f3a688be949ac078bdee6f4afeef1",
      "tree": "019b6a5088f8fe99928464d9530268d1de02924a",
      "parents": [
        "fa913ddf6372b20b23061996150d38f639488d42"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:45 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:45 2008 +0200"
      },
      "message": "[NETFILTER]: {ip,ip6,arp}_tables: return EAGAIN for invalid SO_GET_ENTRIES size\n\nRule dumping is performed in two steps: first userspace gets the\nruleset size using getsockopt(SO_GET_INFO) and allocates memory,\nthen it calls getsockopt(SO_GET_ENTRIES) to actually dump the\nruleset. When another process changes the ruleset in between the\nsizes from the first getsockopt call doesn\u0027t match anymore and\nthe kernel aborts. Unfortunately it returns EAGAIN, as for multiple\nother possible errors, so userspace can\u0027t distinguish this case\nfrom real errors.\n\nReturn EAGAIN so userspace can retry the operation.\n\nFixes (with current iptables SVN version) netfilter bugzilla #104.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "c2f9c68398ec724738509f95f1599378ebcc45e0",
      "tree": "f29e04a2bdf31ea16e636a94a2f8b035c14226b9",
      "parents": [
        "3bb0362d2f53fa54a17b88c96b43fc093e47699b"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:44 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:44 2008 +0200"
      },
      "message": "[NETFILTER]: Explicitly initialize .priority in arptable_filter\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "3bb0362d2f53fa54a17b88c96b43fc093e47699b",
      "tree": "915a373f37785f926b7be99d4bc98c0e4f724a38",
      "parents": [
        "95eea855af69bfd54a7b73546190e76046ca2e07"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:44 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:44 2008 +0200"
      },
      "message": "[NETFILTER]: remove arpt_(un)register_target indirection macros\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "95eea855af69bfd54a7b73546190e76046ca2e07",
      "tree": "264951aad652625a31e12f715363ee07d00f3639",
      "parents": [
        "4abff0775d5e4feb20b21371e1c63a1b30fc2140"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:43 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:43 2008 +0200"
      },
      "message": "[NETFILTER]: remove arpt_target indirection macro\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "4abff0775d5e4feb20b21371e1c63a1b30fc2140",
      "tree": "cba00aea0e9f9c8a3daf099c7ebc95de6b14f0f3",
      "parents": [
        "72b72949db9aabaafd791a9077f02188a866824d"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:43 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:43 2008 +0200"
      },
      "message": "[NETFILTER]: remove arpt_table indirection macro\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "72b72949db9aabaafd791a9077f02188a866824d",
      "tree": "5621ea59664345cf4be6db5d9f328995f3c4b229",
      "parents": [
        "58c0fb0ddd92e5105d61fc85b6e7af7b1f669067"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:42 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:42 2008 +0200"
      },
      "message": "[NETFILTER]: annotate rest of nf_nat_* with const\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "5452e425adfdfc4647b618e303f73d48f2405b0e",
      "tree": "7cad164e9517cee49556c6c85e4f40d3c7f6b2b7",
      "parents": [
        "3cf93c96af7adf78542d45f8a27f0e5f8704409d"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 11:15:35 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 11:15:35 2008 +0200"
      },
      "message": "[NETFILTER]: annotate {arp,ip,ip6,x}tables with const\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "3cf93c96af7adf78542d45f8a27f0e5f8704409d",
      "tree": "1559a1c55ef406f9aa8efdc2d5dc8ed42059c1df",
      "parents": [
        "b9f61b160336da5eaaacb0cb41ebe32169e3bde5"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Mon Apr 14 09:56:05 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 09:56:05 2008 +0200"
      },
      "message": "[NETFILTER]: annotate xtables targets with const and remove casts\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "fdccecd0cc267817607acca386181439e8e1bd83",
      "tree": "c7496d698aa1e2887df34e3a5f4b40b147ba31ab",
      "parents": [
        "0718300c06d4b86ca2f4b93084ff3813fc81f5a2"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Mon Apr 14 09:56:03 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 09:56:03 2008 +0200"
      },
      "message": "[NETFILTER]: Use non-deprecated __RW_LOCK_UNLOCKED macro\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "666953df353194bef76086fa3f126241cbac3e3a",
      "tree": "bd69afed2996b0a521361efcd29e32ea7606e9ff",
      "parents": [
        "36e2a1b0f7f2598e38952494b91490f58aa221c8"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Mon Apr 14 09:56:02 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 09:56:02 2008 +0200"
      },
      "message": "[NETFILTER]: ip_tables: per-netns FILTER/MANGLE/RAW tables for real\n\nCommit 9335f047fe61587ec82ff12fbb1220bcfdd32006 aka\n\"[NETFILTER]: ip_tables: per-netns FILTER, MANGLE, RAW\"\nadded per-netns _view_ of iptables rules. They were shown to user, but\nignored by filtering code. Now that it\u0027s possible to at least ping loopback,\nper-netns tables can affect filtering decisions.\n\nnetns is taken in case of\n\tPRE_ROUTING, LOCAL_IN -- from in device,\n\tPOST_ROUTING, LOCAL_OUT -- from out device,\n\tFORWARD -- from in device which should be equal to out device\u0027s netns.\n\t\t   This code is relatively new, so BUG_ON was plugged.\n\nWrappers were added to a) keep code the same from CONFIG_NET_NS\u003dn users\n(overwhelming majority), b) consolidate code in one place -- similar\nchanges will be done in ipv6 and arp netfilter code.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "36e2a1b0f7f2598e38952494b91490f58aa221c8",
      "tree": "fb183ec56b7d137ff1aaa4eccd1be307e2d70eac",
      "parents": [
        "b916f7d4b7b4b427ad9a9486de3da41a16b24d67"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Mar 20 15:15:45 2008 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 14 09:56:01 2008 +0200"
      },
      "message": "[NETFILTER]: {ip,ip6}t_LOG: print MARK value in log output\n\nDump the mark value in log messages similar to nfnetlink_log. This\nis useful for debugging complex setups where marks are used for\nrouting or traffic classification.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "4dee959723e2bf3a0f9343a46841cd2f0029d424",
      "tree": "a7ae0cedd9dccee806b6a7ba6a7e017a271850ca",
      "parents": [
        "9625ed72e8bd619c3984f3024bd37143b7f0c7b0"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Apr 14 00:44:52 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 00:44:52 2008 -0700"
      },
      "message": "[NETFILTER]: ipt_CLUSTERIP: fix race between clusterip_config_find_get and _entry_put\n\nConsider we are putting a clusterip_config entry with the \"entries\"\ncount \u003d\u003d 1, and on the other CPU there\u0027s a clusterip_config_find_get\nin progress:\n\nCPU1:\t\t\t\t\t\t\tCPU2:\nclusterip_config_entry_put:\t\t\t\tclusterip_config_find_get:\nif (atomic_dec_and_test(\u0026c-\u003eentries)) {\n\t/* true */\n\t\t\t\t\t\t\tread_lock_bh(\u0026clusterip_lock);\n\t\t\t\t\t\t\tc \u003d __clusterip_config_find(clusterip);\n\t\t\t\t\t\t\t/* found - it\u0027s still in list */\n\t\t\t\t\t\t\t...\n\t\t\t\t\t\t\tatomic_inc(\u0026c-\u003eentries);\n\t\t\t\t\t\t\tread_unlock_bh(\u0026clusterip_lock);\n\n\twrite_lock_bh(\u0026clusterip_lock);\n\tlist_del(\u0026c-\u003elist);\n\twrite_unlock_bh(\u0026clusterip_lock);\n\t...\n\tdev_put(c-\u003edev);\n\nOops! We have an entry returned by the clusterip_config_find_get,\nwhich is a) not in list b) has a stale dev pointer.\n\nThe problems will happen when the CPU2 will release the entry - it\nwill remove it from the list for the 2nd time, thus spoiling it, and\nwill put a stale dev pointer.\n\nThe fix is to make atomic_dec_and_test under the clusterip_lock.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "7de6c033367ab86f39c7723392caf73325cbf286",
      "tree": "e05d84e6e02b7a0245bfa62e02835882ffdffa48",
      "parents": [
        "bf299275882624b1908521ee8074df85160e9679"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Apr 14 00:05:09 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 00:05:09 2008 -0700"
      },
      "message": "[SKB]: __skb_append \u003d __skb_queue_after \n\nThis expresses __skb_append in terms of __skb_queue_after, exploiting that\n\n  __skb_append(old, new, list) \u003d __skb_queue_after(list, old, new).\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5f4472c5a640c9671ca5becaebdfd6e651482176",
      "tree": "e4efabf6e55c820968facc5c1c9fe5d469e5046b",
      "parents": [
        "68fcadd16c371d5e0698ba366f33a4f990ce83ce"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Sun Apr 13 22:13:53 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:13:53 2008 -0700"
      },
      "message": "[TCP]: Remove owner from tcp_seq_afinfo.\n\nMove it to tcp_seq_afinfo-\u003eseq_fops as should be.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "68fcadd16c371d5e0698ba366f33a4f990ce83ce",
      "tree": "074c58f40e77dd03f464e5d68f7f00841fa68f96",
      "parents": [
        "52d6f3f11bdb8c26fead701c9dbad08acd28063d"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Sun Apr 13 22:13:30 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:13:30 2008 -0700"
      },
      "message": "[TCP]: Place file operations directly into tcp_seq_afinfo.\n\nNo need to have separate never-used variable.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "52d6f3f11bdb8c26fead701c9dbad08acd28063d",
      "tree": "a053cd0fa67fce68676ce174b2b50786cdf3470f",
      "parents": [
        "9427c4b36b8fe652df1d7c89eae678948e1f4b32"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Sun Apr 13 22:12:41 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:12:41 2008 -0700"
      },
      "message": "[TCP]: Cleanup /proc/tcp[6] creation/removal.\n\nReplace seq_open with seq_open_net and remove tcp_seq_release\ncompletely.  seq_release_net will do this job just fine.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9427c4b36b8fe652df1d7c89eae678948e1f4b32",
      "tree": "d2e018d9b09656e04e80ae3d3e88993e76753fbb",
      "parents": [
        "1abf4fb20d38cf58c92b27f4d6ad4fa92a3bb553"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Sun Apr 13 22:12:13 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:12:13 2008 -0700"
      },
      "message": "[TCP]: Move seq_ops from tcp_iter_state to tcp_seq_afinfo.\n\nNo need to create seq_operations for each instance of \u0027netstat\u0027.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1abf4fb20d38cf58c92b27f4d6ad4fa92a3bb553",
      "tree": "7898253a4f84e159b180ead27ebad56a962c1cb8",
      "parents": [
        "a4146b1b2c6ba995db08b1a2aef5af1b17b151e6"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Sun Apr 13 22:11:46 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:11:46 2008 -0700"
      },
      "message": "[TCP]: No need to check afinfo !\u003d NULL in tcp_proc_(un)register.\n\ntcp_proc_register/tcp_proc_unregister are called with a static pointer only.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a4146b1b2c6ba995db08b1a2aef5af1b17b151e6",
      "tree": "972901fbb5dcc41eddd403e811cd4fbbab3ab149",
      "parents": [
        "2cf83afe902fd72ef4b211774e48ab39890fb328"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Sun Apr 13 22:11:14 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 22:11:14 2008 -0700"
      },
      "message": "[TCP]: Replace struct net on tcp_iter_state with seq_net_private.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ac6f78192054784f02dd47f8e6d7d1c8d75ab173",
      "tree": "3d211ce8031a9cdd478c45574e44350e59732a03",
      "parents": [
        "3654ea02f2819cf8821c0acd35bc7cded5f1f2a9"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Apr 13 21:50:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 21:50:08 2008 -0700"
      },
      "message": "[INET]: sk_reuse is valbool\n\nsk_reuse is declared as \"unsigned char\", but is set as type valbool in net/core/sock.c.\nThere is no other place in net/ where sk-\u003esk_reuse is set to a value \u003e 1, so the test \n\"sk_reuse \u003e 1\" can not be true.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "14897e35fdc045fff9baabf0354570da22386706",
      "tree": "32cf1fcd7696e2018a05f2e4f8d5d20166af21ab",
      "parents": [
        "b0fac02370cffad956ff3de5e8ed4df7e7b875d7",
        "14dadf1d5eb5bea2dd115852cfee880505c1c169"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 11 13:24:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 11 13:24:16 2008 -0700"
      },
      "message": "Merge branch \u0027docs\u0027 of git://git.lwn.net/linux-2.6\n\n* \u0027docs\u0027 of git://git.lwn.net/linux-2.6:\n  Add additional examples in Documentation/spinlocks.txt\n  Move sched-rt-group.txt to scheduler/\n  Documentation: move rpc-cache.txt to filesystems/\n  Documentation: move nfsroot.txt to filesystems/\n  Spell out behavior of atomic_dec_and_lock() in kerneldoc\n  Fix a typo in highres.txt\n  Fixes to the seq_file document\n  Fill out information on patch tags in SubmittingPatches\n  Add the seq_file documentation\n"
    },
    {
      "commit": "6ded55da6be9f186ae1022724a5881b43846c164",
      "tree": "1d7adf36afefb163b9882e694aee1bfaad4732f6",
      "parents": [
        "dc07e721a26ec7e0adb66340f1763d220cfbbd0c"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Apr 07 15:59:03 2008 -0400"
      },
      "committer": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Fri Apr 11 13:18:01 2008 -0600"
      },
      "message": "Documentation: move nfsroot.txt to filesystems/\n\nDocumentation/ is a little large, and filesystems/ seems an obvious\nplace for this file.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Jonathan Corbet \u003ccorbet@lwn.net\u003e\n"
    },
    {
      "commit": "7951f0b03a63d657c72c7d54d306ef3357e7e604",
      "tree": "4c0faf167b81118be69b7c924024da58e5174518",
      "parents": [
        "951e07c930f5f66b676eaa4c32a1b0d8e2d7d06a"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Thu Apr 10 20:53:10 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 20:53:10 2008 -0700"
      },
      "message": "[NETNS][IPV6] tcp - assign the netns for timewait sockets\n\nCopy the network namespace from the socket to the timewait socket.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: Mark Lord \u003cmlord@pobox.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c0b8c32b1c96afc9b32b717927330025cc1c501e",
      "tree": "34997f5e86aa375746ecbe4f2c8899b4fa774a5e",
      "parents": [
        "996b1dbadcbcafb899f022303e01d46ab87920eb"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Apr 10 04:00:28 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 04:00:28 2008 -0700"
      },
      "message": "IPV4: use xor rather than multiple ands for route compare\n\nThe comparison in ip_route_input is a hot path, by recoding the C\n\"and\" as bit operations, fewer conditional branches get generated\nso the code should be faster. Maybe someday Gcc will be smart\nenough to do this?\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "387a5487f5a1f8bfc3b2c5818e50dfd19eeb4f3f",
      "tree": "b8e6fdea41532619eecb1d1dd3f546194d855226",
      "parents": [
        "ef3660ce0649fa10265455f539b72607cff53d02"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Apr 10 03:47:34 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 03:47:34 2008 -0700"
      },
      "message": "ipv4: fib_trie leaf free optimization\n\nAvoid unneeded test in the case where object to be freed\nhas to be a leaf. Don\u0027t need to use the generic tnode_free()\nfunction, instead just setup leaf to be freed.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ef3660ce0649fa10265455f539b72607cff53d02",
      "tree": "f4818fbfe6c0d375e7d230db1bbaef9b72a7d0e0",
      "parents": [
        "2e1e9848accba7e5f6a731bf0d0fc2c84f3ee748"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Apr 10 03:46:12 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 03:46:12 2008 -0700"
      },
      "message": "ipv4: fib_trie remove unused argument\n\nThe trie pointer is passed down to flush_list and flush_leaf\nbut never used.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4dfc2817025965a2fc78a18c50f540736a6b5c24",
      "tree": "f8f2f76e660d9d5c7a0f39ed8a79cb6d6d181206",
      "parents": [
        "15be75cdb5db442d0e33d37b20832b88f3ccd383"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Thu Apr 10 03:12:40 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 03:12:40 2008 -0700"
      },
      "message": "[Syncookies]: Add support for TCP options via timestamps.\n\nAllow the use of SACK and window scaling when syncookies are used\nand the client supports tcp timestamps. Options are encoded into\nthe timestamp sent in the syn-ack and restored from the timestamp\necho when the ack is received.\n\nBased on earlier work by Glenn Griffin.\nThis patch avoids increasing the size of structs by encoding TCP\noptions into the least significant bits of the timestamp and\nby not using any \u0027timestamp offset\u0027.\n\nThe downside is that the timestamp sent in the packet after the synack\nwill increase by several seconds.\n\nchanges since v1:\n don\u0027t duplicate timestamp echo decoding function, put it into ipv4/syncookie.c\n and have ipv6/syncookies.c use it.\n Feedback from Glenn Griffin: fix line indented with spaces, kill redundant if ()\n\nReviewed-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "15be75cdb5db442d0e33d37b20832b88f3ccd383",
      "tree": "83fc9261da859ecf3d6dcad29dadc78f481f7d7f",
      "parents": [
        "5c06f510a25153ff79e8c2dca312b732a367c5bb"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Apr 10 02:56:38 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 02:56:38 2008 -0700"
      },
      "message": "IPV4: fib_trie use vmalloc for large tnodes\n\nUse vmalloc rather than alloc_pages to avoid wasting memory.\nThe problem is that tnode structure has a power of 2 sized array,\nplus a header. So the current code wastes almost half the memory\nallocated because it always needs the next bigger size to hold\nthat small header.\n\nThis is similar to an earlier patch by Eric, but instead of a list\nand lock, I used a workqueue to handle the fact that vfree can\u0027t\nbe done in interrupt context.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2fa7527ba1d38175d1e42f7cb72bae5de3d55cc7",
      "tree": "48de882ae62ab51871142e2d6477e5d94fc1908a",
      "parents": [
        "1294fc4a4868d7e83ff749597fbf4e9d5f4d1aa0"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Apr 10 01:55:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 01:55:27 2008 -0700"
      },
      "message": "IPV4: route rekey timer can be deferrable\n\nNo urgency on the rehash interval timer, so mark it as deferrable.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1294fc4a4868d7e83ff749597fbf4e9d5f4d1aa0",
      "tree": "164465f16a896a40c04ed8398498809bb7d1e918",
      "parents": [
        "5969f71d57928511b9cd8744aaf1ed9bc5e88ea2"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Apr 10 01:54:01 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 01:54:01 2008 -0700"
      },
      "message": "IPV4: route use jhash3\n\nSince route hash is a triple, use jhash_3words rather doing the mixing\ndirectly. This should be as fast and give better distribution.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5969f71d57928511b9cd8744aaf1ed9bc5e88ea2",
      "tree": "044508aedecc2fef77e6b3b3a2ddc932e881728e",
      "parents": [
        "43db6d65e0ef943a361cb91f8baa49132009227b"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Apr 10 01:52:09 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 01:52:09 2008 -0700"
      },
      "message": "IPV4: route inline changes\n\nDon\u0027t mark functions that are large as inline, let compiler decide.\nAlso, use inline rather than __inline__.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "951e07c930f5f66b676eaa4c32a1b0d8e2d7d06a",
      "tree": "dbbecc7be4c616d47586ef0ff6a552c110bcb8d5",
      "parents": [
        "619c714c1d6e4dff00ddde582d78492fd95452d6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 01:29:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 01:29:36 2008 -0700"
      },
      "message": "[IPV4]: Fix byte value boundary check in do_ip_getsockopt().\n\nThis fixes kernel bugzilla 10371.\n\nAs reported by M.Piechaczek@osmosys.tv, if we try to grab a\nchar sized socket option value, as in:\n\n  unsigned char ttl \u003d 255;\n  socklen_t     len \u003d sizeof(ttl);\n  setsockopt(socket, IPPROTO_IP, IP_MULTICAST_TTL, \u0026ttl, \u0026len);\n\n  getsockopt(socket, IPPROTO_IP, IP_MULTICAST_TTL, \u0026ttl, \u0026len);\n\nThe ttl returned will be wrong on big-endian, and on both little-\nendian and big-endian the next three bytes in userspace are written\nwith garbage.\n\nIt\u0027s because of this test in do_ip_getsockopt():\n\n\tif (len \u003c sizeof(int) \u0026\u0026 len \u003e 0 \u0026\u0026 val\u003e\u003d0 \u0026\u0026 val\u003c255) {\n\nIt should allow a \u0027val\u0027 of 255 to pass here, but it doesn\u0027t so it\ncopies a full \u0027int\u0027 back to userspace.\n\nOn little-endian that will write the correct value into the location\nbut it spams on the next three bytes in userspace.  On big endian it\nwrites the wrong value into the location and spams the next three\nbytes.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "475959d4773e53a2700e523dd30acebbd47556a5",
      "tree": "67f1af04a4dd1f47f7002262b0230e5da3c97745",
      "parents": [
        "1b9b70ea2ebaab26c3e4fed385dfab6fc16359ed"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Wed Apr 09 15:14:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 09 15:14:58 2008 -0700"
      },
      "message": "[NETFILTER]: nf_nat: autoload IPv4 connection tracking\n\nWithout this patch, the generic L3 tracker would kick in\nif nf_conntrack_ipv4 was not loaded before nf_nat, which\nwould lead to translation problems with ICMP errors.\n\nNAT does not make sense without IPv4 connection tracking\nanyway, so just add a call to need_ipv4_conntrack().\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6adb4f733e9996b4fd68a6db50dd51bd2463ccac",
      "tree": "2ed50e47632902fe93f601d79fbb0ee8cb43c11c",
      "parents": [
        "882bebaaca4bb1484078d44ef011f918c0e1e14e"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Mon Apr 07 22:33:57 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 07 22:33:57 2008 -0700"
      },
      "message": "[TCP]: Don\u0027t allow FRTO to take place while MTU is being probed\n\nMTU probe can cause some remedies for FRTO because the normal\npacket ordering may be violated allowing FRTO to make a wrong\ndecision (it might not be that serious threat for anything\nthough). Thus it\u0027s safer to not run FRTO while MTU probe is\nunderway.\n\nIt seems that the basic FRTO variant should also look for an\nskb at probe_seq.start to check if that\u0027s retransmitted one\nbut I didn\u0027t implement it now (plain seqno in window check\nisn\u0027t robust against wraparounds).\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "882bebaaca4bb1484078d44ef011f918c0e1e14e",
      "tree": "d6542dd9fc3d941ecc5f418b66ea09e91f47b71f",
      "parents": [
        "c137f3dda04b0aee1bc6889cdc69185f53df8a82"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Mon Apr 07 22:33:07 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 07 22:33:07 2008 -0700"
      },
      "message": "[TCP]: tcp_simple_retransmit can cause S+L\n\nThis fixes Bugzilla #10384\n\ntcp_simple_retransmit does L increment without any checking\nwhatsoever for overflowing S+L when Reno is in use.\n\nThe simplest scenario I can currently think of is rather\ncomplex in practice (there might be some more straightforward\ncases though). Ie., if mss is reduced during mtu probing, it\nmay end up marking everything lost and if some duplicate ACKs\narrived prior to that sacked_out will be non-zero as well,\nleading to S+L \u003e packets_out, tcp_clean_rtx_queue on the next\ncumulative ACK or tcp_fastretrans_alert on the next duplicate\nACK will fix the S counter.\n\nMore straightforward (but questionable) solution would be to\njust call tcp_reset_reno_sack() in tcp_simple_retransmit but\nit would negatively impact the probe\u0027s retransmission, ie.,\nthe retransmissions would not occur if some duplicate ACKs\nhad arrived.\n\nSo I had to add reno sacked_out reseting to CA_Loss state\nwhen the first cumulative ACK arrives (this stale sacked_out\nmight actually be the explanation for the reports of left_out\noverflows in kernel prior to 2.6.23 and S+L overflow reports\nof 2.6.24). However, this alone won\u0027t be enough to fix kernel\nbefore 2.6.24 because it is building on top of the commit\n1b6d427bb7e ([TCP]: Reduce sacked_out with reno when purging\nwrite_queue) to keep the sacked_out from overflowing.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nReported-by: Alessandro Suardi \u003calessandro.suardi@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "c137f3dda04b0aee1bc6889cdc69185f53df8a82"
}
