)]}'
{
  "log": [
    {
      "commit": "2ff52f282cf287d60e9eda1f3b5ec83e00a86130",
      "tree": "1838d36bbe158bb5e82d7f4b5b699e8b685930e1",
      "parents": [
        "5d0dbc4a9b2d325458dcbf9a8329bd1d2cc7bd7e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Nov 28 00:48:32 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:53 2006 -0800"
      },
      "message": "[TCP]: Change tcp_header_len member in tcp_sock to u16\n\nWith this we eliminate the last hole in struct tcp_sock.\n\nEnd result:\n\n[acme@newtoy net-2.6.20]$ codiff -sV /tmp/tcp.o.before net/ipv4/tcp.o\n/pub/scm/linux/kernel/git/acme/net-2.6.20/net/ipv4/tcp.c:\n  struct tcp_sock |   -4\n    tcp_header_len;\n     from: int                   /*  1000(0)     4(0) */\n     to:   u16                   /*  1000(0)     2(0) */\n 1 struct changed\n[acme@newtoy net-2.6.20]$\n\nNow sizeof(tcp_sock) is just...\n\n[acme@newtoy net-2.6.20]$ pahole --sizes ../OUTPUT/qemu/net-2.6.20/net/ipv4/tcp.o | grep -w tcp_sock\nstruct tcp_sock: 1500 0\n\n1500 bytes ;-)\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "d5c42c0ec4f7fd5a4e19e33a2d561758b67c55c8",
      "tree": "e5967dea50bc2b4c06a4d936d9b4b776d31ff24e",
      "parents": [
        "850db6b8c53ff12eadee9ef2aa69360c06bce057"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Nov 27 17:58:02 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:47 2006 -0800"
      },
      "message": "[NET]: Pack struct hh_cache\n\n[acme@newtoy net-2.6.20]$ pahole net/ipv4/tcp.o hh_cache\n/* /pub/scm/linux/kernel/git/acme/net-2.6.20/include/linux/netdevice.h:190 */\nstruct hh_cache {\n        struct hh_cache *          hh_next;              /*     0     4 */\n        atomic_t                   hh_refcnt;            /*     4     4 */\n        __be16                     hh_type;              /*     8     2 */\n\n        /* XXX 2 bytes hole, try to pack */\n\n        int                        hh_len;               /*    12     4 */\n        int                        (*hh_output)();       /*    16     4 */\n        rwlock_t                   hh_lock;              /*    20    36 */\n        long unsigned int          hh_data[24];          /*    56    96 */\n}; /* size: 152, sum members: 150, holes: 1, sum holes: 2 */\n\n[acme@newtoy net-2.6.20]$ find net -name \"*.[ch]\" | xargs grep \u0027hh_len.\\+\u003d\u0027 | sort -u\nnet/atm/br2684.c:               hh-\u003ehh_len \u003d PADLEN + ETH_HLEN;\nnet/ethernet/eth.c:     hh-\u003ehh_len \u003d ETH_HLEN;\nnet/ipv4/ipconfig.c:    int hh_len \u003d LL_RESERVED_SPACE(dev);\nnet/ipv4/ip_output.c:   hh_len \u003d LL_RESERVED_SPACE(rt-\u003eu.dst.dev);\nnet/ipv4/ip_output.c:   int hh_len \u003d LL_RESERVED_SPACE(dev);\nnet/ipv4/netfilter.c:   hh_len \u003d (*pskb)-\u003edst-\u003edev-\u003ehard_header_len;\nnet/ipv4/raw.c: hh_len \u003d LL_RESERVED_SPACE(rt-\u003eu.dst.dev);\nnet/ipv6/ip6_output.c:  hh_len \u003d LL_RESERVED_SPACE(rt-\u003eu.dst.dev);\nnet/ipv6/netfilter/ip6t_REJECT.c:       hh_len \u003d (dst-\u003edev-\u003ehard_header_len + 15)\u0026~15;\nnet/ipv6/raw.c: hh_len \u003d LL_RESERVED_SPACE(rt-\u003eu.dst.dev);\n[acme@newtoy net-2.6.20]$\n\n[acme@newtoy net-2.6.20]$ find include -name \"*.h\" | xargs grep \u0027define ETH_HLEN\u0027\ninclude/linux/if_ether.h:#define ETH_HLEN       14              /* Total octets in header.       */\n\n        (((dev)-\u003ehard_header_len\u0026~(HH_DATA_MOD - 1)) + HH_DATA_MOD)\n\n[acme@newtoy net-2.6.20]$ pahole net/ipv4/tcp.o net_device | grep hard_header_len\n        short unsigned int         hard_header_len;      /*   106     2 */\n[acme@newtoy net-2.6.20]$\n\nSo I think we\u0027re safe in turning hh_len an u16, end result:\n\n[acme@newtoy net-2.6.20]$ codiff -sV /tmp/tcp.o.before net/ipv4/tcp.o\n/pub/scm/linux/kernel/git/acme/net-2.6.20/net/ipv4/tcp.c:\n  struct hh_cache |   -4\n    hh_len;\n     from: int                   /*    12(0)     4(0) */\n     to:   u16                   /*    10(0)     2(0) */\n 1 struct changed\n[acme@newtoy net-2.6.20]$\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "e3703b3de1f049b38733ba520e5038f23063068e",
      "tree": "3566516bc8b87c8c8d78b0c3287761c8e2f49a2b",
      "parents": [
        "4e9b82693542003b028c8494e9e3c49615b91ce7"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Mon Nov 27 09:27:07 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:44 2006 -0800"
      },
      "message": "[RTNETLINK]: Add rtnl_put_cacheinfo() to unify some code\n\nIPv4, IPv6, and DECNet all use struct rta_cacheinfo in a similiar\nway, therefore rtnl_put_cacheinfo() is added to reuse code.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4e9b82693542003b028c8494e9e3c49615b91ce7",
      "tree": "955620d0b859b3e5817faafcbe7de6b355bb7d05",
      "parents": [
        "d61c167dd0797a16584f7a922dd5d50efad1d28a"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Mon Nov 27 09:25:58 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:43 2006 -0800"
      },
      "message": "[NETLINK]: Remove unused dst_pid field in netlink_skb_parms\n\nThe destination PID is passed directly to netlink_unicast()\nrespectively netlink_multicast().\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d61c167dd0797a16584f7a922dd5d50efad1d28a",
      "tree": "aeb6fd3b1240a69c1e8ba7c0e859a7fa253f161a",
      "parents": [
        "5e19e3fcd7351de1ca87c4797cca27ba55c7e55e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Nov 27 12:31:45 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:42 2006 -0800"
      },
      "message": "[NET]: Add documentation for TFRC structures\n\nThis adds documentation for the TFRC structure fields.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "ff1dcadb1b55dbf471c5ed109dbbdf06bd19ef3b",
      "tree": "cbcd17d33ecc52c90d218b43c5aec430be448058",
      "parents": [
        "5b14027bf2132c0631ea9f3be11ced89a5057220"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 18:07:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:18 2006 -0800"
      },
      "message": "[NET]: Split skb-\u003ecsum\n\n... into anonymous union of __wsum and __u32 (csum and csum_offset resp.)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "962c837275e8a8c1df41f1882e971636093cdee4",
      "tree": "e46cef772f088ec4aeeca5f7197d85796e864431",
      "parents": [
        "3dbe86566ed262dae3b5472b9360cb5b65d42716"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:26:08 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:12 2006 -0800"
      },
      "message": "[SCTP]: Netfilter sctp annotations.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f3ffaf14681e3cad61006873be8656ab41b793e0",
      "tree": "24bdf0bca31af7af599ae1e470371583aaa85c95",
      "parents": [
        "89c89458152c4d387eeca6532b6e50780fc59f8b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 16:59:12 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:16 2006 -0800"
      },
      "message": "[SCTP]: Annotate SCTP headers.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "82e3ab9dbeebd5c8d5402ad1607d22086271a56d",
      "tree": "23f66bf5a801fc80024f19f502142a2e1927c992",
      "parents": [
        "455431739ca2f4c7f02d0a5979559ac5a68a6f95"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Mon Nov 20 19:19:32 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:24:42 2006 -0800"
      },
      "message": "[DCCP]: Adds the tx buffer sysctls\n\nThis one got lost on the way from Ian to Gerrit to me, fix it.\n\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "bac0dff6cd194f7a28f7e840c9b6a7aa71c6ef97",
      "tree": "a2245146d7a2ee09b902705f2b5bec42d7608739",
      "parents": [
        "d43584c8bf851145ed7ec6d148916a01979040f4"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sun Nov 19 14:15:05 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:24:33 2006 -0800"
      },
      "message": "[BNX2]: Add 5709 PCI ID.\n\nAdd PCI ID and detection for 5709 copper and SerDes chips.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1f61ab5ca5cca939a6509892d84b34849e155036",
      "tree": "0a2f131065712c0526690ca0ac72970d62b9001d",
      "parents": [
        "5a5a852e45b651c71dfeb3972b30d58742f8941e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:44:08 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:44 2006 -0800"
      },
      "message": "[NET]: Preliminaty annotation of skb-\u003ecsum.\n\nIt\u0027s still not completely right; we need to split it into anon unions\nof __wsum and unsigned - for cases when we use it for partial checksum\nand for offset of checksum in skb\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "43bc0ca7eadc024e9e5b935fa5e0892df4fec9eb",
      "tree": "8e25b4ab9050c3fa5d47b38fced544b5587bcdd8",
      "parents": [
        "f9214b2627fb8582af1986afc4aed5942086a535"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:43:23 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:42 2006 -0800"
      },
      "message": "[NET]: netfilter checksum annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b51655b958dfb1176bfcf99466231fdbef8751ff",
      "tree": "a53d0ec00d8db4169ba8c1c487fffbd34d6dde03",
      "parents": [
        "b1550f221255f7dd06048d832bf0f3d166840e1c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:40:42 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:38 2006 -0800"
      },
      "message": "[NET]: Annotate __skb_checksum_complete() and friends.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81d77662763ae527ba3a9b9275467901aaab7dfd",
      "tree": "c0280981515d052535f24ac89cbb135dc68abe55",
      "parents": [
        "2bbbc86890ac4c911c5057f69af93853e52a42a8"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:37:33 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:36 2006 -0800"
      },
      "message": "[NET]: Annotate skb_copy_and_csum_bits() and callers.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2bbbc86890ac4c911c5057f69af93853e52a42a8",
      "tree": "f05aa0eea53312afa5829a80da35d4500d7a1b52",
      "parents": [
        "5f92a7388a29594d6c365b23a48d4bb8299a3ea7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:37:14 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:35 2006 -0800"
      },
      "message": "[NET]: Annotate skb_checksum() and callers.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5084205faf45384fff25c4cf77dd5c96279283ad",
      "tree": "9a5a3cb74bf64a6ec4c1b77d7805b256978943ca",
      "parents": [
        "44bb93633f57a55979f3c2589b10fd6a2bfc7c08"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:36:34 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:33 2006 -0800"
      },
      "message": "[NET]: Annotate callers of csum_partial_copy_...() and csum_and_copy...() 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": "44bb93633f57a55979f3c2589b10fd6a2bfc7c08",
      "tree": "09dff6f9e3c9d21c8d06f3a1ec73609a1942c9da",
      "parents": [
        "868c86bcb5bdea7ed8d45979b17bb919af9254db"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:36:14 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:32 2006 -0800"
      },
      "message": "[NET]: Annotate csum_partial() 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": "9981a0e36a572e9fcf84bfab915fdc93bed0e3c9",
      "tree": "3c64dba5b233b97417f3c46135607bfc19e2182f",
      "parents": [
        "56649d5d3c4cb0fe6dd34808ca9f9208d84130ab"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:24:30 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:26 2006 -0800"
      },
      "message": "[NET]: Annotate checksums in on-the-wire packets.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2bc357987a6510e61d33f3b20fa989fb2b6a10b8",
      "tree": "22f185872d0d3b5fa33c47fdbb0054e5240e5274",
      "parents": [
        "3277c39f8d706afb6fefc02f49563a73bbd405b9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:14:18 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:00 2006 -0800"
      },
      "message": "[NET]: Introduce types for checksums.\n\nNew types - for 16bit checksums and \"unfolded\" 32bit variant.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a64b78a077a71c9b9c0c1b0be699083379783c3d",
      "tree": "c91a18fcbde001ddd1b129075446da28a90beb07",
      "parents": [
        "47c183fa5ea7feebc356da8ccbd9105a41f8e534"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:12:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:57 2006 -0800"
      },
      "message": "[NET]: Annotate net_srandom().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "47c183fa5ea7feebc356da8ccbd9105a41f8e534",
      "tree": "632e361178e7af9070c68ff0d7784a6a5d79c65e",
      "parents": [
        "30d492da738a8d5f4ec884b3e1a13eef97714994"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:11:51 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:56 2006 -0800"
      },
      "message": "[BRIDGE]: Annotations.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "30d492da738a8d5f4ec884b3e1a13eef97714994",
      "tree": "6184b7fd083a41315ce84379fae0faf0c1749462",
      "parents": [
        "42d224aa170a4f7446cea6c972d9302d524545e5"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:11:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:55 2006 -0800"
      },
      "message": "[ATM]: Annotations.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "42d224aa170a4f7446cea6c972d9302d524545e5",
      "tree": "f4944a423c718ba4f38afce66103e915d86c75e6",
      "parents": [
        "ef296f56f8501f3ac68b8d44f63205f544126733"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:11:08 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:54 2006 -0800"
      },
      "message": "[NETFILTER]: More trivial annotations.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b09b845ca6724c3bbdc00c0cb2313258c7189ca9",
      "tree": "f8f60525deddfbe188ad2428a97988f9142f0369",
      "parents": [
        "714e85be3557222bc25f69c252326207c900a7db"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 20:52:19 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:51 2006 -0800"
      },
      "message": "[RANDOM]: Annotate random.h IP helpers.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "714e85be3557222bc25f69c252326207c900a7db",
      "tree": "cb59a6d0a94245dc8575507386af1be31dd7fad9",
      "parents": [
        "252e33467a3b016f20dd8df12269cef3b167f21e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 20:51:49 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:50 2006 -0800"
      },
      "message": "[IPV6]: Assorted trivial endianness annotations.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba4e58eca8aa9473b44fdfd312f26c4a2e7798b3",
      "tree": "700f8f989f48da480beb83b983637cfd2b5a3f67",
      "parents": [
        "6051e2f4fb68fc8e5343db58fa680ece376f405c"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Nov 27 11:10:57 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:46 2006 -0800"
      },
      "message": "[NET]: Supporting UDP-Lite (RFC 3828) in Linux\n\nThis is a revision of the previously submitted patch, which alters\nthe way files are organized and compiled in the following manner:\n\n\t* UDP and UDP-Lite now use separate object files\n\t* source file dependencies resolved via header files\n\t  net/ipv{4,6}/udp_impl.h\n\t* order of inclusion files in udp.c/udplite.c adapted\n\t  accordingly\n\n[NET/IPv4]: Support for the UDP-Lite protocol (RFC 3828)\n\nThis patch adds support for UDP-Lite to the IPv4 stack, provided as an\nextension to the existing UDPv4 code:\n        * generic routines are all located in net/ipv4/udp.c\n        * UDP-Lite specific routines are in net/ipv4/udplite.c\n        * MIB/statistics support in /proc/net/snmp and /proc/net/udplite\n        * shared API with extensions for partial checksum coverage\n\n[NET/IPv6]: Extension for UDP-Lite over IPv6\n\nIt extends the existing UDPv6 code base with support for UDP-Lite\nin the same manner as per UDPv4. In particular,\n        * UDPv6 generic and shared code is in net/ipv6/udp.c\n        * UDP-Litev6 specific extensions are in net/ipv6/udplite.c\n        * MIB/statistics support in /proc/net/snmp6 and /proc/net/udplite6\n        * support for IPV6_ADDRFORM\n        * aligned the coding style of protocol initialisation with af_inet6.c\n        * made the error handling in udpv6_queue_rcv_skb consistent;\n          to return `-1\u0027 on error on all error cases\n        * consolidation of shared code\n\n[NET]: UDP-Lite Documentation and basic XFRM/Netfilter support\n\nThe UDP-Lite patch further provides\n        * API documentation for UDP-Lite\n        * basic xfrm support\n        * basic netfilter support for IPv4 and IPv6 (LOG target)\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6051e2f4fb68fc8e5343db58fa680ece376f405c",
      "tree": "b061f38f00100e40a3c5b9f33e3acb58c5aa3e7b",
      "parents": [
        "04561c1fe7b067a8250e6caaf168256783580c4c"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Tue Nov 14 19:54:19 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:45 2006 -0800"
      },
      "message": "[IPv6] prefix: Convert RTM_NEWPREFIX notifications to use the new netlink api\n\nRTM_GETPREFIX is completely unused and is thus removed.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cfb6eeb4c860592edd123fdea908d23c6ad1c7dc",
      "tree": "361c073622faa540ef6602ef1b0a6e8c0a17fc60",
      "parents": [
        "bf6bce71eae386dbc37f93af7e5ad173450d9945"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Nov 14 19:07:45 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:39 2006 -0800"
      },
      "message": "[TCP]: MD5 Signature Option (RFC2385) support.\n\nBased on implementation by Rick Payne.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bf6bce71eae386dbc37f93af7e5ad173450d9945",
      "tree": "e068d1314dc1a3eb8e2cb26123814ddf939472ff",
      "parents": [
        "5de4a473bda49554e4e9bd93b78f43c49a7ea69c"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Oct 26 15:46:56 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:38 2006 -0800"
      },
      "message": "netpoll header cleanup\n\nAs Steve left netpoll beast, hopefully not to return soon.\nHe noticed that the header was messy. He straightened it\nup and polished it a little, then waved goodbye.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\n"
    },
    {
      "commit": "5de4a473bda49554e4e9bd93b78f43c49a7ea69c",
      "tree": "13a74efb896968e8b535561d5024e3cc8a2f19cc",
      "parents": [
        "2bdfe0baeca0e2750037b8fba71905c00ac3c515"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Oct 26 15:46:55 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:37 2006 -0800"
      },
      "message": "netpoll queue cleanup\n\nThe beast had a long and not very happy history. At one\npoint, a friend (netdump) had asked that he open up a little.\nWell, the friend was long gone now, and the beast had\nthis dangling piece hanging (netpoll_queue).\n\nIt wasn\u0027t hard to stitch the netpoll_queue back in\nwhere it belonged and make everything tidy.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\n"
    },
    {
      "commit": "2bdfe0baeca0e2750037b8fba71905c00ac3c515",
      "tree": "feb34f19d0f280fe4b54bc49e49ab05ea7f085c7",
      "parents": [
        "6c43ff18f91e54aa7555d8ae4f26eab7da5bce68"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Oct 26 15:46:54 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:36 2006 -0800"
      },
      "message": "netpoll retry cleanup\n\nThe netpoll beast was still not happy. If the beast got\nclogged pipes, it tended to stare blankly off in space\nfor a long time.\n\nThe problem couldn\u0027t be completely fixed because the\nbeast talked with irq\u0027s disabled. But it could be made\nless painful and shorter.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\n"
    },
    {
      "commit": "b6cd27ed33886a5ffaf0925a6d98e13e18e8a1af",
      "tree": "9657515409d89b8b43134e0a29f7c3730901277c",
      "parents": [
        "93ec2c723e3f8a216dde2899aeb85c648672bc6b"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Oct 26 15:46:51 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:33 2006 -0800"
      },
      "message": "netpoll per device txq\n\nWhen the netpoll beast got really busy, it tended to clog\nthings, so it stored them for later. But the beast was putting\nall it\u0027s skb\u0027s in one basket. This was bad because maybe some\npipes were clogged and others were not.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\n"
    },
    {
      "commit": "93ec2c723e3f8a216dde2899aeb85c648672bc6b",
      "tree": "a70a10812c2340edfce0d1010175535aa344d1c9",
      "parents": [
        "a1bcfacd0577ff477e934731d4ceb3d26eab947d"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Oct 26 15:46:50 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:32 2006 -0800"
      },
      "message": "netpoll info leak\n\nAfter looking harder, Steve noticed that the netpoll\nbeast leaked a little every time it shutdown for a nap.\nNot a big leak, but a nuisance kind of thing.\n\nHe took out his refcount duct tape and patched the\nleak. It was overkill since there was already other\nlocking in that area, but it looked clean and wouldn\u0027t\nattract fleas.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\n"
    },
    {
      "commit": "09dbc3895e3242346bd434dae743c456fd28fc6a",
      "tree": "a7bc1d0879b025152bff9e4a0ba44beaa5da654b",
      "parents": [
        "c02fdc0e81e9c735d8d895af1e201b235df326d8"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 14 12:57:34 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:30 2006 -0800"
      },
      "message": "[DCCP]: Miscellaneous code tidy-ups\n\nThis patch does not change code; it performs some trivial clean/tidy-ups:\n\n  * removal of a `debug_prefix\u0027 string in favour of the\n    already existing dccp_role(sk)\n\n  * add documentation of structures and constants\n\n  * separated out the cases for invalid packets (step 1\n    of the packet validation)\n\n  * removing duplicate statements\n\n  * combining declaration \u0026 initialisation\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "c02fdc0e81e9c735d8d895af1e201b235df326d8",
      "tree": "f30af6744e4ecea9e5bb12483addb306d49ce458",
      "parents": [
        "6a128e053e75a5f1be9fb53d0d53159f88197c61"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 14 12:48:10 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:29 2006 -0800"
      },
      "message": "[DCCP]: Make feature negotiation more readable\n\nThis patch replaces cryptic feature negotiation messages of type\n\nOct 31 15:42:20 kernel: dccp_feat_change: feat change type\u003d32 feat\u003d1\nOct 31 15:42:21 kernel: dccp_feat_change: feat change type\u003d34 feat\u003d1\nOct 31 15:42:21 kernel: dccp_feat_change: feat change type\u003d32 feat\u003d5\n\ninto ones of type:\n\nNov  2 13:54:45 kernel: dccp_feat_change: ChangeL(CCID (1), 3)\nNov  2 13:54:45 kernel: dccp_feat_change: ChangeR(CCID (1), 3)\nNov  2 13:54:45 kernel: dccp_feat_change: ChangeL(Ack Ratio (5), 2)\n\nAlso,\n\t* completed the feature number list wrt RFC 4340 sec. 6.4\n\t* annotating which ones have been implemented so far\n\t* implemented rudimentary sanity checking in feat.c (FIXMEs)\n\t* some minor fixes\n\nCommiter note: uninlined dccp_feat_name and dccp_feat_typename, for\n               consistency with dccp_{state,packet}_name, that, BTW,\n               should be compiled only if CONFIG_IP_DCCP_DEBUG is\n               selected, leaving this to another cset tho. Also\n               shortened dccp_feat_negotiation_debug to dccp_feat_debug.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "b9df3cb8cf9a96e63dfdcd3056a9cbc71f2459e7",
      "tree": "46d19124b1bbfd9eaa26af3d6ba2293b4e8f326d",
      "parents": [
        "1ed176a801b83915b7c8ab80e0a2a6376a2d6051"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 14 11:21:36 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:27 2006 -0800"
      },
      "message": "[TCP/DCCP]: Introduce net_xmit_eval\n\nThroughout the TCP/DCCP (and tunnelling) code, it often happens that the\nreturn code of a transmit function needs to be tested against NET_XMIT_CN\nwhich is a value that does not indicate a strict error condition.\n\nThis patch uses a macro for these recurring situations which is consistent\nwith the already existing macro net_xmit_errno, saving on duplicated code.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "90833aa4f496d69ca374af6acef7d1614c8693ff",
      "tree": "dbac818cc40ab12d493c45778febf6b7a768f757",
      "parents": [
        "d7f7365f5776723da6df73540d855069c2daaa5c"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Nov 13 16:02:22 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:23 2006 -0800"
      },
      "message": "[NET]: The scheduled removal of the frame diverter.\n\nThis patch contains the scheduled removal of the frame diverter.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e2e9e92bd723244ea20fa488b1780111f2b05e1",
      "tree": "2e859b2b0aa17d2e18927fe110cdefad6c4f5fe6",
      "parents": [
        "e11d9d30802278af22e78d8c10f348b683670cd9"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Nov 13 13:23:52 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:18 2006 -0800"
      },
      "message": "[DCCP]: Add sysctls to control retransmission behaviour\n\nThis adds 3 sysctls which govern the retransmission behaviour of DCCP control\npackets (3way handshake, feature negotiation).\n\nIt removes 4 FIXMEs from the code.\n\nThe close resemblance of sysctl variables to their TCP analogues is emphasised\nnot only by their name, but also by giving them the same initial values.\nThis is useful since there is not much practical experience with DCCP yet.\n\nFurthermore, with regard to the previous patch, it is now possible to limit\nthe number of keepalive-Responses by setting net.dccp.default.request_retries\n(also a bit like in TCP).\n\nLastly, added documentation of all existing DCCP sysctls.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "339bf98ffc6a8d8eb16fc532ac57ffbced2f8a68",
      "tree": "499ad948863d2753ca10283dcf006ad28954538e",
      "parents": [
        "a94f723d595ee085f81b1788d18e031af7eeba91"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Fri Nov 10 14:10:15 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:11 2006 -0800"
      },
      "message": "[NETLINK]: Do precise netlink message allocations where possible\n\nAccount for the netlink message header size directly in nlmsg_new()\ninstead of relying on the caller calculate it correctly.\n\nReplaces error handling of message construction functions when\nconstructing notifications with bug traps since a failure implies\na bug in calculating the size of the skb.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nAcked-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f4e5fff1e4d46714ea554fd83e44eab534e8b11",
      "tree": "4b14344fd825bbcefb6e8514e98e3e796b2dc1bd",
      "parents": [
        "a11d206d0f88e092419877c7f706cafb5e1c2e57"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Nov 10 17:43:06 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:09 2006 -0800"
      },
      "message": "[DCCP]: Support for partial checksums (RFC 4340, sec. 9.2)\n\nThis patch does the following:\n  a) introduces variable-length checksums as specified in [RFC 4340, sec. 9.2]\n  b) provides necessary socket options and documentation as to how to use them\n  c) basic support and infrastructure for the Minimum Checksum Coverage feature\n     [RFC 4340, sec. 9.2.1]: acceptability tests, user notification and user\n     interface\n\nIn addition, it\n\n (1) fixes two bugs in the DCCPv4 checksum computation:\n \t* pseudo-header used checksum_len instead of skb-\u003elen\n\t* incorrect checksum coverage calculation based on dccph_x\n (2) removes dccp_v4_verify_checksum() since it reduplicates code of the\n     checksum computation; code calling this function is updated accordingly.\n (3) now uses skb_checksum(), which is safer than checksum_partial() if the\n     sk_buff has is a non-linear buffer (has pages attached to it).\n (4) fixes an outstanding TODO item:\n        * If P.CsCov is too large for the packet size, drop packet and return.\n\nThe code has been tested with applications, the latest version of tcpdump now\ncomes with support for partial DCCP checksums.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "9b42078ed6edfe04e9dc9a59b946ad912aeef717",
      "tree": "d3d20e17aa85e1bb16b99397f98f151d197b3177",
      "parents": [
        "89e7e57778ecd8744fee97491300f05a9fb1388a"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Nov 10 11:22:32 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:55 2006 -0800"
      },
      "message": "[DCCP]: Combine allocating \u0026 zeroing header space on skb\n\nThis is a code simplification:\nit combines three often recurring operations into one inline function,\n\n        * allocate `len\u0027 bytes header space in skb\n        * fill these `len\u0027 bytes with zeroes\n        * cast the start of this header space as dccp_hdr\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "ce7bc3bf15cbf5dc5a5587ccb6b04c5b4dde4336",
      "tree": "20ccf7f98ac5d1aabbc706fa876e8f361219db97",
      "parents": [
        "3ff825b28d3345ef381eceae22bf9d92231f23dc"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Nov 09 16:35:15 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:49 2006 -0800"
      },
      "message": "[TCP]: Restrict congestion control choices.\n\nAllow normal users to only choose among a restricted set of congestion\ncontrol choices.  The default is reno and what ever has been configured\nas default. But the policy can be changed by administrator at any time.\n\nFor example, to allow any choice:\n    cp /proc/sys/net/ipv4/tcp_available_congestion_control \\\n       /proc/sys/net/ipv4/tcp_allowed_congestion_control\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ff825b28d3345ef381eceae22bf9d92231f23dc",
      "tree": "c3ca6ec1888ff912e0434f6621ecb2e46e8826f3",
      "parents": [
        "b68dbcab1dc70938fa5516d0ee82c0bf94e9a768"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Nov 09 16:32:06 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:48 2006 -0800"
      },
      "message": "[TCP]: Add tcp_available_congestion_control sysctl.\n\nCreate /proc/sys/net/ipv4/tcp_available_congestion_control\nthat reflects currently available TCP choices.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3dfbcc411e461db51a1ac1aa1c6ebe2c5a0275a0",
      "tree": "14637fc46cade241f7156f208c12d9978d948b8f",
      "parents": [
        "1f6c9557e8206757c91b5737bb8dbd5b1ae3a773"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Thu Nov 09 15:23:20 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:42 2006 -0800"
      },
      "message": "[NET] rules: Add support to invert selectors\n\nIntroduces a new flag FIB_RULE_INVERT causing rules to apply\nif the specified selector doesn\u0027t match.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b8964ed9fa727109c9084abc807652ebfb681c18",
      "tree": "03d0c7ffb21fcba9a538c445e0fb563e392491a2",
      "parents": [
        "5f300893fdd3b6e30a226c9a848eaa39b99a6431"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Thu Nov 09 15:22:18 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:41 2006 -0800"
      },
      "message": "[NET] rules: Protocol independant mark selector\n\nMove mark selector currently implemented per protocol into\nthe protocol independant part.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "82e91ffef60e6eba9848fe149ce1eecd2b5aef12",
      "tree": "9ccc6a518a1f678ae15cfb3a59c05127286cff96",
      "parents": [
        "0afc46c4683df512eef34a71a85065dc555c2af2"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Thu Nov 09 15:19:14 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:38 2006 -0800"
      },
      "message": "[NET]: Turn nfmark into generic mark\n\nnfmark is being used in various subsystems and has become\nthe defacto mark field for all kinds of packets. Therefore\nit makes sense to rename it to `mark\u0027 and remove the\ndependency on CONFIG_NETFILTER.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "67f83cbf081a70426ff667e8d14f94e13ed3bdca",
      "tree": "776a40733eacb9071478f865e6791daa3f6fd602",
      "parents": [
        "6b877699c6f1efede4545bcecc367786a472eedb"
      ],
      "author": {
        "name": "Venkat Yekkirala",
        "email": "vyekkirala@trustedcs.com",
        "time": "Wed Nov 08 17:04:26 2006 -0600"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:34 2006 -0800"
      },
      "message": "SELinux: Fix SA selection semantics\n\nFix the selection of an SA for an outgoing packet to be at the same\ncontext as the originating socket/flow. This eliminates the SELinux\npolicy\u0027s ability to use/sendto SAs with contexts other than the socket\u0027s.\n\nWith this patch applied, the SELinux policy will require one or more of the\nfollowing for a socket to be able to communicate with/without SAs:\n\n1. To enable a socket to communicate without using labeled-IPSec SAs:\n\nallow socket_t unlabeled_t:association { sendto recvfrom }\n\n2. To enable a socket to communicate with labeled-IPSec SAs:\n\nallow socket_t self:association { sendto };\nallow socket_t peer_sa_t:association { recvfrom };\n\nSigned-off-by: Venkat Yekkirala \u003cvyekkirala@TrustedCS.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "6b877699c6f1efede4545bcecc367786a472eedb",
      "tree": "c0a60dc90578fa9f16d4496e2700bc285eab47c0",
      "parents": [
        "c1a856c9640c9ff3d70bbd8214b6a0974609eef8"
      ],
      "author": {
        "name": "Venkat Yekkirala",
        "email": "vyekkirala@trustedcs.com",
        "time": "Wed Nov 08 17:04:09 2006 -0600"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:33 2006 -0800"
      },
      "message": "SELinux: Return correct context for SO_PEERSEC\n\nFix SO_PEERSEC for tcp sockets to return the security context of\nthe peer (as represented by the SA from the peer) as opposed to the\nSA used by the local/source socket.\n\nSigned-off-by: Venkat Yekkirala \u003cvyekkirala@TrustedCS.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "c1a856c9640c9ff3d70bbd8214b6a0974609eef8",
      "tree": "76166bf784edd968ffac8c3dcc607d73580c509a",
      "parents": [
        "e8db8c99100750ade5a9b4072b9469cab718a5b7"
      ],
      "author": {
        "name": "Venkat Yekkirala",
        "email": "vyekkirala@trustedcs.com",
        "time": "Wed Nov 08 17:03:44 2006 -0600"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:31 2006 -0800"
      },
      "message": "SELinux: Various xfrm labeling fixes\n\nSince the upstreaming of the mlsxfrm modification a few months back,\ntesting has resulted in the identification of the following issues/bugs that\nare resolved in this patch set.\n\n1. Fix the security context used in the IKE negotiation to be the context\n   of the socket as opposed to the context of the SPD rule.\n\n2. Fix SO_PEERSEC for tcp sockets to return the security context of\n   the peer as opposed to the source.\n\n3. Fix the selection of an SA for an outgoing packet to be at the same\n   context as the originating socket/flow.\n\nThe following would be the result of applying this patchset:\n\n- SO_PEERSEC will now correctly return the peer\u0027s context.\n\n- IKE deamons will receive the context of the source socket/flow\n  as opposed to the SPD rule\u0027s context so that the negotiated SA\n  will be at the same context as the source socket/flow.\n\n- The SELinux policy will require one or more of the\n  following for a socket to be able to communicate with/without SAs:\n\n  1. To enable a socket to communicate without using labeled-IPSec SAs:\n\n     allow socket_t unlabeled_t:association { sendto recvfrom }\n\n  2. To enable a socket to communicate with labeled-IPSec SAs:\n\n     allow socket_t self:association { sendto };\n     allow socket_t peer_sa_t:association { recvfrom };\n\nThis Patch: Pass correct security context to IKE for use in negotiation\n\nFix the security context passed to IKE for use in negotiation to be the\ncontext of the socket as opposed to the context of the SPD rule so that\nthe SA carries the label of the originating socket/flow.\n\nSigned-off-by: Venkat Yekkirala \u003cvyekkirala@TrustedCS.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "ae08e1f092210619fe49551aa3ed0dc0003d5880",
      "tree": "80e0ef51a052f811394b29bb19422feba80795bb",
      "parents": [
        "98a4a86128d7179b22365e16bf880e849e20bc7d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:27:11 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:26 2006 -0800"
      },
      "message": "[IPV6]: ip6_output annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "98a4a86128d7179b22365e16bf880e849e20bc7d",
      "tree": "b6270c203f6075118fd36b86a77bdf7a39da6566",
      "parents": [
        "0e11c91e1e912bc4db5b71607d149e7e9a77e756"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:26:51 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:25 2006 -0800"
      },
      "message": "[NETFILTER]: trivial annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0e11c91e1e912bc4db5b71607d149e7e9a77e756",
      "tree": "b04a580d0dd0598a8188ed6f67673ee5e20e02a0",
      "parents": [
        "3fbd418acc264e7069483d04165633ed3bfad80c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:26:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:24 2006 -0800"
      },
      "message": "[AF_PACKET]: annotate\n\nWeirdness: the third argument of socket() is net-endian\nhere.  Oh, well - it\u0027s documented in packet(7).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "90bcaf7b4a33bb9b100cc06869f0c033a870d4a0",
      "tree": "fb8307b99fd9779d17fdfb0c35d836a8438d424a",
      "parents": [
        "92d9ece7af9c84bfbd1ff640926fac5b573a09f7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:25:17 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:21 2006 -0800"
      },
      "message": "[IPV6]: flowlabels are net-endian\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d29ef86b0a497dd2c4f9601644a15392f7e21f73",
      "tree": "c4ac184e3d7366f6f8da5e83b3461b92bc45b589",
      "parents": [
        "d5a0a1e3109339090769e40fdaa62482fcf2a717"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:23:42 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:18 2006 -0800"
      },
      "message": "[AF_KEY]: annotate\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d5a0a1e3109339090769e40fdaa62482fcf2a717",
      "tree": "e151364d1930a90c551faae4fd85fb6fcd88baa3",
      "parents": [
        "4806126d78345ad8a99bca1367a8a39c08e19393"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:23:14 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:17 2006 -0800"
      },
      "message": "[IPV4]: encapsulation annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a27ee7a4dd30feda1954950b5840455a51ae1507",
      "tree": "e54bef249067f3aedeab20e7cb2cce05e3aca21b",
      "parents": [
        "04ce69093f91547d3a7c4fc815d2868195591340"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:21:21 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:13 2006 -0800"
      },
      "message": "[IPV6]: annotate icmpv6 headers\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5a874db4d9bfd8a4c6324d844a4d1c7cfa5cf2c4",
      "tree": "7e3451c3931a8c4124ca040a86e20fe8ba8c71aa",
      "parents": [
        "3e6c8cd5669c1202fe806ce3e13d701f20a71c7e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:19:38 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:09 2006 -0800"
      },
      "message": "[NET]: ipconfig and nfsroot annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e6c8cd5669c1202fe806ce3e13d701f20a71c7e",
      "tree": "d7412c66923db0093472215cfe352e66d7214ac1",
      "parents": [
        "d54a81d341af80875c201890500f727c8188dd9b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:19:09 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:08 2006 -0800"
      },
      "message": "[TIPC]: endianness annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "97be852f81c5bb114aab31974af2c061eb86a6de",
      "tree": "701a9c88eef7fc3692150f5dd7edb226a6089173",
      "parents": [
        "cdb54fac35812a21943f0e506e8e3b94b469a77c",
        "aae343d493df965ac3abec1bd97cccfe44a7d920"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sat Dec 02 15:08:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sat Dec 02 15:08:32 2006 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (118 commits)\n  [netdrvr] skge: build fix\n  [PATCH] NetXen: driver cleanup, removed unnecessary __iomem type casts\n  [PATCH] PHY: Add support for configuring the PHY connection interface\n  [PATCH] chelesio: transmit locking (plus bug fix).\n  [PATCH] chelsio: statistics improvement\n  [PATCH] chelsio: add MSI support\n  [PATCH] chelsio: use standard CRC routines\n  [PATCH] chelsio: cleanup pm3393 code\n  [PATCH] chelsio: add 1G swcixw aupport\n  [PATCH] chelsio: add support for other 10G boards\n  [PATCH] chelsio: remove unused mutex\n  [PATCH] chelsio: use kzalloc\n  [PATCH] chelsio: whitespace fixes\n  [PATCH] amd8111e use standard CRC lib\n  [PATCH] sky2: msi enhancements.\n  [PATCH] sky2: kfree_skb_any needed\n  [PATCH] sky2: fixes for Yukon EC_U chip revisions\n  [PATCH] sky2: add Dlink 560SX id\n  [PATCH] sky2: receive error handling fix\n  [PATCH] skge: don\u0027t clear MC state on link down\n  ...\n"
    },
    {
      "commit": "cdb54fac35812a21943f0e506e8e3b94b469a77c",
      "tree": "52b076a044b7fcfa9c14df4b4cac1ceff51ce689",
      "parents": [
        "37043318b12ea351c357d7bd8a184b63940f38d7",
        "8b7feff881b7e9f065ddd718a6841121207c3c19"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sat Dec 02 08:29:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sat Dec 02 08:29:04 2006 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/drzeus/mmc\n\n* \u0027for-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/drzeus/mmc:\n  mmc: correct request error handling\n  mmc: Flush block queue when removing card\n  mmc: sdhci high speed support\n  mmc: Support for high speed SD cards\n  mmc: Fix mmc_delay() function\n  mmc: Add support for mmc v4 wide-bus modes\n  [PATCH] mmc: Add support for mmc v4 high speed mode\n  trivial change for mmc/Kconfig: MMC_PXA does not mean only PXA255\n  Make general code cleanups\n  Add MMC_CAP_{MULTIWRITE,BYTEBLOCK} flags\n  Platform device error handling cleanup\n  Move register definitions away from the header file\n  Change OMAP_MMC_{READ,WRITE} macros to use the host pointer\n  Replace base with virt_base and phys_base\n  mmc: constify mmc_host_ops vectors\n  mmc: remove kernel_thread()\n"
    },
    {
      "commit": "e8a2b6a4207332a2d59628a12cece9e8c1d769e4",
      "tree": "31028a18413517ed3024450c20cd2e919441b437",
      "parents": [
        "cabdfb373ae74036225826ce260c16a8e260eb0b"
      ],
      "author": {
        "name": "Andy Fleming",
        "email": "afleming@freescale.com",
        "time": "Fri Dec 01 12:01:06 2006 -0600"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:33:11 2006 -0500"
      },
      "message": "[PATCH] PHY: Add support for configuring the PHY connection interface\n\nMost PHYs connect to an ethernet controller over a GMII or MII\ninterface.  However, a growing number are connected over\ndifferent interfaces, such as RGMII or SGMII.\n\nThe ethernet driver will tell the PHY what type of connection it\nis by setting it manually, or passing it in through phy_connect\n(or phy_attach).\n\nChanges include:\n* Updates to documentation\n* Updates to PHY Lib consumers\n* Changes to PHY Lib to add interface support\n* Some minor changes to whitespace in phy.h\n* gianfar driver now detects interface and passes appropriate\n  value to PHY Lib\nSigned-off-by: Andrew Fleming \u003cafleming@freescale.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f789dfdc44d5bbc04fb7f06e1e4eb682169acaaf",
      "tree": "e3981868399e1f35e538303eed20288d7a6777d7",
      "parents": [
        "7628b0a8c01a02966d2228bdf741ddedb128e8f8"
      ],
      "author": {
        "name": "Mariusz Kozlowski",
        "email": "m.kozlowski@tuxland.pl",
        "time": "Thu Nov 30 04:27:00 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:22:29 2006 -0500"
      },
      "message": "[PATCH] mv643xx_eth: fix unbalanced parentheses in macros\n\nSigned-off-by: Mariusz Kozlowski \u003cm.kozlowski@tuxland.pl\u003e\nSigned-off-by: Dale Farnsworth \u003cdale@farnsworth.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "52d78d63310d9818458fd9800d24a4d5425aeac7",
      "tree": "5bccf4be4efa9b716ece5e9caa8b9cd30a801fb6",
      "parents": [
        "c5cf9101fefae32df654da5f0e736ffbe28aefdc"
      ],
      "author": {
        "name": "Ayaz Abdulla",
        "email": "aabdulla@nvidia.com",
        "time": "Mon Nov 06 00:43:39 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:01 2006 -0500"
      },
      "message": "[PATCH] forcedeth: add new NVIDIA pci ids\n\nAdd pci device ids for the NVIDIA MCP67 chip.\n\nSigned-off-by: Ayaz Abdulla \u003caabdulla@nvidia.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "fe75f7471ba5604fe65435f717e3612a482c28cb",
      "tree": "bcec6b8e5e082f7040eae4619c879eb38db7cd2b",
      "parents": [
        "3d396eb17e9f8c5f59314078b45b88647591378d"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@web.de",
        "time": "Mon Oct 02 19:55:22 2006 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:58 2006 -0500"
      },
      "message": "[PATCH] wext: extend MLME support\n\nThis patch adds two new defines for the SIOCSIWMLME to cover all\nkinds MLMEs (well, except REASSOC) through a ioctl.\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@web.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "13df29f69749a61b5209d52b71fcbf7300e5d6fb",
      "tree": "b504f310983ed02dea77d6e4d6e815e44405bf39",
      "parents": [
        "c4b41c9f077392803cd548000f3a2312dcd4a122"
      ],
      "author": {
        "name": "Maciej W. Rozycki",
        "email": "macro@linux-mips.org",
        "time": "Tue Oct 03 16:18:28 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:55 2006 -0500"
      },
      "message": "[PATCH] 2.6.18: sb1250-mac: Missing inclusions from \u003clinux/phy.h\u003e\n\n The \u003clinux/phy.h\u003e uses some types and macros defined in\n\u003clinux/ethtool.h\u003e, \u003clinux/mii.h\u003e, \u003clinux/timer.h\u003e and \u003clinux/workqueue.h\u003e,\nbut fails to include these headers.\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\n\npatch-mips-2.6.18-20060920-include-phy-16\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c3e59d1e891f6140a346de2b8547e25133c716b0",
      "tree": "b2a669f625009a3a33f20f648bd654637323d296",
      "parents": [
        "b07e3c3a1db0ce399d2a1d04860e1b901927c05e",
        "aa414dff4f7bef29457592414551becdca72dd6b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:44:02 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:44:02 2006 -0800"
      },
      "message": "Merge branch \u0027upstream\u0027 of git://ftp.linux-mips.org/pub/scm/upstream-linus\n\n* \u0027upstream\u0027 of git://ftp.linux-mips.org/pub/scm/upstream-linus: (31 commits)\n  [MIPS] Remove duplicate ISA DMA code for 0 DMA channel case.\n  [MIPS] Remove unused definition of cpu_to_lelongp()\n  [MIPS] Remove userspace proofing from \u003casm/bitops.h\u003e.\n  [MIPS] Remove old junk left from old atomic_lock.\n  [MIPS] Use conditional traps for BUG_ON on MIPS II and better.\n  [MIPS] mips HPT cleanup: make clocksource_mips public\n  [MIPS] do_IRQ cleanup\n  [MIPS] Avoid dupliate D-cache flush on R400C / R4400 SC and MC variants.\n  [MIPS] Remove redundant r4k_blast_icache() calls\n  [MIPS] Work around bogus gcc warnings.\n  [MIPS] Fix double inclusions\n  [MIPS] use generic_handle_irq, handle_level_irq, handle_percpu_irq\n  [MIPS] IRQ cleanups\n  [MIPS] mips hpt cleanup: get rid of mips_hpt_init\n  [MIPS] PB1200: Remove duplicate definitions\n  [MIPS] Fix alignment hole in struct cache_desc; shrink struct.\n  [MIPS] Oprofile: kernel support for the R10000.\n  [MIPS] Remove unused R10000 performance counter definitions.\n  [MIPS] Add support for kexec\n  [MIPS] Don\u0027t print presence of WAIT instruction on bootup.\n  ...\n"
    },
    {
      "commit": "9641219825a54249d77d7aa1afa7d874a05c7f90",
      "tree": "94dae67a8804a070e2597b931d1e3335f08389fc",
      "parents": [
        "72a73a69f6a79266b8b4b18f796907b73a5c01e3",
        "94fcda1f8ab5e0cacc381c5ca1cc9aa6ad523576"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:58 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:58 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6: (103 commits)\n  usbcore: remove unused argument in autosuspend\n  USB: keep count of unsuspended children\n  USB hub: simplify remote-wakeup handling\n  USB: struct usb_device: change flag to bitflag\n  OHCI: make autostop conditional on CONFIG_PM\n  USB: Add autosuspend support to the hub driver\n  EHCI: Fix root-hub and port suspend/resume problems\n  USB: create a new thread for every USB device found during the probe sequence\n  USB: add driver for the USB debug devices\n  USB: added dynamic major number for USB endpoints\n  USB: pegasus error path not resetting task\u0027s state\n  USB: endianness fix for asix.c\n  USB: build the appledisplay driver\n  USB serial: replace kmalloc+memset with kzalloc\n  USB: hid-core: canonical defines for Apple USB device IDs\n  USB: idmouse cleanup\n  USB: make drivers/usb/core/driver.c:usb_device_match() static\n  USB: lh7a40x_udc remove double declaration\n  USB: pxa2xx_udc recognizes ixp425 rev b0 chip\n  usbtouchscreen: add support for DMC TSC-10/25 devices\n  ...\n"
    },
    {
      "commit": "72a73a69f6a79266b8b4b18f796907b73a5c01e3",
      "tree": "7684193f3c7f21b0ca14c430b8ead75b2c2025eb",
      "parents": [
        "4549df891a31b9a05b7d183106c09049b79327be",
        "2b290da053608692ea206507d993b70c39d2cdea"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:27 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: (28 commits)\n  PCI: make arch/i386/pci/common.c:pci_bf_sort static\n  PCI: ibmphp_pci.c: fix NULL dereference\n  pciehp: remove unnecessary pci_disable_msi\n  pciehp: remove unnecessary free_irq\n  PCI: rpaphp: change device tree examination\n  PCI: Change memory allocation for acpiphp slots\n  i2c-i801: SMBus patch for Intel ICH9\n  PCI: irq: irq and pci_ids patch for Intel ICH9\n  PCI: pci_{enable,disable}_device() nestable ports\n  PCI: switch pci_{enable,disable}_device() to be nestable\n  PCI: arch/i386/kernel/pci-dma.c: ioremap balanced with iounmap\n  pci/i386: style cleanups\n  PCI: Block on access to temporarily unavailable pci device\n  pci: fix __pci_register_driver error handling\n  pci: clear osc support flags if no _OSC method\n  acpiphp: fix missing acpiphp_glue_exit()\n  acpiphp: fix use of list_for_each macro\n  Altix: Initial ACPI support - ROM shadowing.\n  Altix: SN ACPI hotplug support.\n  Altix: Add initial ACPI IO support\n  ...\n"
    },
    {
      "commit": "4549df891a31b9a05b7d183106c09049b79327be",
      "tree": "d4dfd0921f0dd0dba2525fd33c0962b26ba5ff1e",
      "parents": [
        "6b8cc71ab2619a776b02869fd733ac1ead3db4e8",
        "e17e0f51aeea4e59c7e450a1c0f26605b91c1260"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:07 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6: (36 commits)\n  Driver core: show drivers in /sys/module/\n  Documentation/driver-model/platform.txt update/rewrite\n  Driver core: platform_driver_probe(), can save codespace\n  driver core: Use klist_remove() in device_move()\n  driver core: Introduce device_move(): move a device to a new parent.\n  Driver core: make drivers/base/core.c:setup_parent() static\n  driver core: Introduce device_find_child().\n  sysfs: sysfs_write_file() writes zero terminated data\n  cpu topology: consider sysfs_create_group return value\n  Driver core: Call platform_notify_remove later\n  ACPI: Change ACPI to use dev_archdata instead of firmware_data\n  Driver core: add dev_archdata to struct device\n  Driver core: convert sound core to use struct device\n  Driver core: change mem class_devices to be real devices\n  Driver core: convert fb code to use struct device\n  Driver core: convert firmware code to use struct device\n  Driver core: convert mmc code to use struct device\n  Driver core: convert ppdev code to use struct device\n  Driver core: convert PPP code to use struct device\n  Driver core: convert cpuid code to use struct device\n  ...\n"
    },
    {
      "commit": "1399ff54741b3aa0aaf5097b8559fa30277ebe61",
      "tree": "b384aef82007144b067cc171d2a9aa168b50b262",
      "parents": [
        "bb37b94c68e7b37eecea8576039ae9396ca07839",
        "6b44d4e69c6144d0df71ab47ec90d2009237d48f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:38:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:38:18 2006 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial:\n  Fix typos in drivers/isdn/hisax/isdnl2.c\n  Fix typos in doc and comments\n  BUG_ON conversion for fs/aio.c\n  BUG_ON conversion for drivers/mmc/omap.c\n  BUG_ON conversion for drivers/media/video/pwc/pwc-if.c\n  Fix misc .c/.h comment typos\n  Fix misc Kconfig typos\n  Fix typos in /Documentation : Misc\n  Fix typos in /Documentation : \u0027U-Z\u0027\n  Fix typos in /Documentation : \u0027T\u0027\u0027\n  Fix jiffies.h comment\n  tabify MAINTAINERS\n  fix spelling error in include/linux/kernel.h\n  mqueue.h: don\u0027t include linux/types.h\n"
    },
    {
      "commit": "e17e0f51aeea4e59c7e450a1c0f26605b91c1260",
      "tree": "eb177cbfe18d433ab115222bfe53f1098de844c2",
      "parents": [
        "c957b32406b73ed66d0f20ebab0cab25c848105d"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Nov 24 12:15:25 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:02 2006 -0800"
      },
      "message": "Driver core: show drivers in /sys/module/\n\nShow the drivers, which belong to the module:\n  $ ls -l /sys/module/usbcore/drivers/\n  hub -\u003e ../../../bus/usb/drivers/hub\n  usb -\u003e ../../../bus/usb/drivers/usb\n  usbfs -\u003e ../../../bus/usb/drivers/usbfs\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "c67334fbdfbba533af767610cf3fde8a49710e62",
      "tree": "c386f3aa4af94bb7d24ddb18b51f90bcb9a4d599",
      "parents": [
        "acf02d23b96efa92e7cff05987122ceeb37dd075"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Thu Nov 16 23:28:47 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:02 2006 -0800"
      },
      "message": "Driver core: platform_driver_probe(), can save codespace\n\nThis defines a new platform_driver_probe() method allowing the driver\u0027s\nprobe() method, and its support code+data, to safely live in __init\nsections for typical system configurations.\n\nMany system-on-chip processors could benefit from this API, to the tune\nof recovering hundreds to thousands of bytes per driver.  That\u0027s memory\nwhich is currently wasted holding code which can never be called after\nsystem startup, yet can not be removed.   It can\u0027t be removed because of\nthe linkage requirement that pointers to init section code (like, ideally,\nprobe support) must not live in other sections (like driver method tables)\nafter those pointers would be invalid.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8a82472f86bf693b8e91ed56c9ca4f62fbbdcfa3",
      "tree": "79d148ee548f4b57e6f5a4a69cf6cdb81e7a1bf2",
      "parents": [
        "af9e0765362151b27372c14d9d6dc417184182d3"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Mon Nov 20 17:07:51 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:01 2006 -0800"
      },
      "message": "driver core: Introduce device_move(): move a device to a new parent.\n\nProvide a function device_move() to move a device to a new parent device. Add\nauxilliary functions kobject_move() and sysfs_move_dir().\nkobject_move() generates a new uevent of type KOBJ_MOVE, containing the\nprevious path (DEVPATH_OLD) in addition to the usual values. For this, a new\ninterface kobject_uevent_env() is created that allows to add further\nenvironmental data to the uevent at the kobject layer.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nAcked-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "5ab699810d46011ad2195c5916f3cbc684bfe3ee",
      "tree": "991f6d4f502fd7871766b51a94a0e3ab33aadd62",
      "parents": [
        "035ed7a49447bc8e15d4d9316fc6a359b2d94333"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Nov 16 15:42:07 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:01 2006 -0800"
      },
      "message": "driver core: Introduce device_find_child().\n\nIntroduce device_find_child() to match device_for_each_child().\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "465ae641e4a3e5028aa9c85d3843259aa28a22ce",
      "tree": "a8f20c576d03dc40d67ad8b5ee5f9dec4f114a81",
      "parents": [
        "c6dbaef22a2f78700e242915a13218dd780c89ff"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Sat Nov 11 17:18:42 2006 +1100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:01 2006 -0800"
      },
      "message": "ACPI: Change ACPI to use dev_archdata instead of firmware_data\n\nChange ACPI to use dev_archdata instead of firmware_data\n\nThis patch changes ACPI to use the new dev_archdata on i386, x86_64\nand ia64 (is there any other arch using ACPI ?) to store it\u0027s\nacpi_handle.\n\nIt also removes the firmware_data field from struct device as this\nwas the only user.\n\nOnly build-tested on x86\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c6dbaef22a2f78700e242915a13218dd780c89ff",
      "tree": "57167ca04a79f0d0aecf82523c8d8f3918312d8d",
      "parents": [
        "d80f19fab89cba8a6d16193154c8ff3edab00942"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Sat Nov 11 17:18:39 2006 +1100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:01 2006 -0800"
      },
      "message": "Driver core: add dev_archdata to struct device\n\nAdd arch specific dev_archdata to struct device\n\nAdds an arch specific struct dev_arch to struct device. This enables\narchitecture to add specific fields to every device in the system, like\nDMA operation pointers, NUMA node ID, firmware specific data, etc...\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Andi Kleen \u003cak@suse.de\u003e\nAcked-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "78cde0887930f5d11a56fc51b013f2672fba0e6f",
      "tree": "c91d1295dc7385a62f32414f50303e0608d6d1db",
      "parents": [
        "e55c8790d40fdbc6887b4e3e52afefe4b03f1311"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Sep 14 07:30:59 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:00 2006 -0800"
      },
      "message": "Driver core: convert fb code to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "fcaf71fd51f9cfc504455d3e19ec242e4b2073ed",
      "tree": "54b227d3092eff0bbc304cbf6169dcef36816a7f",
      "parents": [
        "04880edae5e1027d61241beb5ac37b520755f2ab"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 12 17:00:10 2006 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:00 2006 -0800"
      },
      "message": "Driver core: convert mmc code to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "01107d343076c34b9e1ce5d073292bd7f3097fda",
      "tree": "075dcadaff7c124022157c8ee819550cd1023440",
      "parents": [
        "94fbcded4ea0dc14cbfb222a5c68372f150d1476"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 07 22:19:37 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "Driver core: convert tty core to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nAlso fixes up the isdn drivers that were putting something in the class\ndevice\u0027s directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "94fbcded4ea0dc14cbfb222a5c68372f150d1476",
      "tree": "fcbf2d5f71a9993666a1c8d1883273f8046f8625",
      "parents": [
        "cd15422b9f39155e2d9ea56ae95c6f62aa5df42e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jul 27 16:16:04 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "Driver core: change misc class_devices to be real devices\n\nThis also ment that some of the misc drivers had to also be fixed\nup as they were assuming the device was a class_device.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f0ee61a6cecd100301a60d99feb187776533b2a2",
      "tree": "69fe62325427cdec7687e951e680ca9ff3486a3d",
      "parents": [
        "1901fb2604fbcd53201f38725182ea807581159e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 23 10:40:54 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:58 2006 -0800"
      },
      "message": "Driver Core: Move virtual_device_parent() to core.c\n\nIt doesn\u0027t need to be global or in device.h\n\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "116af378201ef793424cd10508ccf18b06d8a021",
      "tree": "2de792e7b9d8a122d88241d1ecfbe7bc92b9b8fe",
      "parents": [
        "0215ffb08ce99e2bb59eca114a99499a4d06e704"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Oct 25 13:44:59 2006 +1000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:58 2006 -0800"
      },
      "message": "Driver core: add notification of bus events\n\nI finally did as you suggested and added the notifier to the struct\nbus_type itself. There are still problems to be expected is something\nattaches to a bus type where the code can hook in different struct\ndevice sub-classes (which is imho a big bogosity but I won\u0027t even try to\nargue that case now) but it will solve nicely a number of issues I\u0027ve\nhad so far.\n\nThat also means that clients interested in registering for such\nnotifications have to do it before devices are added and after bus types\nare registered. Fortunately, most bus types that matter for the various\nusage scenarios I have in mind are registerd at postcore_initcall time,\nwhich means I have a really nice spot at arch_initcall time to add my\nnotifiers.\n\nThere are 4 notifications provided. Device being added (before hooked to\nthe bus) and removed (failure of previous case or after being unhooked\nfrom the bus), along with driver being bound to a device and about to be\nunbound.\n\nThe usage I have for these are:\n\n - The 2 first ones are used to maintain a struct device_ext that is\nhooked to struct device.firmware_data. This structure contains for now a\npointer to the Open Firmware node related to the device (if any), the\nNUMA node ID (for quick access to it) and the DMA operations pointers \u0026\niommu table instance for DMA to/from this device. For bus types I own\n(like IBM VIO or EBUS), I just maintain that structure directly from the\nbus code when creating the devices. But for bus types managed by generic\ncode like PCI or platform (actually, of_platform which is a variation of\nplatform linked to Open Firmware device-tree), I need this notifier.\n\n - The other two ones have a completely different usage scenario. I have\ncases where multiple devices and their drivers depend on each other. For\nexample, the IBM EMAC network driver needs to attach to a MAL DMA engine\nwhich is a separate device, and a PHY interface which is also a separate\ndevice. They are all of_platform_device\u0027s (well, about to be with my\nupcoming patches) but there is no say in what precise order the core\nwill \"probe\" them and instanciate the various modules. The solution I\nfound for that is to have the drivers for emac to use multithread_probe,\nand wait for a driver to be bound to the target MAL and PHY control\ndevices (the device-tree contains reference to the MAL and PHY interface\nnodes, which I can then match to of_platform_devices). Right now, I\u0027ve\nbeen polling, but with that notifier, I can more cleanly wait (with a\ntimeout of course).\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3b59d52d8c7925e7a9a396f2e31a66eb060c6c37",
      "tree": "56274b072908081db447c4386ca4c51380ad4ee1",
      "parents": [
        "95ddc5f25590e31843a09357365d5cbc6ec978db"
      ],
      "author": {
        "name": "Jason Gaston",
        "email": "jason.d.gaston@intel.com",
        "time": "Wed Nov 22 15:15:08 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:59 2006 -0800"
      },
      "message": "PCI: irq: irq and pci_ids patch for Intel ICH9\n\nThis updated patch adds the Intel ICH9 LPC and SMBus Controller DID\u0027s.\n\nSigned-off-by: Jason Gaston \u003cjason.d.gaston@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "bae94d02371c402408a4edfb95e71e88dbd3e973",
      "tree": "8886acf5950d8f95d5d4d5a9737c462035709914",
      "parents": [
        "039d09a845209122c5193e650ab2d8b3c849ca7c"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Wed Nov 22 12:40:31 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:59 2006 -0800"
      },
      "message": "PCI: switch pci_{enable,disable}_device() to be nestable\n\nChanges the pci_{enable,disable}_device() functions to work in a\nnested basis, so that eg, three calls to enable_device() require three\ncalls to disable_device().\n\nThe reason for this is to simplify PCI drivers for\nmulti-interface/capability devices. These are devices that cram more\nthan one interface in a single function. A relevant example of that is\nthe Wireless [USB] Host Controller Interface (similar to EHCI) [see\nhttp://www.intel.com/technology/comms/wusb/whci.htm]. \n\nIn these kind of devices, multiple interfaces are accessed through a\nsingle bar and IRQ line. For that, the drivers map only the smallest\narea of the bar to access their register banks and use shared IRQ\nhandlers. \n\nHowever, because the order at which those drivers load cannot be known\nahead of time, the sequence in which the calls to pci_enable_device()\nand pci_disable_device() cannot be predicted. Thus:\n\n1. driverA     starts     pci_enable_device()\n2. driverB     starts     pci_enable_device()\n3. driverA     shutdown   pci_disable_device()\n4. driverB     shutdown   pci_disable_device()\n\nbetween steps 3 and 4, driver B would loose access to it\u0027s device,\neven if it didn\u0027t intend to.\n\nBy using this modification, the device won\u0027t be disabled until all the\ncallers to enable() have called disable().\n\nThis is implemented by replacing \u0027struct pci_dev-\u003eis_enabled\u0027 from a\nbitfield to an atomic use count. Each caller to enable increments it,\neach caller to disable decrements it. When the count increments from 0\nto 1, __pci_enable_device() is called to actually enable the\ndevice. When it drops to zero, pci_disable_device() actually does the\ndisabling.\n\nWe keep the backend __pci_enable_device() for pci_default_resume() to\nuse and also change the sysfs method implementation, so that userspace\nenabling/disabling the device doesn\u0027t disable it one time too much.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a2302c68d923537436b1114aa207787c1a31bd50",
      "tree": "bf0407f2176a32ec79d2b7ab82e1fc9e54308fd2",
      "parents": [
        "9f581f162e2b304be25dee49bf3945d4ed65dfb6"
      ],
      "author": {
        "name": "John Keller",
        "email": "jpk@sgi.com",
        "time": "Wed Oct 04 16:49:52 2006 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:58 2006 -0800"
      },
      "message": "Altix: Initial ACPI support - ROM shadowing.\n\nSupport a shadowed ROM when running with an ACPI capable PROM.\n\nDefine a new dev.resource flag IORESOURCE_ROM_BIOS_COPY to\ndescribe the case of a BIOS shadowed ROM, which can then\nbe used to avoid pci_map_rom() making an unneeded call to\npci_enable_rom().\n\n\nSigned-off-by: John Keller \u003cjpk@sgi.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "e65e5fb5ceb02aaea7b65bf8b3b0d0c9057718b6",
      "tree": "0a77bfb7da117da88bd021691a8afde10671a007",
      "parents": [
        "009af1ff78bfc30b9a27807dd0207fc32848218a"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Tue Nov 07 18:21:21 2006 +1100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:56 2006 -0800"
      },
      "message": "PCI: Make some MSI-X #defines generic\n\nMove some MSI-X #defines into pci_regs.h so they can be used\noutside of drivers/pci.\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ee49fb5dc89d34f1794ac9362fa97c1a640f7ddd",
      "tree": "310d11b695b631c091c9f442d566400ba9a86de9",
      "parents": [
        "d25450c68767481f7c9cc4823a6da8235db40be6"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Wed Nov 22 16:55:54 2006 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:25:52 2006 -0800"
      },
      "message": "USB: keep count of unsuspended children\n\nThis patch (as818b) simplifies autosuspend processing by keeping track\nof the number of unsuspended children of each USB hub.  This will\npermit us to avoid a good deal of unnecessary work all the time; we\nwill no longer have to create a bunch of workqueue entries to carry\nout autosuspend requests, only to have them fail because one of the\nhub\u0027s children isn\u0027t suspended.\n\nThe basic idea is simple.  There already is a usage counter in the\nusb_device structure for preventing autosuspends.  The patch just\nincrements that counter for every unsuspended child.  There\u0027s only one\ntricky part: When a device disconnects we need to remember whether it\nwas suspended at the time (leave the counter alone) or not (decrement\nthe counter).\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ce3615879ae85373c03744b45b7c2d7ae5e29b2a",
      "tree": "b65e10b1d6a45cbda9d295a1198fb050842f3777",
      "parents": [
        "1f9fc882d92f3ff390455836f98d7ddc36d4e4c3"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Nov 20 11:12:22 2006 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:25:52 2006 -0800"
      },
      "message": "USB: struct usb_device: change flag to bitflag\n\nThis patch (as816) changes an existing flag in the usb_device\nstructure to a bitflag, preparing the way for more bitflags to come\nin the future.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "692a186c9d5f12d43cef28d40c25247dc4f302f0",
      "tree": "8271b7930fbabfd6b6d5cc0a3b42e65ea56976d4",
      "parents": [
        "af4f76066d0fcb215ae389b8839d7ae37ce0e28b"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Oct 30 17:07:51 2006 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:23:30 2006 -0800"
      },
      "message": "USB: expand autosuspend/autoresume API\n\nThis patch (as814) adds usb_autopm_set_interface() to the autosuspend\nAPI.  It also provides convenient wrapper routines,\nusb_autopm_enable() and usb_autopm_disable(), for drivers that want\nto specify directly whether autosuspend should be allowed.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0c1ac4f25f894f9df0ffe9b912c165fb6a185a3c",
      "tree": "07242b094efb9c306d7b825f70d9c1660ab95241",
      "parents": [
        "6f7cd44162ca1bffd54f4090e67b9810bacb5d25"
      ],
      "author": {
        "name": "Luiz Fernando N. Capitulino",
        "email": "lcapitulino@mandriva.com.br",
        "time": "Mon Oct 30 14:53:03 2006 -0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:23:29 2006 -0800"
      },
      "message": "USB: makes usb_endpoint_* functions inline.\n\nWe have no benefits of having the usb_endpoint_* functions as functions,\nbut making them inline saves text and data segment sizes:\n\ntext\t   data\t    bss\t    dec\t    hex\tfilename\n14893634\t3108770\t1108840\t19111244\t1239d4c\tvmlinux.func\n14893185\t3108566\t1108840\t19110591\t1239abf\tvmlinux.inline\n\n This is the result of a 2.6.19-rc3 kernel compiled with GCC 4.1.1 without\nCONFIG_MODULES, CONFIG_CC_OPTIMIZE_FOR_SIZE, CONFIG_REGPARM options set.\nUSB support is fully enabled (while most of the other drivers are not),\nand that kernel has most of the USB code ported to use the endpoint\nfunctions.\n\nThat happens because a call to those functions are expensive (in terms\nof bytes), while the function\u0027s size is smaller or have the same \u0027size\u0027 of\nthe call.\n\nSigned-off-by: Luiz Fernando N. Capitulino \u003clcapitulino@mandriva.com.br\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "437052516779fea608261a50682b124315f48f01",
      "tree": "19d172d8c306f6a2e20b110066ba6e8d25e76cd5",
      "parents": [
        "0215ffb08ce99e2bb59eca114a99499a4d06e704"
      ],
      "author": {
        "name": "inaky@linux.intel.com",
        "email": "inaky@linux.intel.com",
        "time": "Wed Oct 11 20:05:58 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:23:26 2006 -0800"
      },
      "message": "usb/hub: allow hubs up to 31 children\n\nCurrent Wireless USB host hardware (Intel i1480 for example) allows up\nto 22 devices to connect, thus bringing up the max number of children\nin the WUSB Host Controller to 22 \u0027fake\u0027 ports. Upcoming hardware\nmight raise that limit.\n\nMakes almost no difference to go to 31, as the bit arrays are\nbyte-aligned (plus an extra bit in general), so 22 bits fit in 4 bytes\nas 31 do.\n\nAs well, the only other array that depends on USB_MAXCHILDREN is\n\u0027struct usb_hub-\u003eindicator\u0027. By declaring it \u0027u8\u0027 instead of \u0027enum\nhub_led_mode\u0027, we reduce the size of each entry from 4 bytes (in i386)\nto 1, which will add as we when are doubling USB_MAXCHILDREN\n(with 16 the size of that array is 64 bytes, with 31 would be 128; by\nusing u8 that goes down to 31 bytes).\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky.perez-gonzalez@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7ccd266e676a3f0c6f8f897f58b684cac3dd1650",
      "tree": "aba8632fc523c5c663a56876ce67c580ce8d38eb",
      "parents": [
        "73778120c4088a0a7b59c4c378904f7a230b4820"
      ],
      "author": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Wed Nov 08 23:03:10 2006 +0100"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Fri Dec 01 18:53:37 2006 +0100"
      },
      "message": "mmc: Support for high speed SD cards\n\nModern SD cards support a clock speed of 50 MHz. Make sure we test for\nthis capability and do the song and dance required to activate it.\n\nActivating high speed support actually modifies the TRAN_SPEED field\nof the CSD. But as the spec says that the cards must report 50 MHz,\nwe might as well skip re-reading the CSD.\n\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "e45a1bd20fa5b920901879e85cdf5eda21f78d7c",
      "tree": "d767af9df9ae4b39e9bd3675b1644fa5eaccd325",
      "parents": [
        "bce40a36de574376f41f1ff3c4d212a7da2a3c90"
      ],
      "author": {
        "name": "Philip Langdale",
        "email": "philipl@overt.org",
        "time": "Sun Oct 29 10:14:19 2006 +0100"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Fri Dec 01 18:22:44 2006 +0100"
      },
      "message": "mmc: Add support for mmc v4 wide-bus modes\n\nThis change adds support for the mmc4 4-bit wide-bus mode.\n\nThe mmc4 spec defines 8-bit and 4-bit transfer modes. As we do not support\nany 8-bit hardware, this patch only adds support for the 4-bit mode, but\nit can easily be built upon when the time comes.\n\nThe 4-bit mode is electrically compatible with SD\u0027s 4-bit mode but the\nprocedure for turning it on is different. This patch implements only\nthe essential parts of the procedure as defined by the spec. Two additional\nsteps are recommended but not compulsory. I am documenting them here so\nthat there\u0027s a record.\n\n1) A bus-test mechanism is implemented using dedicated mmc commands which allow\nfor testing the functionality of the data bus at the electrical level. This is\npretty paranoid and they way the commands work is not compatible with the mmc\nsubsystem (they don\u0027t set valid CRC values).\n\n2) MMC v4 cards can indicate they would like to draw more than the default\namount of current in wide-bus modes. We currently will never switch the card\ninto a higher draw mode. Supposedly, allowing the card to draw more current\nwill let it perform better, but the specs seem to indicate that the card will\nfunction correctly without the mode change. Empirical testing supports this\ninterpretation.\n\nSigned-off-by: Philip Langdale \u003cphilipl@overt.org\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "bce40a36de574376f41f1ff3c4d212a7da2a3c90",
      "tree": "f866c1d744db98d897d8e2684f7f47b56e75cb9b",
      "parents": [
        "9c9c26188ff9fa5f44ba5a00e01b54b539f83d1d"
      ],
      "author": {
        "name": "Philip Langdale",
        "email": "philipl@overt.org",
        "time": "Sat Oct 21 12:35:02 2006 +0200"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Fri Dec 01 18:21:32 2006 +0100"
      },
      "message": "[PATCH] mmc: Add support for mmc v4 high speed mode\n\nThis adds support for the high-speed modes defined by mmc v4\n(assuming the host controller is up to it). On a TI sdhci controller,\nit improves read speed from 1.3MBps to 2.3MBps. The TI controller can\nonly go up to 24MHz, but everything helps. Another person has taken\nthis basic patch and used it on a Nokia 770 to get a bigger boost\nbecause that controller can run at 48MHZ.\n\nSigned-off-by: Philip Langdale \u003cphilipl@overt.org\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "bb37b94c68e7b37eecea8576039ae9396ca07839",
      "tree": "0b5dcbb3abb7710789d401126431f6f4dfe89e3a",
      "parents": [
        "0e75f9063f5c55fb0b0b546a7c356f8ec186825e"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Dec 01 10:42:33 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Dec 01 10:42:33 2006 +0100"
      },
      "message": "[BLOCK] Cleanup unused variable passing\n\n- -\u003einit_queue() does not need the elevator passed in\n- -\u003eput_request() is a hot path and need not have the queue passed in\n- cfq_update_io_seektime() does not need cfqd passed in\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0e75f9063f5c55fb0b0b546a7c356f8ec186825e",
      "tree": "db138f641175403546c2147def4b405f3ff453a8",
      "parents": [
        "ad2d7225709b11da47e092634cbdf0591829ae9c"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Fri Dec 01 10:40:55 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Dec 01 10:40:55 2006 +0100"
      },
      "message": "[PATCH] block: support larger block pc requests\n\nThis patch modifies blk_rq_map/unmap_user() and the cdrom and scsi_ioctl.c\nusers so that it supports requests larger than bio by chaining them together.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "be1c63411addba3ad750eb4fdfc50b97bc82825e",
      "tree": "d00c889873310a5c6ee0caf79f2b70e64a382796",
      "parents": [
        "0215ffb08ce99e2bb59eca114a99499a4d06e704"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Fri Dec 01 10:39:12 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Dec 01 10:39:12 2006 +0100"
      },
      "message": "[PATCH] blktrace: add timestamp message\n\nThis adds a new timestamp message to blktrace, giving the timeofday when\nwe starting tracing. This helps user space correlate block trace events\nwith eg an application strace.\n\nThis requires a (compatible) update to blkparse. The changed blkparse\nis still able to process traces generated by older kernels, and older\nversions of blkparse should silently ignore the new records (because\nthey have a pid of 0).\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "03a67a46af8647b2c7825107045ecae641e103d3",
      "tree": "7986405e63cfafe97f9fb6093b1ce2a96d1657c3",
      "parents": [
        "93e06b4140cc018826bce4d97b0bf7c9ba05ae6e"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@gmx.de",
        "time": "Thu Nov 30 05:32:19 2006 +0100"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Nov 30 05:32:19 2006 +0100"
      },
      "message": "Fix typos in doc and comments\n\nChanges persistant -\u003e persistent. www.dictionary.com does not know\npersistant (with an A), but should it be one of those things you can\nspell in more than one correct way, let me know.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@gmx.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "0779bf2d2ecc4d9b1e9437ae659f50e6776a7666",
      "tree": "dbcc9735ab63a833056572c8f4f0efe911246562",
      "parents": [
        "3cb2fccc5f48a4d6269dfd00b4db570fca2a04d5"
      ],
      "author": {
        "name": "Matt LaPlante",
        "email": "kernel1@cyberdogtech.com",
        "time": "Thu Nov 30 05:24:39 2006 +0100"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Nov 30 05:24:39 2006 +0100"
      },
      "message": "Fix misc .c/.h comment typos\n\nFix various .c/.h typos in comments (no code changes).\n\nSigned-off-by: Matt LaPlante \u003ckernel1@cyberdogtech.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "98c4f0c336afe4318c12397bc74910d86ee036a2",
      "tree": "a00a42850292e101ec85587ed50ee94580cb9c34",
      "parents": [
        "ce00f85c45d7f8c13cf67d9ca24d0f100f8e9c59"
      ],
      "author": {
        "name": "Chase Venters",
        "email": "chase.venters@clientec.com",
        "time": "Thu Nov 30 04:53:49 2006 +0100"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Nov 30 04:53:49 2006 +0100"
      },
      "message": "Fix jiffies.h comment\n\njiffies.h includes a comment informing that jiffies_64 must be read with the\nassistance of the xtime_lock seqlock. The comment text, however, calls\njiffies_64 \"not volatile\", which should probably read \"not atomic\".\n\nSigned-off-by: Chase Venters \u003cchase.venters@clientec.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    }
  ],
  "next": "e20ec9911bfef897459b9f8aeaf6eadb0920299a"
}
