)]}'
{
  "log": [
    {
      "commit": "e2577a065832f2c6d108de2e027891bdb2d78924",
      "tree": "e7d2d4f8c853fad7a896da5d3b7f8b6202d9e8a1",
      "parents": [
        "3f07d1295191cfa41125e4e61ee2064790070071"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Mar 13 12:23:29 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 13 12:23:29 2010 -0800"
      },
      "message": "ipv6: Send netlink notification when DAD fails\n\nIf we are managing IPv6 addresses using DHCP, it would be nice\nfor user-space to be notified if an address configured through\nDHCP fails DAD.  Otherwise user-space would have to poll to see\nwhether DAD succeeds.\n\nThis patch uses the existing notification mechanism and simply\nhooks it into the DAD failure code path.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f37ada5b5f6bfb4d251a7f510f249cb855b77b3",
      "tree": "8f39575febf0319570798117f8738f5127084634",
      "parents": [
        "84e8b803f1e16f3a2b8b80f80a63fa2f2f8a9be6"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Mar 03 08:19:59 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 04 00:39:34 2010 -0800"
      },
      "message": "IPv6: fix race between cleanup and add/delete address\n\nThis solves a potential race problem during the cleanup process.\nThe issue is that addrconf_ifdown() needs to traverse address list,\nbut then drop lock to call the notifier. The version in -next\ncould get confused if add/delete happened during this window.\nOriginal code (2.6.32 and earlier) was okay because all addresses\nwere always deleted.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "84e8b803f1e16f3a2b8b80f80a63fa2f2f8a9be6",
      "tree": "f7e5aec42f50c6e4751751cf422c7bf16bff69ce",
      "parents": [
        "5b2a19539c5f59c5a038d213ede723f0245d97cf"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Mar 02 13:32:46 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 04 00:39:33 2010 -0800"
      },
      "message": "IPv6: addrconf notify when address is unavailable\n\nMy recent change in net-next to retain permanent addresses caused regression.\nDevice refcount would not go to zero when device was unregistered because\nleft over anycast reference would hold ipv6 dev reference which would hold\ndevice references...\n\nThe correct procedure is to call notify chain when address is no longer\navailable for use.  When interface comes back DAD timer will notify\nback that address is available.\n\nAlso, link local addresses should be purged when interface is brought\ndown. The address might be changed.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5b2a19539c5f59c5a038d213ede723f0245d97cf",
      "tree": "254bd6d2a4e574337c821c00a7ba10d024e52439",
      "parents": [
        "122e4519cd5c224d4b8e681d368132b643e28f60"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Mar 02 13:32:45 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 04 00:39:33 2010 -0800"
      },
      "message": "IPv6: addrconf timer race\n\nThe Router Solicitation timer races with device state changes\nbecause it doesn\u0027t lock the device. Use local variable to avoid\none repeated dereference.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "122e4519cd5c224d4b8e681d368132b643e28f60",
      "tree": "1fe589902069d711663b027ba0a631971254b22e",
      "parents": [
        "e5c1a0aa00ce94ab0cd669bb290c3ae4657242a3"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Mar 02 13:32:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 04 00:39:32 2010 -0800"
      },
      "message": "IPv6: addrconf dad timer unnecessary bh_disable\n\nTimer code runs in bottom half, so there is no need for\nusing _bh form of locking.  Also check if device is not ready\nto avoid race with address that is no longer active.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45bb00609022ecf1d97e083666c68c74d237b799",
      "tree": "9d8d632a9c2671ab9487ed1d73b8dc45de48b90b",
      "parents": [
        "1d9cfc4e354cd619d92bb938657dec3c533e6929"
      ],
      "author": {
        "name": "Ulrich Weber",
        "email": "uweber@astaro.com",
        "time": "Thu Feb 25 23:28:58 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 26 03:59:07 2010 -0800"
      },
      "message": "ipv6: Remove IPV6_ADDR_RESERVED\n\nRFC 4291 section 2.4 states that all uncategorized addresses\nshould be considered as Global Unicast.\n\nThis will remove IPV6_ADDR_RESERVED completely\nand return IPV6_ADDR_UNICAST in ipv6_addr_type() instead.\n\nSigned-off-by: Ulrich Weber \u003cuweber@astaro.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "04488734806948624dabc4514f96f14cd75b9a50",
      "tree": "74f3a3c10a7177a5f86398b83ad7bf0569fe8b89",
      "parents": [
        "54831a83bfe656c4c54e287c734c6b0ccaa3719b",
        "c4d49794ff2838038fd9756eae39c39a5a685833"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 25 23:22:42 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 25 23:22:42 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "88af182e389097997c5e2a0b42285b3522796759",
      "tree": "b2df5a8589aaee30073665da46523a3908e8870a",
      "parents": [
        "b0483e78e5c4c9871fc5541875b3bc006846d46b"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Feb 19 13:22:59 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 19 15:40:50 2010 -0800"
      },
      "message": "net: Fix sysctl restarts...\n\nYuck.  It turns out that when we restart sysctls we were restarting\nwith the values already changed.  Which unfortunately meant that\nthe second time through we thought there was no change and skipped\nall kinds of work, despite the fact that there was indeed a change.\n\nI have fixed this the simplest way possible by restoring the changed\nvalues when we restart the sysctl write.\n\nOne of my coworkers spotted this bug when after disabling forwarding\non an interface pings were still forwarded.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7d720c3e4f0c4fc152a6bf17e24244a3c85412d2",
      "tree": "36e037187ce79acb211702bea22e99c625787757",
      "parents": [
        "2bb4646fce8d09916b351d1a62f98db7cec6fc41"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Feb 16 15:20:26 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 16 23:05:38 2010 -0800"
      },
      "message": "percpu: add __percpu sparse annotations to net\n\nAdd __percpu sparse annotations to net.\n\nThese annotations are to make sparse consider percpu variables to be\nin a different address space and warn if accessed without going\nthrough percpu accessors.  This patch doesn\u0027t affect normal builds.\n\nThe macro and type tricks around snmp stats make things a bit\ninteresting.  DEFINE/DECLARE_SNMP_STAT() macros mark the target field\nas __percpu and SNMP_UPD_PO_STATS() macro is updated accordingly.  All\nsnmp_mib_*() users which used to cast the argument to (void **) are\nupdated to cast it to (void __percpu **).\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nCc: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nCc: netdev@vger.kernel.org\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "54716e3beb0ab20c49471348dfe399a71bfc8fd3",
      "tree": "216e2b70e58032217082da224c397db46c13429c",
      "parents": [
        "02291680ffba92e5b5865bc0c5e7d1f3056b80ec"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sun Feb 14 03:27:03 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 16 15:55:18 2010 -0800"
      },
      "message": "net neigh: Decouple per interface neighbour table controls from binary sysctls\n\nStop computing the number of neighbour table settings we have by\ncounting the number of binary sysctls.  This behaviour was silly\nand meant that we could not add another neighbour table setting\nwithout also adding another binary sysctl.\n\nDon\u0027t pass the binary sysctl path for neighour table entries\ninto neigh_sysctl_register.  These parameters are no longer\nused and so are just dead code.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "21809fafa042fcfff3f788419bed99f3c289745c",
      "tree": "9f9647427cd85e69e9afac0813777a8e8db8399e",
      "parents": [
        "dc2b99f71ef477a31020511876ab4403fb7c4420"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Feb 08 19:48:52 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 12 12:28:01 2010 -0800"
      },
      "message": "IPv6: remove trivial nested _bh suffix\n\nDon\u0027t need to disable bottom half it is already down in the\nprevious lock. Move some blank lines to group locking in same\ncontext.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dc2b99f71ef477a31020511876ab4403fb7c4420",
      "tree": "cb30c11a7eb13d2ad004ee168135282aac434791",
      "parents": [
        "c0ad98453f23b98f73a1f1be2a75303a6c0dee4c"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Feb 08 19:48:05 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 12 12:28:01 2010 -0800"
      },
      "message": "IPv6: keep permanent addresses on admin down\n\nPermanent IPV6 addresses should not be removed when the link is\nset to admin down, only when device is removed.\n\nWhen link is lost permanent addresses should be marked as tentative\nso that when link comes back they are subject to duplicate address\ndetection (if DAD was enabled for that address).\n\nOther routing systems keep manually configured IPv6 addresses\nwhen link is set down.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c8c1e7297e19bdef3c178c3ea41d898a7716e3e",
      "tree": "4d336562e8d5379732a0646e17b0bb1750111ef6",
      "parents": [
        "72659ecce68588b74f6c46862c2b4cec137d7a5a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Jan 17 03:35:32 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 17 19:16:02 2010 -0800"
      },
      "message": "net: spread __net_init, __net_exit\n\n__net_init/__net_exit are apparently not going away, so use them\nto full extent.\n\nIn some cases __net_init was removed, because it was called from\n__net_exit code.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7fc02c7bae7b1cf69269992cf880a43a350cdaa",
      "tree": "a43d56fa72913a1cc98a0bbebe054d08581b3a7c",
      "parents": [
        "ee1262dbc65ce0b6234a915d8432171e8d77f518",
        "28b4d5cc17c20786848cdc07b7ea237a309776bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 07:55:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 07:55:01 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1815 commits)\n  mac80211: fix reorder buffer release\n  iwmc3200wifi: Enable wimax core through module parameter\n  iwmc3200wifi: Add wifi-wimax coexistence mode as a module parameter\n  iwmc3200wifi: Coex table command does not expect a response\n  iwmc3200wifi: Update wiwi priority table\n  iwlwifi: driver version track kernel version\n  iwlwifi: indicate uCode type when fail dump error/event log\n  iwl3945: remove duplicated event logging code\n  b43: fix two warnings\n  ipw2100: fix rebooting hang with driver loaded\n  cfg80211: indent regulatory messages with spaces\n  iwmc3200wifi: fix NULL pointer dereference in pmkid update\n  mac80211: Fix TX status reporting for injected data frames\n  ath9k: enable 2GHz band only if the device supports it\n  airo: Fix integer overflow warning\n  rt2x00: Fix padding bug on L2PAD devices.\n  WE: Fix set events not propagated\n  b43legacy: avoid PPC fault during resume\n  b43: avoid PPC fault during resume\n  tcp: fix a timewait refcnt race\n  ...\n\nFix up conflicts due to sysctl cleanups (dead sysctl_check code and\nCTL_UNNUMBERED removed) in\n\tkernel/sysctl_check.c\n\tnet/ipv4/sysctl_net_ipv4.c\n\tnet/ipv6/addrconf.c\n\tnet/sctp/sysctl.c\n"
    },
    {
      "commit": "09ad9bc752519cc167d0a573e1acf69b5c707c67",
      "tree": "0e190a9ffb90d7e0534136c3e9f31dce02f423c3",
      "parents": [
        "4ba3eb034fb6fd1990ccc5a6d71d5abcda37b905"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "opurdila@ixiacom.com",
        "time": "Wed Nov 25 15:14:13 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 25 15:14:13 2009 -0800"
      },
      "message": "net: use net_eq to compare nets\n\nGenerated with the following semantic patch\n\n@@\nstruct net *n1;\nstruct net *n2;\n@@\n- n1 \u003d\u003d n2\n+ net_eq(n1, n2)\n\n@@\nstruct net *n1;\nstruct net *n2;\n@@\n- n1 !\u003d n2\n+ !net_eq(n1, n2)\n\napplied over {include,net,drivers/net}.\n\nSigned-off-by: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "234b27c3fd58fc0e15c04dd0fbf4337fac9c2a06",
      "tree": "b7cc69200bee85872e2b8bf7fa93d2c8b519de2e",
      "parents": [
        "5256f2ef3a40d784b8369035bff3f4dc637a9801"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Nov 12 04:11:50 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 13 20:46:57 2009 -0800"
      },
      "message": "ipv6: speedup inet6_dump_addr()\n\nWhen handling large number of netdevices, inet6_dump_addr()\nis very slow because it has O(N^2) complexity.\n\nInstead of scanning one single list, we can use the NETDEV_HASHENTRIES\nsub lists of the dev_index hash table, and RCU lookups.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f8572d8f2a2ba75408b97dc24ef47c83671795d7",
      "tree": "052506a457939fea00d138d3a982d778df34e14c",
      "parents": [
        "86b1bc68e2f4244e4ea5db5458df9d19259fbb30"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Nov 05 13:32:03 2009 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Nov 12 02:05:06 2009 -0800"
      },
      "message": "sysctl net: Remove unused binary sysctl code\n\nNow that sys_sysctl is a compatiblity wrapper around /proc/sys\nall sysctl strategy routines, and all ctl_name and strategy\nentries in the sysctl tables are unused, and can be\nrevmoed.\n\nIn addition neigh_sysctl_register has been modified to no longer\ntake a strategy argument and it\u0027s callers have been modified not\nto pass one.\n\nCc: \"David Miller\" \u003cdavem@davemloft.net\u003e\nCc: Hideaki YOSHIFUJI \u003cyoshfuji@linux-ipv6.org\u003e\nCc: netdev@vger.kernel.org\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "434a8a58d75faa7170807a7ac2fcf7f3d85a0dc3",
      "tree": "68af2ec95629ca48e8a4f2fd995ce70fa98475e4",
      "parents": [
        "ddd21046e7b5e112b5a4722b7e071ae9d4c96a2b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 11 18:53:00 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 11 18:53:00 2009 -0800"
      },
      "message": "ipv6: Remove unused var in inet6_dump_ifinfo()\n\nReported by Stephen Rothwell:\n\n--------------------\nToday\u0027s linux-next build (x86_64 allmodconfig) produced this warning:\n\nnet/ipv6/addrconf.c: In function \u0027inet6_dump_ifinfo\u0027:\nnet/ipv6/addrconf.c:3833: warning: unused variable \u0027err\u0027\n\nIntroduced by commit 84d2697d9649339215675551eae28ba04068dea1 (\"ipv6:\nspeedup inet6_dump_ifinfo()\").\n--------------------\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bcd323262a94b14b84341982b90443a76a477861",
      "tree": "9e7b7bb19cbb19f93ae052af328706f5228123e5",
      "parents": [
        "84d2697d9649339215675551eae28ba04068dea1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Nov 09 07:40:17 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 10 20:54:42 2009 -0800"
      },
      "message": "ipv6: Allow inet6_dump_addr() to handle more than 64 addresses\n\nApparently, inet6_dump_addr() is not able to handle more than\n64 ipv6 addresses per device. We must break from inner loops\nin case skb is full, or else cursor is put at the end of list.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "84d2697d9649339215675551eae28ba04068dea1",
      "tree": "d24fb9fb7b02c6fe28fe01c248de3c4caaadc2c0",
      "parents": [
        "13cfa97bef0f1172879f98307ac716acf3e9cea9"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Nov 09 12:11:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 10 20:54:41 2009 -0800"
      },
      "message": "ipv6: speedup inet6_dump_ifinfo()\n\nWhen handling large number of netdevice, inet6_dump_ifinfo()\nis very slow because it has O(N^2) complexity.\n\nInstead of scanning one single list, we can use the 256 sub lists\nof the dev_index hash table, and RCU lookups.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c6d14c84566d6b70ad9dc1618db0dec87cca9300",
      "tree": "5ec75245cfda4d61e6b4506b6217f047ff4af01a",
      "parents": [
        "d0075634cf9d288988f57392a1f132d2053af961"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Nov 04 05:43:23 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 04 05:43:23 2009 -0800"
      },
      "message": "net: Introduce for_each_netdev_rcu() iterator\n\nAdds RCU management to the list of netdevices.\n\nConvert some for_each_netdev() users to RCU version, if\nit can avoid read_lock-ing dev_base_lock\n\nIe:\n\tread_lock(\u0026dev_base_loack);\n\tfor_each_netdev(net, dev)\n\t\tsome_action();\n\tread_unlock(\u0026dev_base_lock);\n\nbecomes :\n\n\trcu_read_lock();\n\tfor_each_netdev_rcu(net, dev)\n\t\tsome_action();\n\trcu_read_unlock();\n\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c3faca053d0a9c877597935b434150b422dbc6fb",
      "tree": "b80f8410493f8d0438729e2eeccaf6e330edea10",
      "parents": [
        "38fc0026da255aa328c3730a1c4d28b4e11e6a2b"
      ],
      "author": {
        "name": "Cosmin Ratiu",
        "email": "cratiu@ixiacom.com",
        "time": "Fri Oct 09 03:11:14 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 13 03:44:02 2009 -0700"
      },
      "message": "ipv6: fix devconf after adding force_tllao option\n\nSigned-off-by: Cosmin Ratiu \u003ccratiu@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f7734fdf61ec6bb848e0bafc1fb8bad2c124bb50",
      "tree": "d2e5ab4c87f54982e3fd2898d37b2a5f8624c444",
      "parents": [
        "51953d5bc43e468f24cc573a45cde1d32af129b8"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "opurdila@ixiacom.com",
        "time": "Fri Oct 02 11:39:15 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 07 01:10:45 2009 -0700"
      },
      "message": "make TLLAO option for NA packets configurable\n\nOn Friday 02 October 2009 20:53:51 you wrote:\n\n\u003e This is good although I would have shortened the name.\n\nAh, I knew I forgot something :) Here is v4.\n\ntavi\n\n\u003eFrom 24d96d825b9fa832b22878cc6c990d5711968734 Mon Sep 17 00:00:00 2001\nFrom: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nDate: Fri, 2 Oct 2009 00:51:15 +0300\nSubject: [PATCH] ipv6: new sysctl for sending TLLAO with unicast NAs\n\nNeighbor advertisements responding to unicast neighbor solicitations\ndid not include the target link-layer address option. This patch adds\na new sysctl option (disabled by default) which controls whether this\noption should be sent even with unicast NAs.\n\nThe need for this arose because certain routers expect the TLLAO in\nsome situations even as a response to unicast NS packets.\n\nMoreover, RFC 2461 recommends sending this to avoid a race condition\n(section 4.4, Target link-layer address)\n\nSigned-off-by: Cosmin Ratiu \u003ccratiu@ixiacom.com\u003e\nSigned-off-by: Octavian Purdila \u003copurdila@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d65af789f3e2cf4cfbdbf71a0f7a61ebcd41d38",
      "tree": "121df3bfffc7853ac6d2c514ad514d4a748a0933",
      "parents": [
        "c0d0787b6d47d9f4d5e8bd321921104e854a9135"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Sep 23 15:57:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 07:21:04 2009 -0700"
      },
      "message": "sysctl: remove \"struct file *\" argument of -\u003eproc_handler\n\nIt\u0027s unused.\n\nIt isn\u0027t needed -- read or write flag is already passed and sysctl\nshouldn\u0027t care about the rest.\n\nIt _was_ used in two places at arch/frv for some reason.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0522fea6505f7b03a82787acdc6ad3066d9b4de3",
      "tree": "fce2b1147c2b3c1d3b11c6070575c30aafd40287",
      "parents": [
        "3264690b04ce4edc517fa5d31fa72496f71a7321"
      ],
      "author": {
        "name": "Jens Rosenboom",
        "email": "me@jayr.de",
        "time": "Thu Sep 17 10:24:24 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 17 10:24:24 2009 -0700"
      },
      "message": "ipv6: Log the affected address when DAD failure occurs\n\nIf an interface has multiple addresses, the current message for DAD\nfailure isn\u0027t really helpful, so this patch adds the address itself to\nthe printk.\n\nSigned-off-by: Jens Rosenboom \u003cme@jayr.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "75c78500ddad74b229cd0691496b8549490496a2",
      "tree": "5249219d68627421e4717c4e8f03f8b4bbad2e92",
      "parents": [
        "481a8199142c050b72bff8a1956a49fd0a75bbe0"
      ],
      "author": {
        "name": "Moni Shoua",
        "email": "monis@voltaire.com",
        "time": "Tue Sep 15 02:37:40 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 15 02:37:40 2009 -0700"
      },
      "message": "bonding: remap muticast addresses without using dev_close() and dev_open()\n\nThis patch fixes commit e36b9d16c6a6d0f59803b3ef04ff3c22c3844c10. The approach\nthere is to call dev_close()/dev_open() whenever the device type is changed in\norder to remap the device IP multicast addresses to HW multicast addresses.\nThis approach suffers from 2 drawbacks:\n\n*. It assumes tha the device is UP when calling dev_close(), or otherwise\n   dev_close() has no affect. It is worth to mention that initscripts (Redhat)\n   and sysconfig (Suse) doesn\u0027t act the same in this matter. \n*. dev_close() has other side affects, like deleting entries from the routing\n   table, which might be unnecessary.\n\nThe fix here is to directly remap the IP multicast addresses to HW multicast\naddresses for a bonding device that changes its type, and nothing else.\n   \nReported-by:   Jason Gunthorpe \u003cjgunthorpe@obsidianresearch.com\u003e\nSigned-off-by: Moni Shoua \u003cmonis@voltaire.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cc411d0bae9c19ec85a150aeab4b08335f5751d1",
      "tree": "c42430cdb955c158d69fd9fef053c01130f8eb07",
      "parents": [
        "384912ed194e43c03ad1cdaa09b0b1e488c34d46"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Wed Sep 09 14:41:32 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 11 12:54:58 2009 -0700"
      },
      "message": "ipv6: Add IFA_F_DADFAILED flag\n\nAdd IFA_F_DADFAILED flag to denote an IPv6 address that has\nfailed Duplicate Address Detection, that way tools like\n/sbin/ip can be more informative.\n\n3: eth0: \u003cBROADCAST,MULTICAST,UP,LOWER_UP\u003e mtu 1500 qlen 1000\n    inet6 2001:db8::1/64 scope global tentative dadfailed\n       valid_lft forever preferred_lft forever\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a1ed05263b74921742b454ef52c30b609ec6940f",
      "tree": "36fcbc8e1907f6f75241c405da22b311e5cad4f8",
      "parents": [
        "59cae0092e4da753b5a2adb32933e0d1b223bcc5"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Thu Jul 02 07:10:52 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 03 19:10:13 2009 -0700"
      },
      "message": "IPv6: preferred lifetime of address not getting updated\n\nThere\u0027s a bug in addrconf_prefix_rcv() where it won\u0027t update the\npreferred lifetime of an IPv6 address if the current valid lifetime\nof the address is less than 2 hours (the minimum value in the RA).\n\nFor example, If I send a router advertisement with a prefix that\nhas valid lifetime \u003d preferred lifetime \u003d 2 hours we\u0027ll build\nthis address:\n\n3: eth0: \u003cBROADCAST,MULTICAST,UP,LOWER_UP\u003e mtu 1500 qlen 1000\n    inet6 2001:1890:1109:a20:217:8ff:fe7d:4718/64 scope global dynamic\n       valid_lft 7175sec preferred_lft 7175sec\n\nIf I then send the same prefix with valid lifetime \u003d preferred\nlifetime \u003d 0 it will be ignored since the minimum valid lifetime\nis 2 hours:\n\n3: eth0: \u003cBROADCAST,MULTICAST,UP,LOWER_UP\u003e mtu 1500 qlen 1000\n    inet6 2001:1890:1109:a20:217:8ff:fe7d:4718/64 scope global dynamic\n       valid_lft 7161sec preferred_lft 7161sec\n\nBut according to RFC 4862 we should always reset the preferred lifetime\neven if the valid lifetime is invalid, which would cause the address\nto immediately get deprecated.  So with this patch we\u0027d see this:\n\n5: eth0: \u003cBROADCAST,MULTICAST,UP,LOWER_UP\u003e mtu 1500 qlen 1000\n    inet6 2001:1890:1109:a20:21f:29ff:fe5a:ef04/64 scope global deprecated dynamic\n       valid_lft 7163sec preferred_lft 0sec\n\nThe comment winds-up being 5x the size of the code to fix the problem.\n\nUpdate the preferred lifetime of IPv6 addresses derived from a prefix\ninfo option in a router advertisement even if the valid lifetime in\nthe option is invalid, as specified in RFC 4862 Section 5.5.3e.  Fixes\nan issue where an address will not immediately become deprecated.\nReported by Jens Rosenboom.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a1faa69810b2af562b70b2a71c116c7d03575dd3",
      "tree": "074a4b79742f1749eafc5e539f3241e5d57d8236",
      "parents": [
        "1ac530b3553e0b4dc1e18a32bed57cfa84cd57cb"
      ],
      "author": {
        "name": "Jens Rosenboom",
        "email": "me@jayr.de",
        "time": "Thu Jun 25 04:55:50 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 25 20:03:50 2009 -0700"
      },
      "message": "ipv6: avoid wraparound for expired preferred lifetime\n\nAvoid showing wrong high values when the preferred lifetime of an address\nis expired.\n\nSigned-off-by: Jens Rosenboom \u003cme@jayr.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9cbc1cb8cd46ce1f7645b9de249b2ce8460129bb",
      "tree": "8d104ec2a459346b99413b0b77421ca7b9936c1a",
      "parents": [
        "ca44d6e60f9de26281fda203f58b570e1748c015",
        "45e3e1935e2857c54783291107d33323b3ef33c8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 15 03:02:23 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 15 03:02:23 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/scsi/fcoe/fcoe.c\n\tnet/core/drop_monitor.c\n\tnet/core/net-traces.c\n"
    },
    {
      "commit": "590a9887a23b60d9c6ff5a82da757371037edbd4",
      "tree": "e099c93d7046f2d4b7477bdfc607b974510ea999",
      "parents": [
        "6e2216895421b4f83d2ebac15c9d9506dc105cff"
      ],
      "author": {
        "name": "Masatake YAMATO",
        "email": "yamato@redhat.com",
        "time": "Tue Jun 09 10:41:12 2009 +0900"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jun 12 18:01:51 2009 +0200"
      },
      "message": "trivial: Fix a typo in comment of addrconf_dad_start()\n\nSigned-off-by: Masatake YAMATO \u003cyamato@redhat.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "56d417b12e57dfe11c9b7ba4bea3882c62a55815",
      "tree": "5f7d6fedc4370333898ef7790711e0a9c73e323d",
      "parents": [
        "0220ff7fc35913dcd8cdf8fb3a0966caf4aed2f3"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Mon Jun 01 03:07:33 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 01 03:07:33 2009 -0700"
      },
      "message": "IPv6: Add \u0027autoconf\u0027 and \u0027disable_ipv6\u0027 module parameters\n\nAdd \u0027autoconf\u0027 and \u0027disable_ipv6\u0027 parameters to the IPv6 module.\n\nThe first controls if IPv6 addresses are autoconfigured from\nprefixes received in Router Advertisements.  The IPv6 loopback\n(::1) and link-local addresses are still configured.\n\nThe second controls if IPv6 addresses are desired at all.  No\nIPv6 addresses will be added to any interfaces.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9af28511be10e175eb0cabb2ba5cfafe77408d84",
      "tree": "82ba3e85243a0eeb754cf549e628656ac25d9da6",
      "parents": [
        "4b2796017487f3c1e423b8e1ada6c94c0a8ea815"
      ],
      "author": {
        "name": "Sascha Hlusiak",
        "email": "contact@saschahlusiak.de",
        "time": "Tue May 19 12:56:51 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 19 16:02:02 2009 -0700"
      },
      "message": "addrconf: refuse isatap eui64 for INADDR_ANY\n\nA tunnel with no local ipv4 endpoint would otherwise use the\nISATAP linklocal address fe80::5efe:0:0, which is invalid. Rather not\nadd a linklocal address at all.\n\nSigned-off-by: Sascha Hlusiak \u003ccontact@saschahlusiak.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5007392d8512e666107dc356d4c2e05627b9029b",
      "tree": "95f89bd01bca414a6bd40ea46fd6065bebe6b135",
      "parents": [
        "336ca57c3b4e2b58ea3273e6d978ab3dfa387b4c"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed May 13 16:58:17 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 18 22:15:58 2009 -0700"
      },
      "message": "net: FIX ipv6_forward sysctl restart\n\nJust returning -ERESTARTSYS without a signal pending is not\ngood that will just leak it to userspace.  We need return\n-ERESTARTNOINTR so we always restart and set signal pending\nso that we fall of the fast path of syscall return and setup\nthe system call restart.\n\nSo use restart_syscall() which does all of this for us.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2f5e7cd3dee2ed721bf0675e1a1ddebb849aee6",
      "tree": "a7b48c260a3cb0050ad6198c6a50b52b318dfcb8",
      "parents": [
        "63d9950b08184e6531adceb65f64b429909cc101"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Tue Mar 24 16:24:51 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 24 19:49:11 2009 -0700"
      },
      "message": "ipv6: Fix conflict resolutions during ipv6 binding\n\nThe ipv6 version of bind_conflict code calls ipv6_rcv_saddr_equal()\nwhich at times wrongly identified intersections between addresses.\nIt particularly broke down under a few instances and caused erroneous\nbind conflicts.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a0bffffc148cd8e75a48a89ad2ddb74e4081a20a",
      "tree": "3a4d350d65d88bb1df8906b4822af2350ceb1cfc",
      "parents": [
        "a3ac80a130300573de351083cf4a5b46d233e8bf"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sat Mar 21 13:36:17 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 21 13:36:17 2009 -0700"
      },
      "message": "net/*: use linux/kernel.h swap()\n\ntcp_sack_swap seems unnecessary so I pushed swap to the caller.\nAlso removed comment that seemed then pointless, and added include\nwhen not already there. Compile tested.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9bdd8d40c8c59435664af6049dabe24b7779b203",
      "tree": "9487117b9c98bcab3b0884fffa10dfbb0b01292a",
      "parents": [
        "cedc1dba74f481a632c5d5aedad0068d6ad945d8"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Wed Mar 18 18:22:48 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 18 18:22:48 2009 -0700"
      },
      "message": "ipv6: Fix incorrect disable_ipv6 behavior\n\nFix the behavior of allowing both sysctl and addrconf_dad_failure()\nto set the disable_ipv6 parameter without any bad side-effects.\nIf DAD fails and accept_dad \u003e 1, we will still set disable_ipv6\u003d1,\nbut then instead of allowing an RA to add an address then\nimmediately fail DAD, we simply don\u0027t allow the address to be\nadded in the first place.  This also lets the user set this flag\nand disable all IPv6 addresses on the interface, or on the entire\nsystem.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "508827ff0ac3981d420edac64a70de7f4e304d38",
      "tree": "b0cee8ddef9f0ceab68c388e4ae46b7295eb2cb5",
      "parents": [
        "2c3c3d02f28801d7ad2da4952b2c7ca6621ef221",
        "72e2240f181871675d3a979766330c91d48a1673"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 05 02:06:47 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 05 02:06:47 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/tokenring/tmspci.c\n\tdrivers/net/ucc_geth_mii.c\n"
    },
    {
      "commit": "176c39af29bc4edaf37f663553eeaacd47b5bc9c",
      "tree": "03395c5761d2ed623f5705493eaa5deef416959d",
      "parents": [
        "b325fddb7f869e6c95a88dc6573220f162e5b89f"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Tue Mar 03 01:06:45 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 03 01:06:45 2009 -0800"
      },
      "message": "netns: fix addrconf_ifdown kernel panic\n\nWhen a network namespace is destroyed the network interfaces are\nall unregistered, making addrconf_ifdown called by the netdevice\nnotifier. \nIn the other hand, the addrconf exit method does a loop on the network\ndevices and does addrconf_ifdown on each of them. But the ordering of \nthe netns subsystem is not right because it uses the register_pernet_device\ninstead of register_pernet_subsys. If we handle the loopback as\nany network device, we can safely use register_pernet_subsys.\n\nBut if we use register_pernet_subsys, the addrconf exit method will do\nexactly what was already done with the unregistering of the network\ndevices. So in definitive, this code is pointless.\n\nI removed the netns addrconf exit method and moved the code to the\naddrconf cleanup function.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b325fddb7f869e6c95a88dc6573220f162e5b89f",
      "tree": "ebbde90999700f15e2196edd76351519a2a484b2",
      "parents": [
        "5a5990d3090b03745a9548a6f5edef02095675cf"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Feb 26 06:55:31 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 03 00:47:47 2009 -0800"
      },
      "message": "ipv6: Fix sysctl unregistration deadlock\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1ce85fe402137824246bad03ff85f3913d565c17",
      "tree": "3a54c150e9616709a8f65270cd1f4aeecac4d48e",
      "parents": [
        "4fb0a54a55d34c28dc53c39567ce171166572699"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Feb 24 23:18:28 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 24 23:18:28 2009 -0800"
      },
      "message": "netlink: change nlmsg_notify() return value logic\n\nThis patch changes the return value of nlmsg_notify() as follows:\n\nIf NETLINK_BROADCAST_ERROR is set by any of the listeners and\nan error in the delivery happened, return the broadcast error;\nelse if there are no listeners apart from the socket that\nrequested a change with the echo flag, return the result of the\nunicast notification. Thus, with this patch, the unicast\nnotification is handled in the same way of a broadcast listener\nthat has set the NETLINK_BROADCAST_ERROR socket flag.\n\nThis patch is useful in case that the caller of nlmsg_notify()\nwants to know the result of the delivery of a netlink notification\n(including the broadcast delivery) and take any action in case\nthat the delivery failed. For example, ctnetlink can drop packets\nif the event delivery failed to provide reliable logging and\nstate-synchronization at the cost of dropping packets.\n\nThis patch also modifies the rtnetlink code to ignore the return\nvalue of rtnl_notify() in all callers. The function rtnl_notify()\n(before this patch) returned the error of the unicast notification\nwhich makes rtnl_set_sk_err() reports errors to all listeners. This\nis not of any help since the origin of the change (the socket that\nrequested the echoing) notices the ENOBUFS error if the notification\nfails and should resync itself.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b5f348e5a41b39543c1c5efd661d7fd296dd5281",
      "tree": "b089d169aa873204d3945d2d6f4d395cfce08f49",
      "parents": [
        "d73f08011bc30c03a2bcb1ccd880e4be84aea269"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Fri Feb 06 23:48:01 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 06 23:48:01 2009 -0800"
      },
      "message": "ipv6/addrconf: common code located\n\n$ codiff net/ipv6/addrconf.o net/ipv6/addrconf.o.new\nnet/ipv6/addrconf.c:\n addrconf_notify | -267\n1 function changed, 267 bytes removed\n\nnet/ipv6/addrconf.c:\n add_addr |  +86\n1 function changed, 86 bytes added\n\nnet/ipv6/addrconf.o.new:\n2 functions changed, 86 bytes added, 267 bytes removed, diff: -181\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a4e6db07984529847c6ad8bc616485e721dcb809",
      "tree": "24f5367b42ce03d8feccb24925bffe6eb09bca4a",
      "parents": [
        "1d6e55f195128813f96458203a9fa14204f9251e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 27 22:41:03 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 27 22:41:03 2009 -0800"
      },
      "message": "ipv6: Make mc_forwarding sysctl read-only.\n\nThe kernel manages this value internally, as necessary, as\nVIFs are added/removed and as multicast routers are registered\nand deregistered.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5bc3eb7e2f0026f246d939851109df99e8e9f64a",
      "tree": "6da63169e066a07db21cc5268ac97ceb4c366c1c",
      "parents": [
        "54a30c975b6b27c0c9268461b647576b146d39bb"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Nov 19 21:52:05 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 19 22:42:41 2008 -0800"
      },
      "message": "ip: convert to net_device_ops for ioctl\n\nConvert to net_device_ops function table pointer for ioctl.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9eeda9abd1faf489f3df9a1f557975f4c8650363",
      "tree": "3e0a58e25b776cfbee193195460324dccb1886c7",
      "parents": [
        "61c9eaf90081cbe6dc4f389e0056bff76eca19ec",
        "4bab0ea1d42dd1927af9df6fbf0003fc00617c50"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 06 22:43:03 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 06 22:43:03 2008 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/wireless/ath5k/base.c\n\tnet/8021q/vlan_core.c\n"
    },
    {
      "commit": "e3ec6cfc260e2322834e200c2fa349cdf104fd13",
      "tree": "997cfb56b22da747ff2e78acbb54e0bb694abee5",
      "parents": [
        "b22cecdd8fa4667ebab02def0866387e709927ee"
      ],
      "author": {
        "name": "Benjamin Thery",
        "email": "benjamin.thery@bull.net",
        "time": "Wed Nov 05 01:43:57 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 05 01:43:57 2008 -0800"
      },
      "message": "ipv6: fix run pending DAD when interface becomes ready\n\nWith some net devices types, an IPv6 address configured while the\ninterface was down can stay \u0027tentative\u0027 forever, even after the interface\nis set up. In some case, pending IPv6 DADs are not executed when the\ndevice becomes ready.\n\nI observed this while doing some tests with kvm. If I assign an IPv6 \naddress to my interface eth0 (kvm driver rtl8139) when it is still down\nthen the address is flagged tentative (IFA_F_TENTATIVE). Then, I set\neth0 up, and to my surprise, the address stays \u0027tentative\u0027, no DAD is\nexecuted and the address can\u0027t be pinged.\n\nI also observed the same behaviour, without kvm, with virtual interfaces\ntypes macvlan and veth.\n\nSome easy steps to reproduce the issue with macvlan:\n\n1. ip link add link eth0 type macvlan\n2. ip -6 addr add 2003::ab32/64 dev macvlan0\n3. ip addr show dev macvlan0\n   ... \n   inet6 2003::ab32/64 scope global tentative\n   ...\n4. ip link set macvlan0 up\n5. ip addr show dev macvlan0\n   ...\n   inet6 2003::ab32/64 scope global tentative\n   ...\n   Address is still tentative\n\nI think there\u0027s a bug in net/ipv6/addrconf.c, addrconf_notify():\naddrconf_dad_run() is not always run when the interface is flagged IF_READY.\nCurrently it is only run when receiving NETDEV_CHANGE event. Looks like\nsome (virtual) devices doesn\u0027t send this event when becoming up.\n\nFor both NETDEV_UP and NETDEV_CHANGE events, when the interface becomes\nready, run_pending should be set to 1. Patch below.\n\n\u0027run_pending \u003d 1\u0027 could be moved below the if/else block but it makes \nthe code less readable.\n\nSigned-off-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6d9f239a1edb31d6133230f478fd1dc2da338ec5",
      "tree": "305fa0da95a49db4e342f3f3042f8be0968b03ce",
      "parents": [
        "6cf3f41e6c08bca6641a695449791c38a25f35ff"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Nov 03 18:21:05 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 03 18:21:05 2008 -0800"
      },
      "message": "net: \u0027\u0026\u0027 redux\n\nI want to compile out proc_* and sysctl_* handlers totally and\nstub them to NULL depending on config options, however usage of \u0026\nwill prevent this, since taking adress of NULL pointer will break\ncompilation.\n\nSo, drop \u0026 in front of every -\u003eproc_handler and every -\u003estrategy\nhandler, it was never needed in fact.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4b7a4274ca63dadd9c4f17fc953f3a5d19855c4c",
      "tree": "946d6cef596756a95afe0cea51f5c3c9be4c3353",
      "parents": [
        "4aa996066ffc0dba24036c961ee38dfdfbfc061c"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Oct 29 12:50:24 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 29 12:50:24 2008 -0700"
      },
      "message": "net: replace %#p6 format specifier with %pi6\n\ngcc warns when using the # modifier with the %p format specifier,\nso we can\u0027t use this to omit the colons when needed, introduces\n%pi6 instead.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b071195deba14b37ce896c26f20349b46e5f9fd2",
      "tree": "5f32ddc71be0a282765349301ea9173b413cdc39",
      "parents": [
        "689afa7da106032a3e859ae35494f80dd6eac640"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Tue Oct 28 16:05:40 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 28 16:05:40 2008 -0700"
      },
      "message": "net: replace all current users of NIP6_SEQFMT with %#p6\n\nThe define in kernel.h can be done away with at a later time.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f221e726bf4e082a05dcd573379ac859bfba7126",
      "tree": "a05f674caac693dc9aec7e46dd06115389f7ece3",
      "parents": [
        "f40cbaa5b0a4719489e6e7947351c99a159aca30"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 15 22:04:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:47 2008 -0700"
      },
      "message": "sysctl: simplify -\u003estrategy\n\nname and nlen parameters passed to -\u003estrategy hook are unused, remove\nthem.  In general -\u003estrategy hook should know what it\u0027s doing, and don\u0027t\ndo something tricky for which, say, pointer to original userspace array\nmay be needed (name).\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e [ networking bits ]\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f410a1fba7afa79d2992620e874a343fdba28332",
      "tree": "5e08d30678cfadd65a8dfe20bc12160a23faa43d",
      "parents": [
        "fdc0bde90a689b9145f2b6f271c03f4c99d09667"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Sat Aug 23 05:16:46 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 23 05:16:46 2008 -0700"
      },
      "message": "ipv6: protocol for address routes\n\nThis fixes a problem spotted with zebra, but not sure if it is\nnecessary a kernel problem.  With IPV6 when an address is added to an\ninterface, Zebra creates a duplicate RIB entry, one as a connected\nroute, and other as a kernel route.\n\nWhen an address is added to an interface the RTN_NEWADDR message\ncauses Zebra to create a connected route. In IPV4 when an address is\nadded to an interface a RTN_NEWROUTE message is set to user space with\nthe protocol RTPROT_KERNEL. Zebra ignores these messages, because it\nalready has the connected route.\n\nThe problem is that route created in IPV6 has route protocol \u003d\u003d\nRTPROT_BOOT.  Was this a design decision or a bug? This fixes it. Same\npatch applies to both net-2.6 and stable.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "191cd582500f49b32a63040fedeebb0168c720af",
      "tree": "173ce9682d77798c6e4ca7e14af57ea2f46c55b8",
      "parents": [
        "0eb8b1fe9238ca4c1797e4c105d5790abda1726f"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Thu Aug 14 15:33:21 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 14 15:33:21 2008 -0700"
      },
      "message": "netns: Add network namespace argument to rt6_fill_node() and ipv6_dev_get_saddr()\n\nipv6_dev_get_saddr() blindly de-references dst_dev to get the network\nnamespace, but some callers might pass NULL.  Change callers to pass a\nnamespace pointer instead.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "547b792cac0a038b9dbf958d3c120df3740b5572",
      "tree": "08554d083b0ca7d65739dc1ce12f9b12a9b8e1f8",
      "parents": [
        "53e5e96ec18da6f65e89f05674711e1c93d8df67"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Fri Jul 25 21:43:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 25 21:43:18 2008 -0700"
      },
      "message": "net: convert BUG_TRAP to generic WARN_ON\n\nRemoves legacy reinvent-the-wheel type thing. The generic\nmachinery integrates much better to automated debugging aids\nsuch as kerneloops.org (and others), and is unambiguous due to\nbetter naming. Non-intuively BUG_TRAP() is actually equal to\nWARN_ON() rather than BUG_ON() though some might actually be\npromoted to BUG_ON() but I left that to future.\n\nI could make at least one BUILD_BUG_ON conversion.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "888c848ed34bd5f8cb56567624c0d951ab35174e",
      "tree": "b63a960b5fbdc8bebab6ed1d84212a95a19c0bc2",
      "parents": [
        "4d6971e909e904be60218739fc961188471fc4f4"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Jul 22 14:21:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 22 14:21:58 2008 -0700"
      },
      "message": "ipv6: make struct ipv6_devconf static\n\nstruct ipv6_devconf can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "702beb87d6b4e08cca394b210679e5d7c2ac9383",
      "tree": "8bd3c2ae958e42dbc525a0ab3575148472dc28fe",
      "parents": [
        "d1671a9c15f55a1475d41269494518e348880c33"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 20 18:17:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 20 21:18:26 2008 -0700"
      },
      "message": "ipv6: Fix warning in addrconf code.\n\nReported by Linus.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "53b7997fd5c62408d10b9aafb38974ce90fd2356",
      "tree": "bc23e6ec248a6d999cdc779abdfdc843c5640197",
      "parents": [
        "721499e8931c5732202481ae24f2dfbf9910f129"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Jul 19 22:35:03 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 19 22:35:03 2008 -0700"
      },
      "message": "ipv6 netns: Make several \"global\" sysctl variables namespace aware.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "052979499c767268b912d25031ae524c451679d0",
      "tree": "0873da6b42fb8a8b7cdcd033fced0f50731fd824",
      "parents": [
        "6fa9864b53f0680e432a2c431c2cf2055daa3a88"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 23:01:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 23:01:27 2008 -0700"
      },
      "message": "pkt_sched: Add qdisc_tx_is_noop() helper and use in IPV6.\n\nThis indicates if the NOOP scheduler is what is active for TX on a\ngiven device.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0e1e6462df3c5944010b3328a546d8fe5d932cd",
      "tree": "37e3f86d09d8b37deb06cf1c142baeb8246bbf97",
      "parents": [
        "555353cfa1aee293de445bfa6de43276138ddd82"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 17:42:10 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 17:42:10 2008 -0700"
      },
      "message": "netdev: Move rest of qdisc state into struct netdev_queue\n\nNow qdisc, qdisc_sleeping, and qdisc_list also live there.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c3ceb4a409e2b838700edf081d61a8a4c921e79",
      "tree": "4dbf54cc23d2796b278e22fc6f5460b9b451c956",
      "parents": [
        "54dceb008ffcbe003bea9017cad1227a83b6fc3f",
        "b2238566401f01eb796e75750213c7b0fce396b2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 16:30:17 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 16:30:17 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/wireless/iwlwifi/iwl-3945.c\n\tnet/mac80211/mlme.c\n"
    },
    {
      "commit": "b2238566401f01eb796e75750213c7b0fce396b2",
      "tree": "01135bc75b5a212fe13e98ddc7721e9aae6584f0",
      "parents": [
        "07035fc1bbf931a06e47583cddd2cea2907ac0db"
      ],
      "author": {
        "name": "Andrey Vagin",
        "email": "avagin@parallels.com",
        "time": "Tue Jul 08 15:13:31 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 15:13:31 2008 -0700"
      },
      "message": "ipv6: fix race between ipv6_del_addr and DAD timer\n\nConsider the following scenario:\n\nipv6_del_addr(ifp)\n  ipv6_ifa_notify(RTM_DELADDR, ifp)\n    ip6_del_rt(ifp-\u003ert)\n\nafter returning from the ipv6_ifa_notify and enabling BH-s\nback, but *before* calling the addrconf_del_timer the \nifp-\u003etimer fires and:\n\naddrconf_dad_timer(ifp)\n  addrconf_dad_completed(ifp)\n    ipv6_ifa_notify(RTM_NEWADDR, ifp)\n      ip6_ins_rt(ifp-\u003ert)\n\nthen return back to the ipv6_del_addr and:\n\nin6_ifa_put(ifp)\n  inet6_ifa_finish_destroy(ifp)\n    dst_release(\u0026ifp-\u003ert-\u003eu.dst)\n\nAfter this we have an ifp-\u003ert inserted into fib6 lists, but \nqueued for gc, which in turn can result in oopses in the\nfib6_run_gc. Maybe some other nasty things, but we caught \nonly the oops in gc so far.\n\nThe solution is to disarm the ifp-\u003etimer before flushing the\nrt from it.\n\nSigned-off-by: Andrey Vagin \u003cavagin@parallels.com\u003e\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b34be74cbf18f5d58cc85c7c4afcd9f7d74accd",
      "tree": "46cae932b628e96af0a269f8653684298d5ea65f",
      "parents": [
        "778d80be52699596bf70e0eb0761cf5e1e46088d"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Jun 28 14:18:38 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Jul 03 17:51:56 2008 +0900"
      },
      "message": "ipv6 addrconf: add accept_dad sysctl to control DAD operation.\n\n- If 0, disable DAD.\n- If 1, perform DAD (default).\n- If \u003e1, perform DAD and disable IPv6 operation if DAD for MAC-based\n  link-local address has been failed (RFC4862 5.4.5).\n\nWe do not follow RFC4862 by default.  Refer to the netdev thread entitled\n\"Linux IPv6 DAD not full conform to RFC 4862 ?\"\n\thttp://www.spinics.net/lists/netdev/msg52027.html\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "778d80be52699596bf70e0eb0761cf5e1e46088d",
      "tree": "607d0bd6fe7c7d6f59d88b9287fc534f6693998d",
      "parents": [
        "5ce83afaac956238c3c25f60a899c511e9d8cbf4"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Jun 28 14:17:11 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Jul 03 17:51:55 2008 +0900"
      },
      "message": "ipv6: Add disable_ipv6 sysctl to disable IPv6 operaion on specific interface.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "d68b82705a4a754e5773f412c6b8f1e65259bc8b",
      "tree": "3bd32bb16b1e462d9c8be37f3b60ca2ec346d003",
      "parents": [
        "b4653e99450693b75a3c6c8ff4f070164f12815e"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Jun 25 16:26:47 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Jul 03 17:51:55 2008 +0900"
      },
      "message": "ipv6: Do not assign non-valid address on interface.\n\nCheck the type of the address when adding a new one on interface.\n- the unspecified address (::) is always disallowed (RFC4291 2.5.2)\n- the loopback address is disallowed unless the interface is (one of)\n  loopback (RFC4291 2.5.3).\n- multicast addresses are disallowed.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "0187bdfb05674147774ca79a79942537f3ad54bd",
      "tree": "43980261ce9e2b6ef76356dbbbc7efe3dbb60a02",
      "parents": [
        "2e3216cd54b142ba605e87522e15f42e0c4e3996"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Thu Jun 19 16:15:47 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 19 16:15:47 2008 -0700"
      },
      "message": "net: Disable LRO on devices that are forwarding\n\nLarge Receive Offload (LRO) is only appropriate for packets that are\ndestined for the host, and should be disabled if received packets may be\nforwarded.  It can also confuse the GSO on output.\n\nAdd dev_disable_lro() function which uses the appropriate ethtool ops to\ndisable LRO if enabled.\n\nAdd calls to dev_disable_lro() in br_add_if() and functions that enable\nIPv4 and IPv6 forwarding.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e6e30add6bd8115af108de2a13ec82d997a55777",
      "tree": "558b4d1c3ac369805aa9c57abca710bdf52aff75",
      "parents": [
        "d4c3c0753594adaafbcb77a086f013f1d847b3f0",
        "9501f9722922f2e80e1f9dc6682311d65c2b5690"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 11 22:33:59 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 11 22:33:59 2008 -0700"
      },
      "message": "Merge branch \u0027net-next-2.6-misc-20080612a\u0027 of git://git.linux-ipv6.org/gitroot/yoshfuji/linux-2.6-next\n"
    },
    {
      "commit": "0b040829952d84bf2a62526f0e24b624e0699447",
      "tree": "b2e836e7e64343f19b949e50099bbe2ea554ec30",
      "parents": [
        "573bf470e693f73a6ac437b17a64a10902ba54bf"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Jun 10 22:46:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 11 21:00:38 2008 -0700"
      },
      "message": "net: remove CVS keywords\n\nThis patch removes CVS keywords that weren\u0027t updated for a long time\nfrom comments.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3de232554a91adc74e80dc15c304be806bd7e1f9",
      "tree": "625e86cdef1763c886e676132b235b1ba52068b4",
      "parents": [
        "2b5ead46442d80928cce987ae6acf3fe99968ad8"
      ],
      "author": {
        "name": "Benjamin Thery",
        "email": "benjamin.thery@bull.net",
        "time": "Wed May 28 14:51:24 2008 +0200"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Jun 12 02:38:15 2008 +0900"
      },
      "message": "ipv6 netns: Address labels per namespace\n\nThis pacth makes IPv6 address labels per network namespace.\nIt keeps the global label tables, ip6addrlbl_table, but\nadds a \u0027net\u0027 member to each ip6addrlbl_entry.\nThis new member is taken into account when matching labels.\n\nChangelog\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n* v1: Initial version\n* v2:\n  * Minize the penalty when network namespaces are not configured:\n      *  the \u0027net\u0027 member is added only if CONFIG_NET_NS is\n         defined. This saves space when network namespaces are not\n         configured.\n      * \u0027net\u0027 value is retrieved with the inlined function\n         ip6addrlbl_net() that always return \u0026init_net when\n         CONFIG_NET_NS is not defined.\n  * \u0027net\u0027 member in ip6addrlbl_entry renamed to the less generic\n    \u0027lbl_net\u0027 name (helps code search).\n\nSigned-off-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "2b5ead46442d80928cce987ae6acf3fe99968ad8",
      "tree": "d3d33e8b9ba9b08a24a0e1f58d1d5675ab5da8e1",
      "parents": [
        "0399e5f07ad7024f70881d44f19d767d3f25a980"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue May 13 01:16:24 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Jun 12 02:38:14 2008 +0900"
      },
      "message": "ipv6 addrconf: Introduce addrconf_is_prefix_route() helper.\n\nThis inline function, for readability, returns if the route\nis a \"prefix\" route regardless if it was installed by RA or by\nhand.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "4bed72e4f5502ea3322f0a00794815fa58951abe",
      "tree": "fd652d01822746a84d5812bbe2ee0661fbd3b86f",
      "parents": [
        "baa2bfb8aef24bb7fe1875b256918724b3884662"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue May 27 17:37:49 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Jun 05 04:02:34 2008 +0900"
      },
      "message": "[IPV6] ADDRCONF: Allow longer lifetime on 64bit archs.\n\n- Allow longer lifetimes (\u003e\u003d 0x7fffffff/HZ) on 64bit archs\n  by using unsigned long.\n- Shadow this arithmetic overflow workaround by introducing\n  helper functions: addrconf_timeout_fixup() and\n  addrconf_finite_timeout().\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "24ef0da7b864435f221f668bc8a324160d063e78",
      "tree": "766e3dffc0e878bf07e4d9a4aa0b25b19d8e2785",
      "parents": [
        "a3c960899e042bc1c2b730a2115fa32da7802039"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Wed May 28 16:54:22 2008 +0200"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Jun 05 04:02:31 2008 +0900"
      },
      "message": "[IPV6] ADDRCONF: Check range of prefix length\n\nAs of now, the prefix length is not vaildated when adding or deleting\naddresses. The value is passed directly into the inet6_ifaddr structure\nand later passed on to memcmp() as length indicator which relies on\nthe value never to exceed 128 (bits).\n\nDue to the missing check, the currently code allows for any 8 bit\nvalue to be passed on as prefix length while using the netlink\ninterface, and any 32 bit value while using the ioctl interface.\n\n[Use unsigned int instead to generate better code - yoshfuji]\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "6f704992d3658aadff9e506c7fd80957fce33c5f",
      "tree": "b8e845b90aed66de04f7ca8eb21363e8e7876c18",
      "parents": [
        "69cdf8f92a8dd191eee0e834c631d84a140b1121"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon May 19 16:56:11 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 19 16:56:11 2008 -0700"
      },
      "message": "ipv6 addrconf: Allow infinite prefix lifetime.\n\nWe need to handle infinite prefix lifetime specially.\nWith help from original reporter \"Bonitch, Joseph\"\n\u003cJoseph.Bonitch@xerox.com\u003e.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0686caa35ed17cf5b9043f453957e702a7eb588d",
      "tree": "b66dc89205c0db48747b9d5e46afbd3fb5f42e55",
      "parents": [
        "e6da97e7df385a1674cf9f72c31b7a0e46e2620d"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Mon May 19 16:25:42 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 19 16:25:42 2008 -0700"
      },
      "message": "ndisc: Add missing strategies for per-device retrans timer/reachable time settings.\n\nNoticed from Al Viro \u003cviro@ftp.linux.org.uk\u003e via David Miller\n\u003cdavem@davemloft.net\u003e.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "92998dd4951a84cbde447eeac4af5770718864b8",
      "tree": "b0714254e329f385d88c99b0aa55b8951b7fd3fc",
      "parents": [
        "cdd04d98f6922f5a7ba52714f077140d42bc67c9"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Apr 21 14:33:16 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 21 14:33:16 2008 -0700"
      },
      "message": "[NETNS]: Remove empty -\u003einit callback.\n\nThe netns start-stop engine can happily live with any of\ninit or exit callbacks set to NULL.\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": "9625ed72e8bd619c3984f3024bd37143b7f0c7b0",
      "tree": "c3952ee1350f84cce42ab7e235c1ce33a587acd6",
      "parents": [
        "b077d7ababdb5433aef18c62bf1f785e8729f49a"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sun Apr 13 23:47:11 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 23:47:11 2008 -0700"
      },
      "message": "[IPV6] ADDRCONF: Don\u0027t generate temporary address for ip6-ip6 interface.\n\nAs far as I can remember, I was going to disable privacy extensions\non all \"tunnel\" interfaces.  Disable it on ip6-ip6 interface as well.\n\nAlso, just remove ifdefs for SIT for simplicity.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b077d7ababdb5433aef18c62bf1f785e8729f49a",
      "tree": "0fa561ab57495cad85084329d61a96e466d11854",
      "parents": [
        "e9df2e8fd8fbc95c57dbd1d33dada66c4627b44c"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sun Apr 13 23:42:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 23:42:18 2008 -0700"
      },
      "message": "[IPV6] ADDRCONF: Ensure disabling multicast RS even if privacy extensions are disabled.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cee8947338d46bccece54c752bf6cd4043035f05",
      "tree": "3f1e30d20e75e66ebb22f9612d9eb64f2e1a8c48",
      "parents": [
        "671a1c7401c6e48f5f2a77ac330727a13a9c8b63"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sun Apr 13 23:21:16 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 13 23:21:16 2008 -0700"
      },
      "message": "[IPV6] MROUTE: Do not call ipv6_find_idev() directly.\n\nSince NETDEV_REGISTER notifier chain is responsible for creating\ninet6_dev{}, we do not need to call ipv6_find_idev() directly here.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7aabf22efb50e6d52ed953ed2a43996152a7fb0",
      "tree": "0214416f3a27ab1425f9f90f073dc86730aa2e06",
      "parents": [
        "f3ee4010e84452aa133e5163e6cfabc52b194e94"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Apr 10 15:42:11 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Apr 12 13:43:20 2008 +0900"
      },
      "message": "[IPV6]: Use in6addr_any where appropriate.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "f3ee4010e84452aa133e5163e6cfabc52b194e94",
      "tree": "09e24d1deee7545e72329a3fb6b4d8e228e8a21d",
      "parents": [
        "9acd9f3ae92d0dc0ca7504fb48c1040e8bbc39fe"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Apr 10 15:42:11 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Apr 12 13:43:19 2008 +0900"
      },
      "message": "[IPV6]: Define constants for link-local multicast addresses.\n\n- Define link-local all-node / all-router multicast addresses.\n- Remove ipv6_addr_all_nodes() and ipv6_addr_all_routers().\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "9acd9f3ae92d0dc0ca7504fb48c1040e8bbc39fe",
      "tree": "8438f08bc6b8642d1d373f07607e8e117e01aaa6",
      "parents": [
        "dfd982baff01c18e3e1717c97fdac79c28f105ce"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Apr 10 15:42:10 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Apr 12 13:43:18 2008 +0900"
      },
      "message": "[IPV6]: Make address arguments const.\n\n- net/ipv6/addrconf.c:\n\tipv6_get_ifaddr(), ipv6_dev_get_saddr()\n- net/ipv6/mcast.c:\n\tipv6_sock_mc_join(), ipv6_sock_mc_drop(),\n\tinet6_mc_check(),\n\tipv6_dev_mc_inc(), __ipv6_dev_mc_dec(), ipv6_dev_mc_dec(),\n\tipv6_chk_mcast_addr()\n- net/ipv6/route.c:\n\trt6_lookup(), icmp6_dst_alloc()\n- net/ipv6/ip6_output.c:\n\tip6_nd_hdr()\n- net/ipv6/ndisc.c:\n\tndisc_send_ns(), ndisc_send_rs(), ndisc_send_redirect(),\n\tndisc_get_neigh(), __ndisc_send()\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "dfd982baff01c18e3e1717c97fdac79c28f105ce",
      "tree": "70c7c7f90bbcb8b522030170cd73816c9d5ec72d",
      "parents": [
        "3eb84f49290461e2b83d6e8ee1f3f0e504340c8b"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Apr 10 15:42:09 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Apr 12 13:43:17 2008 +0900"
      },
      "message": "[IPV6] ADDRCONF: Uninline ipv6_isatap_eui64().\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "3eb84f49290461e2b83d6e8ee1f3f0e504340c8b",
      "tree": "5363f47792e3e41921a86e1695f378a8555795f4",
      "parents": [
        "fed85383ac34d82e96f227ce49ce68117cec23a0"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Apr 10 15:42:08 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Apr 12 13:43:15 2008 +0900"
      },
      "message": "[IPV6] ADDRCONF: Uninline ipv6_addr_hash().\n\nThe function is only used in net/ipv6/addrconf.c.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "caad295fed8b652c67159911d11c65d476351d2f",
      "tree": "a254d67f1b39ed6aa3f2bbbaf8fde049c1bd804b",
      "parents": [
        "ff4e1fb0be7386e97580d50f09a804b33b58377a"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Apr 10 15:42:07 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Apr 11 19:47:55 2008 +0900"
      },
      "message": "[IPV6]: Use ipv6_addr_equal() instead of !ipv6_addr_cmp().\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "8eefca4888c986d993b2571eb31f0397a5d0a178",
      "tree": "adc659aba0eaaaaa3d33db20d7c759dfc5f0669b",
      "parents": [
        "549e028d012fab01e5726943d4afecd0c33d64e6",
        "de357cc01334a468e4d5b7ba66a17b0d3ca9d63e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 08 02:33:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 08 02:33:36 2008 -0700"
      },
      "message": "Merge branch \u0027net-2.6.26-isatap-20080403\u0027 of git://git.linux-ipv6.org/gitroot/yoshfuji/linux-2.6-dev\n"
    },
    {
      "commit": "7bc570c8b4f75ddb3fd5dbeb38127cdc4acbcc9c",
      "tree": "b688b728c3ea08479f75986d1e9f590fca1f8715",
      "parents": [
        "80a9492a33dd7d852465625022d56ff76d62174d"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Apr 03 09:22:53 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Apr 05 22:33:38 2008 +0900"
      },
      "message": "[IPV6] MROUTE: Support multicast forwarding.\n\nBased on ancient patch by Mickael Hoerdt\n\u003choerdt@clarinet.u-strasbg.fr\u003e, which is available at\n\u003chttp://www-r2.u-strasbg.fr/~hoerdt/dev/linux_ipv6_mforwarding/patch-linux-ipv6-mforwarding-0.1a\u003e.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "f6a07b293f11d97bfbcd9b6a3ab4ad9c418a36ff",
      "tree": "abdf920afded980c33601ea76907e86e6631735f",
      "parents": [
        "a5b2db67139e991d9e9e19260989d0e66a03a2b2"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 25 00:25:11 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Apr 04 10:44:41 2008 +0900"
      },
      "message": "[IPV6] ADDRCONF: Fix array size for sysctls.\n\nWe have been using __NET_IPV6_MAX for adjusting the size of array\nfor sysctl table, but it does not work any longer because of the\ndeprecation of NET_IPV6_xxx constants.  Let\u0027s use DEVCONF_MAX\ninstead.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "eb867579311a9c1e998d6911af056772c400122a",
      "tree": "8f0ba1a08b34472dc8bbf1355de54e92414c5ebd",
      "parents": [
        "439e23857a21c3a953826eed23c818697a97de1a"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Apr 03 13:31:53 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 13:31:53 2008 -0700"
      },
      "message": "[IPV6]: inet6_dev on loopback should be kept until namespace stop.\n\nIn the other case it will be destroyed when last address will be removed\nfrom lo inside a namespace. This will break IPv6 in several places. The\nmost obvious one is ip6_dst_ifdown.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "439e23857a21c3a953826eed23c818697a97de1a",
      "tree": "72d751492b9bafb55da3c6a35cea9e17573f938b",
      "parents": [
        "af2681828af5f2b42e12e8b16ba0cf113cf486c8"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Apr 03 13:30:17 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 13:30:17 2008 -0700"
      },
      "message": "[IPV6]: Event type in addrconf_ifdown is mis-used.\n\naddrconf_ifdown is broken in respect to the usage of how\nparameter. This function is called with (event !\u003d NETDEV_DOWN) and (2)\non the IPv6 stop.  It the latter case inet6_dev from loopback device\nshould be destroyed.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e1ec1b8ccdf0df6000faa8c2d985ca5f94157e5a",
      "tree": "4e1ca325dde22f1ac21c9da0be509e87e922e604",
      "parents": [
        "c0f39322c335412339dec16ebfd2a05ceba5ebcf",
        "802fb176d8c635ae42da31b80841c26e8c7338a0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 02 22:35:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 02 22:35:23 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/s2io.c\n"
    },
    {
      "commit": "52eeeb8481d705e61e2e9aae974e7799a93783e9",
      "tree": "6ced371b81334f07926e7bdc190fc2efa396659f",
      "parents": [
        "6294e000736401d4415ad41f408e56e14aaaf7b4"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Mar 15 22:54:23 2008 -0400"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Apr 03 10:06:00 2008 +0900"
      },
      "message": "[IPV6]: Unify ip6_onlink() and ipip6_onlink().\n\nBoth are identical, let\u0027s create ipv6_chk_prefix() and use it\nin both places.\n"
    },
    {
      "commit": "eac55bf97094f6b64116426864cf4666ef7587bc",
      "tree": "467776de93a7fdbb75904dbd702f7c417e18aa69",
      "parents": [
        "c6fbfac2e61c9a8617f64b93e8c990b8d864bce5"
      ],
      "author": {
        "name": "Benoit Boissinot",
        "email": "benoit.boissinot@ens-lyon.org",
        "time": "Wed Apr 02 00:01:35 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 02 00:01:35 2008 -0700"
      },
      "message": "IPv6: do not create temporary adresses with too short preferred lifetime\n\nFrom RFC341:\nA temporary address is created only if this calculated Preferred\nLifetime is greater than REGEN_ADVANCE time units.  In particular, an\nimplementation must not create a temporary address with a zero\nPreferred Lifetime.\n\nSigned-off-by: Benoit Boissinot \u003cbenoit.boissinot@ens-lyon.org\u003e\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c6fbfac2e61c9a8617f64b93e8c990b8d864bce5",
      "tree": "54fd0c1543069a617e3b315346e3593e0b3be52c",
      "parents": [
        "1905f6c736cb618e07eca0c96e60e3c024023428"
      ],
      "author": {
        "name": "Benoit Boissinot",
        "email": "benoit.boissinot@ens-lyon.org",
        "time": "Wed Apr 02 00:00:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 02 00:00:58 2008 -0700"
      },
      "message": "IPv6: only update the lifetime of the relevant temporary address\n\nWhen receiving a prefix information from a routeur, only update the\nlifetimes of the temporary address associated with that prefix.\n\nOtherwise if one deprecated prefix is advertized, all your temporary\naddresses will become deprecated.\n\nSigned-off-by: Benoit Boissinot \u003cbenoit.boissinot@ens-lyon.org\u003e\nAcked-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "878628fbf2589eb24357e42027d5f54b1dafd3c8",
      "tree": "30c109d8f337b3910e3b5364877c3c521dd700b5",
      "parents": [
        "57da52c1e62c6c13875e97de6c69d3156f8416da"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 03:57:35 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 04:40:00 2008 +0900"
      },
      "message": "[NET] NETNS: Omit namespace comparision without CONFIG_NET_NS.\n\nIntroduce an inline net_eq() to compare two namespaces.\nWithout CONFIG_NET_NS, since no namespace other than \u0026init_net\nexists, it is always 1.\n\nWe do not need to convert 1) inline vs inline and\n2) inline vs \u0026init_net comparisons.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "1218854afa6f659be90b748cf1bc7badee954a35",
      "tree": "78b83e3941fa7e5a03c04e2e4f6ddb1a08ea38a0",
      "parents": [
        "3b1e0a655f8eba44ab1ee2a1068d169ccfb853b9"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 02:36:06 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 04:39:56 2008 +0900"
      },
      "message": "[NET] NETNS: Omit seq_net_private-\u003enet without CONFIG_NET_NS.\n\nWithout CONFIG_NET_NS, no namespace other than \u0026init_net exists,\nno need to store net in seq_net_private.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "3b1e0a655f8eba44ab1ee2a1068d169ccfb853b9",
      "tree": "09edb35f32ebcfb1b4dad904425128a110ef16ee",
      "parents": [
        "c346dca10840a874240c78efe3f39acf4312a1f2"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 02:26:21 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 04:39:55 2008 +0900"
      },
      "message": "[NET] NETNS: Omit sock-\u003esk_net without CONFIG_NET_NS.\n\nIntroduce per-sock inlines: sock_net(), sock_net_set()\nand per-inet_timewait_sock inlines: twsk_net(), twsk_net_set().\nWithout CONFIG_NET_NS, no namespace other than \u0026init_net exists.\nLet\u0027s explicitly define them to help compiler optimizations.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "c346dca10840a874240c78efe3f39acf4312a1f2",
      "tree": "c04cff20124eba5cc337cc5ec260ad2513eeb065",
      "parents": [
        "7cbca67c073263c179f605bdbbdc565ab29d801d"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 25 21:47:49 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 04:39:53 2008 +0900"
      },
      "message": "[NET] NETNS: Omit net_device-\u003end_net without CONFIG_NET_NS.\n\nIntroduce per-net_device inlines: dev_net(), dev_net_set().\nWithout CONFIG_NET_NS, no namespace other than \u0026init_net exists.\nLet\u0027s explicitly define them to help compiler optimizations.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "7cbca67c073263c179f605bdbbdc565ab29d801d",
      "tree": "124ce8c81f3e033790416d3d16bd23e2f7bfed07",
      "parents": [
        "1d5d236d309ab90fa6aedf712f586b3595721373"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 25 09:37:42 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 25 10:24:01 2008 +0900"
      },
      "message": "[IPV6]: Support Source Address Selection API (RFC5014).\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "a9b05723ffa2e427b0257b81ea74363fcd7c304f",
      "tree": "89f51b7d3fa28a83ab3f378f2fb6798e37bd21f0",
      "parents": [
        "9bb182a7007515239091b237fe7169b1328a61d3"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sun Mar 02 10:48:21 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 25 10:23:58 2008 +0900"
      },
      "message": "[IPV6] ADDRCONF: Clean-up ipv6_dev_get_saddr().\n\nold:\n|    text\t   data\t    bss\t    dec\t    hex\tfilename\n|   28599\t   1416\t     96\t  30111\t   759f\tnet/ipv6/addrconf.o\n\nnew:\n|    text\t   data\t    bss\t    dec\t    hex\tfilename\n|   28007\t   1416\t     96\t  29519\t   734f\tnet/ipv6/addrconf.o\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "0dc47877a3de00ceadea0005189656ae8dc52669",
      "tree": "7440a87385fe318cb42f0ae161be195f5e967d82",
      "parents": [
        "6387c4bed539539b05fa773cf2ff26529dc3074c"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Mar 05 20:47:47 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 05 20:47:47 2008 -0800"
      },
      "message": "net: replace remaining __FUNCTION__ occurrences\n\n__FUNCTION__ is gcc-specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a05c44f6d5fb6cd29da04f96bf5ffaa05f545ac5",
      "tree": "c72b6f0e42ec5b484587cc584a31634b76f2f227",
      "parents": [
        "255333c1db3ec63921de29b134418a4e56e5921e"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Wed Mar 05 12:37:29 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 05 12:37:29 2008 -0800"
      },
      "message": "[IPV6]: Remove commented lines.\n\nRemove commented lines from netns patchset.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "6fda73500581be531fd9bc232173332ec64f6435"
}
