)]}'
{
  "log": [
    {
      "commit": "f5184d267c1aedb9b7a8cc44e08ff6b8d382c3b5",
      "tree": "5ccce7558f9e1e53e5b189d6e2fe62a667988ac8",
      "parents": [
        "8388e3da34edb141362bb42811ee487dfec15525"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon May 12 20:48:31 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 12 20:48:31 2008 -0700"
      },
      "message": "net: Allow netdevices to specify needed head/tailroom\n\nThis patch adds needed_headroom/needed_tailroom members to struct\nnet_device and updates many places that allocate sbks to use them. Not\nall of them can be converted though, and I\u0027m sure I missed some (I\nmostly grepped for LL_RESERVED_SPACE)\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\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": "1ed8516f09e510e4595bc900ad9266c15aacfdd2",
      "tree": "e41fa4151f3b13031291dae5b3ef5a83b3de23d8",
      "parents": [
        "5616bdd6dfeb4e36be499dbac245e4d3be90a138"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Apr 03 14:31:03 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 14:31:03 2008 -0700"
      },
      "message": "[IPV6]: Simplify IPv6 control sockets creation.\n\nDo this by replacing sock_create_kern with inet_ctl_sock_create.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\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": "ea82edf704f6bf3c3a51d0dbee816c5bbc6d3974",
      "tree": "fd0fd1832bedaeaabb4ec6ed228389de7a9b5b18",
      "parents": [
        "82cc1a7a56872056af0ead6c7d695aa223f36695"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Fri Mar 21 04:10:53 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 21 04:10:53 2008 -0700"
      },
      "message": "[NETNS][IPV6] mcast - fix compilation warning when procfs is not compiled in\n\nWhen CONFIG_PROC_FS\u003dno, the out_sock_create label is not used because\nthe code using it is disabled and that leads to a warning at compile\ntime.\n\nThis patch fix that by making a specific function to initialize proc\nfor igmp6, and remove the annoying CONFIG_PROC_FS sections in\ninit/exit function.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b8ad0cbc58f703972e9e37c4e2a8081dd7e6a551",
      "tree": "f4f576d4be94ea792bf075260586ab25c6507716",
      "parents": [
        "e504799276e53045a9b597f24c1b456552482f63"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Fri Mar 07 11:16:55 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 07 11:16:55 2008 -0800"
      },
      "message": "[NETNS][IPV6] mcast - handle several network namespace\n\nThis patch make use of the network namespace information at the right\nplaces to handle the multicast for several network namespaces.  It\nmakes the socket control to be per namespace too.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "606a2b4862d4be31fa55cad89871fe52a422d511",
      "tree": "4968038a439ba1ff2a255ead01228fc81dec97ee",
      "parents": [
        "cdb1876192dbe680b3ac955717fdf7f863c1762d"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Tue Mar 04 13:45:59 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 04 13:45:59 2008 -0800"
      },
      "message": "[NETNS][IPV6] route6 - Pass the network namespace parameter to rt6_lookup\n\nAdd a network namespace parameter to rt6_lookup().\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "419271780712091ff2738aee513fa4b5b051fbdc",
      "tree": "d71219bddd73731c333a5d902637a2bab7c1cc3f",
      "parents": [
        "3b00944c5c73c49ef52bf17b66557c43c1d945fe"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Dec 06 17:40:56 2007 -0800"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 04 15:18:24 2008 +0900"
      },
      "message": "[IPV6] MCAST: Use standard path for sending MLD/MLDv2 messages.\n\nThis is changing the paths for sending MLD/MLDv2 messages\nfrom dev_queue_xmit() to standard dst_output().\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "9b0f976f27f00a81cf47643d90854659626795b4",
      "tree": "3226ff8a03faf6c8137eeb1313248dfd2a395f21",
      "parents": [
        "4c563f7669c10a12354b72b518c2287ffc6ebfb3"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Fri Feb 29 11:13:15 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 29 11:13:15 2008 -0800"
      },
      "message": "[INET]: Remove struct net_proto_family* from _init calls.\n\nstruct net_proto_family* is not used in icmp[v6]_init, ndisc_init,\nigmp_init and tcp_v4_init. Remove it.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a429c4983deae020f1e757ecc8f547b6d4e2f2b",
      "tree": "172e27a5866e182b902cd77506df1755aafadb60",
      "parents": [
        "b950dfcf504842a0f2bb142a33ef938f1c00d300"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Jan 01 21:58:02 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:00:31 2008 -0800"
      },
      "message": "[NET]: Add some acquires/releases sparse annotations.\n\nAdd __acquires() and __releases() annotations to suppress some sparse\nwarnings.\n\nexample of warnings :\n\nnet/ipv4/udp.c:1555:14: warning: context imbalance in \u0027udp_seq_start\u0027 - wrong\ncount at exit\nnet/ipv4/udp.c:1571:13: warning: context imbalance in \u0027udp_seq_stop\u0027 -\nunexpected unlock\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6e23ae2a48750bda407a4a58f52a4865d7308bf5",
      "tree": "633fd60b2a42bf6fdb86564f0c05a6d52d8dc92b",
      "parents": [
        "1bf06cd2e338fd6fc29169d30eaf0df982338285"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Nov 19 18:53:30 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:55 2008 -0800"
      },
      "message": "[NETFILTER]: Introduce NF_INET_ hook values\n\nThe IPv4 and IPv6 hook values are identical, yet some code tries to figure\nout the \"correct\" value by looking at the address family. Introduce NF_INET_*\nvalues for both IPv4 and IPv6. The old values are kept in a #ifndef __KERNEL__\nsection for userspace compatibility.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b24b8a247ff65c01b252025926fe564209fae4fc",
      "tree": "8a9e0ea1e24b4733d8b9433d41877659505e9da4",
      "parents": [
        "a92aa318b4b369091fd80433c80e62838db8bc1c"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Jan 23 21:20:07 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:35 2008 -0800"
      },
      "message": "[NET]: Convert init_timer into setup_timer\n\nMany-many code in the kernel initialized the timer-\u003efunction\nand  timer-\u003edata together with calling init_timer(timer). There\nis already a helper for this. Use it for networking code.\n\nThe patch is HUGE, but makes the code 130 lines shorter\n(98 insertions(+), 228 deletions(-)).\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf7732e4cc14b56d593ff53352673e1fd5e3ba52",
      "tree": "3479e278b72f9d535a58066bc2a26238806252ce",
      "parents": [
        "39699037a5c94d7cd1363dfe48a50c78c643fd9a"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Oct 10 02:29:29 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:55:33 2007 -0700"
      },
      "message": "[NET]: Make core networking code use seq_open_private\n\nThis concerns the ipv4 and ipv6 code mostly, but also the netlink\nand unix sockets.\n\nThe netlink code is an example of how to use the __seq_open_private()\ncall - it saves the net namespace on this private.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cfcabdcc2d5a810208e5bb3974121b7ed60119aa",
      "tree": "1aed711eeecc5a303b57f1fc47e1b5746e8a72c2",
      "parents": [
        "de83c058af25aa97ed4864abab11e90e8dead6e2"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Tue Oct 09 01:59:42 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:54:48 2007 -0700"
      },
      "message": "[NET]: sparse warning fixes\n\nFix a bunch of sparse warnings. Mostly about 0 used as\nNULL pointer, and shadowed variable declarations.\nOne notable case was that hash size should have been unsigned.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0c4e85813d0a94eeb8bf813397a4907bdd7bb610",
      "tree": "53ee948abc930bb1c5cd270c490f87fda5eb45b3",
      "parents": [
        "4c94f8c0c9a82fad84bc5df453aff755cfed70b7"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Tue Oct 09 01:36:32 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:52:50 2007 -0700"
      },
      "message": "[NET]: Wrap netdevice hardware header creation.\n\nAdd inline for common usage of hardware header creation, and\nfix bug in IPV6 mcast where the assumption about negative return is\nan errno. Negative return from hard_header means not enough space\nwas available,(ie -N bytes).\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "14878f75abd5bf1d38becb405801cd491ee215dc",
      "tree": "872d70add65e1e58ccbbcc4534c7e826bd3fa9ed",
      "parents": [
        "8b14a536701b50559a0d69d5d593323f550db4e9"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Sun Sep 16 16:52:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:27 2007 -0700"
      },
      "message": "[IPV6]: Add ICMPMsgStats MIB (RFC 4293) [rev 2]\n\nBackground: RFC 4293 deprecates existing individual, named ICMP\ntype counters to be replaced with the ICMPMsgStatsTable. This table\nincludes entries for both IPv4 and IPv6, and requires counting of all\nICMP types, whether or not the machine implements the type.\n\nThese patches \"remove\" (but not really) the existing counters, and\nreplace them with the ICMPMsgStats tables for v4 and v6.\nIt includes the named counters in the /proc places they were, but gets the\nvalues for them from the new tables. It also counts packets generated\nfrom raw socket output (e.g., OutEchoes, MLD queries, RA\u0027s from\nradvd, etc).\n\nChanges:\n1) create icmpmsg_statistics mib\n2) create icmpv6msg_statistics mib\n3) modify existing counters to use these\n4) modify /proc/net/snmp to add \"IcmpMsg\" with all ICMP types\n        listed by number for easy SNMP parsing\n5) modify /proc/net/snmp printing for \"Icmp\" to get the named data\n        from new counters.\n[new to 2nd revision]\n6) support per-interface ICMP stats\n7) use common macro for per-device stat macros\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "881d966b48b035ab3f3aeaae0f3d3f9b584f45b2",
      "tree": "c579d59a4107cbbe9e2b85939bc0d496b815c887",
      "parents": [
        "b4b510290b056b86611757ce1175a230f1080f53"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Sep 17 11:56:21 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:10 2007 -0700"
      },
      "message": "[NET]: Make the device list and device lookups per namespace.\n\nThis patch makes most of the generic device layer network\nnamespace safe.  This patch makes dev_base_head a\nnetwork namespace variable, and then it picks up\na few associated variables.  The functions:\ndev_getbyhwaddr\ndev_getfirsthwbytype\ndev_get_by_flags\ndev_get_by_name\n__dev_get_by_name\ndev_get_by_index\n__dev_get_by_index\ndev_ioctl\ndev_ethtool\ndev_load\nwireless_process_ioctl\n\nwere modified to take a network namespace argument, and\ndeal with it.\n\nvlan_ioctl_set and brioctl_set were modified so their\nhooks will receive a network namespace argument.\n\nSo basically anthing in the core of the network stack that was\naffected to by the change of dev_base was modified to handle\nmultiple network namespaces.  The rest of the network stack was\nsimply modified to explicitly use \u0026init_net the initial network\nnamespace.  This can be fixed when those components of the network\nstack are modified to handle multiple network namespaces.\n\nFor now the ifindex generator is left global.\n\nFundametally ifindex numbers are per namespace, or else\nwe will have corner case problems with migration when\nwe get that far.\n\nAt the same time there are assumptions in the network stack\nthat the ifindex of a network device won\u0027t change.  Making\nthe ifindex number global seems a good compromise until\nthe network stack can cope with ifindex changes when\nyou change namespaces, and the like.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "457c4cbc5a3dde259d2a1f15d5f9785290397267",
      "tree": "a2ceee88780cbce27433b9a4434b3e9251efd81a",
      "parents": [
        "07feaebfcc10cd35e745c7073667935246494bee"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Sep 12 12:01:34 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:06 2007 -0700"
      },
      "message": "[NET]: Make /proc/net per network namespace\n\nThis patch makes /proc/net per network namespace.  It modifies the global\nvariables proc_net and proc_net_stat to be per network namespace.\nThe proc_net file helpers are modified to take a network namespace argument,\nand all of their callers are fixed to pass \u0026init_net for that argument.\nThis ensures that all of the /proc/net files are only visible and\nusable in the initial network namespace until the code behind them\nhas been updated to be handle multiple network namespaces.\n\nMaking /proc/net per namespace is necessary as at least some files\nin /proc/net depend upon the set of network devices which is per\nnetwork namespace, and even more files in /proc/net have contents\nthat are relevant to a single network namespace.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56b3d975bbce65f655c5612b4822da671f9fd9b2",
      "tree": "7e29d70405d9c8e28ddee3b03a07157477fc780f",
      "parents": [
        "3be550f34b03e5eb762f74d447ebbeba97efbd6d"
      ],
      "author": {
        "name": "Philippe De Muyter",
        "email": "phdm@macqel.be",
        "time": "Tue Jul 10 23:07:31 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 23:07:31 2007 -0700"
      },
      "message": "[NET]: Make all initialized struct seq_operations const.\n\nMake all initialized struct seq_operations in net/ const\n\nSigned-off-by: Philippe De Muyter \u003cphdm@macqel.be\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7562f876cd93800f2f8c89445f2a563590b24e09",
      "tree": "78a34c011af275efa0d55ba59c3bd49b771dd533",
      "parents": [
        "03fba0479600114f32d29eee74ca3eaa364606bf"
      ],
      "author": {
        "name": "Pavel Emelianov",
        "email": "xemul@openvz.org",
        "time": "Thu May 03 15:13:45 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 03 15:13:45 2007 -0700"
      },
      "message": "[NET]: Rework dev_base via list_head (v3)\n\nCleanup of dev_base list use, with the aim to simplify making device\nlist per-namespace. In almost every occasion, use of dev_base variable\nand dev-\u003enext pointer could be easily replaced by for_each_netdev\nloop. A few most complicated places were converted to using\nfirst_netdev()/next_netdev().\n\nSigned-off-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nAcked-by: Kirill Korotaev \u003cdev@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "27a884dc3cb63b93c2b3b643f5b31eed5f8a4d26",
      "tree": "5a267e40f9b94014be38dad5de0a52b6628834e0",
      "parents": [
        "be8bd86321fa7f06359d866ef61fb4d2f3e9dce9"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Apr 19 20:29:13 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:28 2007 -0700"
      },
      "message": "[SK_BUFF]: Convert skb-\u003etail to sk_buff_data_t\n\nSo that it is also an offset from skb-\u003ehead, reduces its size from 8 to 4 bytes\non 64bit architectures, allowing us to combine the 4 bytes hole left by the\nlayer headers conversion, reducing struct sk_buff size to 256 bytes, i.e. 4\n64byte cachelines, and since the sk_buff slab cache is SLAB_HWCACHE_ALIGN...\n:-)\n\nMany calculations that previously required that skb-\u003e{transport,network,\nmac}_header be first converted to a pointer now can be done directly, being\nmeaningful as offsets or pointers.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cfe1fc7759fdacb0c650b575daed1692bf3eaece",
      "tree": "b8ed6fbc6c028595f5e82be1bccdeb2727e0a0b2",
      "parents": [
        "bff9b61ce330df04c6830d823c30c04203543f01"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Mar 16 17:26:39 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:19 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_network_header_len\n\nFor the common sequence \"skb-\u003eh.raw - skb-\u003enh.raw\", similar to skb-\u003emac_len,\nthat is precalculated tho, don\u0027t think we need to bloat skb with one more\nmember, so just use this new helper, reducing the number of non-skbuff.h\nreferences to the layer headers even more.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d10ba34b001944a8d1c8adb5646140ef089c432b",
      "tree": "cba54f5d23021a2b0061f5f2891ac7fa8fca6d5a",
      "parents": [
        "55f79cc0c02f9ce8f85e965e9679796f62b790f5"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Mar 14 21:05:37 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:01 2007 -0700"
      },
      "message": "[SK_BUFF]: More skb_put related skb_reset_transport_header\n\nThis time we have to set it to skb-\u003etail that is not anymore equal to\nskb-\u003edata, so we either add a new helper or just add the skb-\u003etail - skb-\u003edata\noffset, for now do the later.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9c70220b73908f64792422a2c39c593c4792f2c5",
      "tree": "2090ea10aaa2714a5e095bae8cc02e743c378a3a",
      "parents": [
        "a27ef749e7be3b06fb58df53d94eb97a21f18707"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Apr 25 18:04:18 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:31 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_transport_header(skb)\n\nFor the places where we need a pointer to the transport header, it is\nstill legal to touch skb-\u003eh.raw directly if just adding to,\nsubtracting from or setting it to another layer header.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cc70ab261c9f997589546100ddec5da6bfd89c4e",
      "tree": "0be6a4f0dc81131747f3d3726dba77d922c6bee9",
      "parents": [
        "2c0fd387b00a6758550b5ca1aae4408374483fe7"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 13 14:03:22 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:20 2007 -0700"
      },
      "message": "[ICMP6]: Introduce icmp6_hdr()\n\nFor consistency with all the other skb-\u003eh.raw accessors.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0660e03f6b18f19b6bbafe7583265a51b90daf36",
      "tree": "82cc819ead5ab7858ba211ee8719a3e6d2bb984f",
      "parents": [
        "d0a92be05ed4aea7d35c2b257e3f9173565fe4eb"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Apr 25 17:54:47 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:14 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce ipv6_hdr(), remove skb-\u003enh.ipv6h\n\nNow the skb-\u003enh union has just one member, .raw, i.e. it is just like the\nskb-\u003emac union, strange, no? I\u0027m just leaving it like that till the transport\nlayer is done with, when we\u0027ll rename skb-\u003emac.raw to skb-\u003emac_header (or\n-\u003emac_header_offset?), ditto for -\u003e{h,nh}.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95c385b4d5a71b8ad552aecaa968ea46d7da2f6a",
      "tree": "49d8e60418cb4eeb0c9ed79fd095af50f6ec6623",
      "parents": [
        "502b093569e48db264831be7966e1c447de2f52f"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed Apr 25 17:08:10 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:23:43 2007 -0700"
      },
      "message": "[IPV6] ADDRCONF: Optimistic Duplicate Address Detection (RFC 4429) Support.\n\nNominally an autoconfigured IPv6 address is added to an interface in the\nTentative state (as per RFC 2462).  Addresses in this state remain in this\nstate while the Duplicate Address Detection process operates on them to\ndetermine their uniqueness on the network.  During this period, these\ntentative addresses may not be used for communication, increasing the time\nbefore a node may be able to communicate on a network.  Using Optimistic\nDuplicate Address Detection, autoconfigured addresses may be used\nimmediately for communication on the network, as long as certain rules are\nfollowed to avoid conflicts with other nodes during the Duplicate Address\nDetection process.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a32144e9d7b4e21341174b1a83b82a82353be86",
      "tree": "6f08560b341418fc9934f56f6162a95f5b5d8aec",
      "parents": [
        "00977a59b951207d38380c75f03a36829950265c"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Feb 12 00:55:35 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:46 2007 -0800"
      },
      "message": "[PATCH] mark struct file_operations const 7\n\nMany struct file_operations in the kernel can be \"const\".  Marking them const\nmoves these to the .rodata section, which avoids false sharing with potential\ndirty data.  In addition it\u0027ll catch accidental writes at compile time to\nthese shared resources.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1ab1457c42bc078e5a9becd82a7f9f940b55c53a",
      "tree": "c25d27c58fb27f4c5930ad120995cc2e3f1e7a4f",
      "parents": [
        "e905a9edab7f4f14f9213b52234e4a346c690911"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Feb 09 23:24:49 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:19:42 2007 -0800"
      },
      "message": "[NET] IPV6: Fix whitespace errors.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cc63f70b8b410eb653449151821f6b8b9af6ca42",
      "tree": "b78fb82523f1ed05c6e0a3547021ba213aa2d3b6",
      "parents": [
        "f2f2102d1a1dbc83b5b37b6596cd8374120cbe16"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@openvz.org",
        "time": "Tue Feb 06 14:35:25 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:39:04 2007 -0800"
      },
      "message": "[IPV4/IPV6] multicast: Check add_grhead() return value\n\nadd_grhead() allocates memory with GFP_ATOMIC and in at least two places skb\nfrom it passed to skb_put() without checking.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d88ae4cc97b24783ee4480697fbdcc02ab4133a6",
      "tree": "123c6bdd2a361f2b93a28b432939a1dce774f3f4",
      "parents": [
        "e0e8f1c8220c43bdf25cfb5622f6ab6947027fb1"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sun Jan 14 21:48:40 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 23 20:25:40 2007 -0800"
      },
      "message": "[IPV6] MCAST: Fix joining all-node multicast group on device initialization.\n\nJoin all-node multicast group after assignment of dev-\u003eip6_ptr\nbecause it must be assigned when ipv6_dev_mc_inc() is called.\nThis fixes Bug#7817, reported by \u003cgernoth@informatik.uni-erlangen.de\u003e.\n\nCloses: 7817\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "868c86bcb5bdea7ed8d45979b17bb919af9254db",
      "tree": "ebc232092d6a8a75261a9e3f698206cc09740fdf",
      "parents": [
        "2bda2853150e20ca2a44627d00b5f85af0b24a42"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:35:48 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:31 2006 -0800"
      },
      "message": "[NET]: annotate csum_ipv6_magic() callers in net/*\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a11d206d0f88e092419877c7f706cafb5e1c2e57",
      "tree": "ed96428bb52765198d5c5b7ccbc1f1b6516ffb3f",
      "parents": [
        "7a3025b1b3a0173be5de6ced18754b909da27b38"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Nov 04 20:11:37 2006 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:08 2006 -0800"
      },
      "message": "[IPV6]: Per-interface statistics support.\n\nFor IP MIB (RFC4293).\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "8a74ff7770f4795d7580392890fdf06821c78769",
      "tree": "f0938dc881927f1340d808eefac4436ec7af5e99",
      "parents": [
        "44473a6b279794f058955aec5c36975e74deb541"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:22:08 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:15 2006 -0800"
      },
      "message": "[IPV6]: annotate ipv6 mcast\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab32ea5d8a760e7dd4339634e95d7be24ee5b842",
      "tree": "8460a66c529fe03f926848326d9b6aa874e19514",
      "parents": [
        "56fc85ac961e2c20dcb5ef07e2628b3f93de2e49"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Fri Sep 22 14:15:41 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 14:55:03 2006 -0700"
      },
      "message": "[NET/IPV4/IPV6]: Change some sysctl variables to __read_mostly\n\nChange net/core, ipv4 and ipv6 sysctl variables to __read_mostly.\n\nCouldn\u0027t actually measure any performance increase while testing (.3%\nI consider noise), but seems like the right thing to do.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "acd6e00b8e4db542cb6bc9ddfbb4e18bbe29ce4d",
      "tree": "f644e1ee2a5d85b1d680897105ad8f38a562cfc1",
      "parents": [
        "c7fa9d189e93877a1fa08ab00f230e0689125e45"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Thu Aug 17 16:27:39 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Aug 17 16:29:57 2006 -0700"
      },
      "message": "[MCAST]: Fix filter leak on device removal.\n\nThis fixes source filter leakage when a device is removed and a\nprocess leaves the group thereafter.\n\nThis also includes corresponding fixes for IPv6 multicast source\nfilters on device removal.\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "0c600eda4b1c9f8f6d1bd643d494db5a29842fbe",
      "tree": "3340fda7a4f9f481e7f91ed1f376c7b4bd5e9a6e",
      "parents": [
        "78c784c47a2be593480cb6c69829a59f0504d575"
      ],
      "author": {
        "name": "Ingo Oeser",
        "email": "ioe-lkml@rameria.de",
        "time": "Mon Mar 20 23:01:32 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 23:01:32 2006 -0800"
      },
      "message": "[IPV6]: Nearly complete kzalloc cleanup for net/ipv6\n\nStupidly use kzalloc() instead of kmalloc()/memset()\neverywhere where this is possible in net/ipv6/*.c .\n\nSigned-off-by: Ingo Oeser \u003cioe-lkml@rameria.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e80e28b6b67ecc25fa89c9129a5f70de6389b2a6",
      "tree": "69f66c7089a57baec38d2275ba6757d15582c1ba",
      "parents": [
        "bee14e1f8ae2d5fd3f324e0c8562f791537160b2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 03 20:10:03 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Feb 07 20:58:56 2006 -0500"
      },
      "message": "[PATCH] net/ipv6/mcast.c NULL noise removal\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7add2a439868d636910fb6a216b12c7392778956",
      "tree": "84cf4e20ce5038cb701373c6d9f97195dfd23dfc",
      "parents": [
        "151bb0ffe51514979abf54063bb5c1dd49365137"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Tue Jan 24 13:06:39 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 24 13:06:39 2006 -0800"
      },
      "message": "[IPV6] MLDv2: fix change records when transitioning to/from inactive\n\nThe following patch fixes these problems in MLDv2:\n\n1) Add/remove \"delete\" records for sending change reports when\n        addition of a filter results in that filter transitioning to/from\n        inactive. [same as recent IPv4 IGMPv3 fix]\n2) Remove 2 redundant \"group_type\" checks (can\u0027t be IPV6_ADDR_ANY\n        within that loop, so checks are always true)\n3) change an is_in() \"return 0\" to \"return type \u003d\u003d MLD2_MODE_IS_INCLUDE\".\n        It should always be \"0\" to get here, but it improves code locality \n        to not assume it, and if some race allowed otherwise, doing\n        the check would return the correct result.\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9343e79a7bb2d3268d68997163608b87d58d8098",
      "tree": "1016bc38ce877e988e26ec644a48e73cc1c1545d",
      "parents": [
        "2664b25051f7ab96b22b199aa2f5ef6a949a4296"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Jan 17 02:10:53 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 17 02:10:53 2006 -0800"
      },
      "message": "[IPV6]: Preserve procfs IPV6 address output format\n\nProcfs always output IPV6 addresses without the colon\ncharacters, and we cannot change that.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "46b86a2da0fd14bd49765330df63a62279833acb",
      "tree": "069b4741a970db9b03772a870b4d63398b1f56e0",
      "parents": [
        "23b0ca5bf52cef0ab0f0fe247cb91cbef836e7eb"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Fri Jan 13 14:29:07 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jan 13 14:29:07 2006 -0800"
      },
      "message": "[NET]: Use NIP6_FMT in kernel.h\n\nThere are errors and inconsistency in the display of NIP6 strings.\n\tie: net/ipv6/ip6_flowlabel.c\n\nThere are errors and inconsistency in the display of NIPQUAD strings too.\n\tie: net/netfilter/nf_conntrack_ftp.c\n\nThis patch:\n\tadds NIP6_FMT to kernel.h\n\tchanges all code to use NIP6_FMT\n\tfixes net/ipv6/ip6_flowlabel.c\n\tadds NIPQUAD_FMT to kernel.h\n\tfixes net/netfilter/nf_conntrack_ftp.c\n\tchanges a few uses of \"%u.%u.%u.%u\" to NIPQUAD_FMT for symmetry to NIP6_FMT\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8b3a70058bfe711b2d05ba2134178bae623183ce",
      "tree": "6f9e55729938f0a935aa885d29d5a38537fa3a97",
      "parents": [
        "ae0f7d5f83236a43c572a744e4bbb30e8702d821"
      ],
      "author": {
        "name": "Kris Katterjohn",
        "email": "kjak@users.sourceforge.net",
        "time": "Wed Jan 11 15:56:43 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jan 11 16:32:14 2006 -0800"
      },
      "message": "[NET]: Remove more unneeded typecasts on *malloc()\n\nThis removes more unneeded casts on the return value for kmalloc(),\nsock_kmalloc(), and vmalloc().\n\nSigned-off-by: Kris Katterjohn \u003ckjak@users.sourceforge.net\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "196433c5b788eb732fdcf92449274e302f089ce4",
      "tree": "905f1da8155eb2b2b00e98e30532ba33fbc3a909",
      "parents": [
        "ca4033024858fcbd392465ba9cbf4c838aedfb58"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Jan 04 13:56:31 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jan 04 13:56:31 2006 -0800"
      },
      "message": "[IPV6]: Use macro for rwlock_t initialization.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5ab4a6c81eb3dbe32361791d1535f9153f79b0ed",
      "tree": "c89504389bf1a3452a499db9ea19acea76941616",
      "parents": [
        "1b93ae64cabe5e28dd5a1f35f96f938ca4f6ae20"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Tue Dec 27 14:03:00 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 27 14:03:00 2005 -0800"
      },
      "message": "[IPV6] mcast: Fix multiple issues in MLDv2 reports.\n\nThe below \"jumbo\" patch fixes the following problems in MLDv2.\n\n1) Add necessary \"ntohs\" to recent \"pskb_may_pull\" check [breaks\n        all nonzero source queries on little-endian (!)]\n\n2) Add locking to source filter list [resend of prior patch]\n\n3) fix \"mld_marksources()\" to\n        a) send nothing when all queried sources are excluded\n        b) send full exclude report when source queried sources are\n                not excluded\n        c) don\u0027t schedule a timer when there\u0027s nothing to report\n\nNOTE: RFC 3810 specifies the source list should be saved and each\n  source reported individually as an IS_IN. This is an obvious DOS\n  path, requiring the host to store and then multicast as many sources\n  as are queried (e.g., millions...). This alternative sends a full, \n  relevant report that\u0027s limited to number of sources present on the\n  machine.\n\n4) fix \"add_grec()\" to send empty-source records when it should\n        The original check doesn\u0027t account for a non-empty source\n        list with all sources inactive; the new code keeps that\n        short-circuit case, and also generates the group header\n        with an empty list if needed.\n\n5) fix mca_crcount decrement to be after add_grec(), which needs\n        its original value\n\nThese issues (other than item #1 ;-) ) were all found by Yan Zheng,\nmuch thanks!\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f4353d891b5e477528cd0b996e0263fecdf5d5f",
      "tree": "9f8f9f066fa82cf6b45a0b5002549f4b08c5fbbb",
      "parents": [
        "04333393b930370db0cc29fdf0dbbd08ecd43337"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Mon Dec 26 17:03:46 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 26 17:03:46 2005 -0800"
      },
      "message": "[IPV6]: Increase default MLD_MAX_MSF to 64.\n\nThe existing default of 10 is just way too low.\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24c6927505ca77ee4ac25fb31dcd56f6506979ed",
      "tree": "17d873b63f0ce24b81e184f2515f2b643143e48e",
      "parents": [
        "bf031fff1fac77775b2cd2c72ad8b017f4c0af13"
      ],
      "author": {
        "name": "David Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Fri Dec 02 20:32:59 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Dec 02 20:32:59 2005 -0800"
      },
      "message": "[IGMP]: workaround for IGMP v1/v2 bug\n\nFrom: David Stevens \u003cdlstevens@us.ibm.com\u003e\n\nAs explained at:\n\n\thttp://www.cs.ucsb.edu/~krishna/igmp_dos/\n\nWith IGMP version 1 and 2 it is possible to inject a unicast\nreport to a client which will make it ignore multicast\nreports sent later by the router.\n\nThe fix is to only accept the report if is was sent to a\nmulticast or unicast address.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8713dbf05754aa777f31bf491cb60a111f7ad828",
      "tree": "543da2e27a18d1deddfcccf503db882d2f6d2566",
      "parents": [
        "ec1890c5df451799dec969a3581ff72e1934b5ee"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "yanzheng@21cn.com",
        "time": "Fri Oct 28 08:02:08 2005 +0800"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Wed Nov 02 21:03:57 2005 -0200"
      },
      "message": "[MCAST]: ip[6]_mc_add_src should be called when number of sources is zero\n\nAnd filter mode is exclude.\n\nFurther explanation by David Stevens:\n\nMulticast source filters aren\u0027t widely used yet, and that\u0027s really the only\nfeature that\u0027s affected if an application actually exercises this bug, as far\nas I can tell. An ordinary filter-less multicast join should still work, and\nonly forwarded multicast traffic making use of filters and doing empty-source\nfilters with the MSFILTER ioctl would be at risk of not getting multicast\ntraffic forwarded to them because the reports generated would not be based on\nthe correct counts.\n\nSigned-off-by: Yan Zheng \u003cyanzheng@21cn.com\nAcked-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "97300b5fdfe28c6edae926926f9467a27cf5889c",
      "tree": "5a28ee8ff8fbddb44ed3f8b5e3d37c0439af1608",
      "parents": [
        "edc9e81917157d1e73bf081d4fbcad7c34d32783"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "yanzheng@21cn.com",
        "time": "Mon Oct 31 20:09:45 2005 +0800"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Oct 31 22:52:03 2005 -0200"
      },
      "message": "[MCAST] IPv6: Check packet size when process Multicast\n\nSigned-off-by: Yan Zheng \u003cyanzheng@21cn.com\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "f12baeab9d65e2fe1b43b09b666f5efcb81b9369",
      "tree": "88e06b93cad95fef0ebb4a60d2b195884fe79d4f",
      "parents": [
        "e89e9cf539a28df7d0eb1d0a545368e9920b34ac"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "yanzheng@21cn.com",
        "time": "Sat Oct 29 00:02:32 2005 +0800"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Fri Oct 28 16:35:18 2005 -0200"
      },
      "message": "[MCAST] IPv6: Fix algorithm to compute Querier\u0027s Query Interval\n\n5.1.3.  Maximum Response Code\n\n   The Maximum Response Code field specifies the maximum time allowed\n   before sending a responding Report.  The actual time allowed, called\n   the Maximum Response Delay, is represented in units of milliseconds,\n   and is derived from the Maximum Response Code as follows:\n\n   If Maximum Response Code \u003c 32768,\n      Maximum Response Delay \u003d Maximum Response Code\n\n   If Maximum Response Code \u003e\u003d32768, Maximum Response Code represents a\n   floating-point value as follows:\n\n       0 1 2 3 4 5 6 7 8 9 A B C D E F\n      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+\n      |1| exp |          mant         |\n      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+\n\n   Maximum Response Delay \u003d (mant | 0x1000) \u003c\u003c (exp+3)\n\n\n5.1.9.  QQIC (Querier\u0027s Query Interval Code)\n\n   The Querier\u0027s Query Interval Code field specifies the [Query\n   Interval] used by the Querier.  The actual interval, called the\n   Querier\u0027s Query Interval (QQI), is represented in units of seconds,\n   and is derived from the Querier\u0027s Query Interval Code as follows:\n\n   If QQIC \u003c 128, QQI \u003d QQIC\n\n   If QQIC \u003e\u003d 128, QQIC represents a floating-point value as follows:\n\n       0 1 2 3 4 5 6 7\n      +-+-+-+-+-+-+-+-+\n      |1| exp | mant  |\n      +-+-+-+-+-+-+-+-+\n\n   QQI \u003d (mant | 0x10) \u003c\u003c (exp + 3)\n\n                                                -- rfc3810\n\n#define MLDV2_QQIC(value) MLDV2_EXP(0x80, 4, 3, value)\n#define MLDV2_MRC(value) MLDV2_EXP(0x8000, 12, 3, value)\n\nAbove macro are defined in mcast.c. but 1 \u003c\u003c 4 \u003d\u003d 0x10 and 1 \u003c\u003c 12 \u003d\u003d 0x1000.\nSo the result computed by original Macro is larger.\n\nSigned-off-by: Yan Zheng \u003cyanzheng@21cn.com\u003e\nAcked-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "fab10fe37ad8dc4388fc444c89ef5aefe906354f",
      "tree": "cca67691a4a5cf5c08c3baccdceb3197dd2ac9b5",
      "parents": [
        "83fa3400ebcba307a60909824a251be984eb9567"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "yanzheng@21cn.com",
        "time": "Wed Oct 05 12:08:13 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 05 12:08:13 2005 -0700"
      },
      "message": "[MCAST] ipv6: Fix address size in grec_size\n\nSigned-Off-By: Yan Zheng \u003cyanzheng@21cn.com\u003e\nAcked-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nAcked-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "de9daad90ecb54f3c37c3f8967d581e20d927539",
      "tree": "64cdb939bd5bbdb36cd05ccaed15ca5b6d2c9df7",
      "parents": [
        "20ae975dfd54de581287b2ca8a1ad97099ab0396"
      ],
      "author": {
        "name": "Denis Lukianov",
        "email": "denis@voxelsoft.com",
        "time": "Wed Sep 14 20:53:42 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 14 20:53:42 2005 -0700"
      },
      "message": "[MCAST]: Fix MCAST_EXCLUDE line dupes\n\nThis patch fixes line dupes at /ipv4/igmp.c and /ipv6/mcast.c in the  \n2.6 kernel, where MCAST_EXCLUDE is mistakenly used instead of  \nMCAST_INCLUDE.\n\nSigned-off-by: Denis Lukianov \u003cdenis@voxelsoft.com\u003e\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9c05989bb2264f0fa4fc95f81d2c4e6aa2eaa24d",
      "tree": "d0da2c6e210b47727097a77eefddfc7c3e2ea13e",
      "parents": [
        "84b42baef775b0e3415ccece17cf694f50326d01"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 21:44:39 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 21:44:39 2005 -0700"
      },
      "message": "[IPV6]: Fix warning in ip6_mc_msfilter.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9951f036fe8a4e6b21962559c64ff13b290ff01a",
      "tree": "3d4d557102bf8d8a96d5276de7183b57c9808711",
      "parents": [
        "917f2f105ea4bbba8604e3ed55233eebda7afe6a"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Fri Jul 08 17:47:28 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 17:47:28 2005 -0700"
      },
      "message": "[IPV4]: (INCLUDE,empty)/leave-group equivalence for full-state MSF APIs \u0026 errno fix\n\n1) Adds (INCLUDE, empty)/leave-group equivalence to the full-state \n   multicast source filter APIs (IPv4 and IPv6)\n\n2) Fixes an incorrect errno in the IPv6 leave-group (ENOENT should be\n   EADDRNOTAVAIL)\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "917f2f105ea4bbba8604e3ed55233eebda7afe6a",
      "tree": "bbab5de7093cec897f617649dd123946b579c4b7",
      "parents": [
        "8cdaaa15da58806ac3c75d96c40aef9e31445a25"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Fri Jul 08 17:45:16 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 17:45:16 2005 -0700"
      },
      "message": "[IPV4]: multicast API \"join\" issues\n\n1) In the full-state API when imsf_numsrc \u003d\u003d 0\n   errno should be \"0\", but returns EADDRNOTAVAIL\n\n2) An illegal filter mode change\n   errno should be EINVAL, but returns EADDRNOTAVAIL\n\n3) Trying to do an any-source option without IP_ADD_MEMBERSHIP\n   errno should be EINVAL, but returns EADDRNOTAVAIL\n\n4) Adds comments for the less obvious error return values\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e98231858bbfd2aca42f93d55133c2fca6df00f9",
      "tree": "e7100bf038e70a840aa0e69afc75d217e210522e",
      "parents": [
        "18b8afc771102b1b6af97962808291a7d27f52af"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 21 14:02:15 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 14:02:15 2005 -0700"
      },
      "message": "[NETFILTER]: Restore netfilter assumptions in IPv6 multicast\n\nNetfilter assumes that skb-\u003edata \u003d\u003d skb-\u003enh.ipv6h\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c9e3e8b6958e02230079e6817862ea2968509866",
      "tree": "296b30b9e208d37b1cdfa6d40ad785abb1487bd9",
      "parents": [
        "0d51aa80a9b1db43920c0770c3bb842dd823c005"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Tue Jun 21 13:58:25 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 13:58:25 2005 -0700"
      },
      "message": "[IPV6]: multicast join and misc\n\nHere is a simplified version of the patch to fix a bug in IPv6\nmulticasting. It:\n\n1) adds existence check \u0026 EADDRINUSE error for regular joins\n2) adds an exception for EADDRINUSE in the source-specific multicast\n        join (where a prior join is ok)\n3) adds a missing/needed read_lock on sock_mc_list; would\u0027ve raced\n        with destroying the socket on interface down without\n4) adds a \"leave group\" in the (INCLUDE, empty) source filter case.\n        This frees unneeded socket buffer memory, but also prevents\n        an inappropriate interaction among the 8 socket options that\n        mess with this. Some would fail as if in the group when you\n        aren\u0027t really.\n\nItem #4 had a locking bug in the last version of this patch; rather than\nremoving the idev-\u003elock read lock only, I\u0027ve simplified it to remove\nall lock state in the path and treat it as a direct \"leave group\" call for\nthe (INCLUDE,empty) case it covers. Tested on an MP machine. :-)\n\nMuch thanks to HoerdtMickael \u003choerdt@clarinet.u-strasbg.fr\u003e who\nreported the original bug.\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
