)]}'
{
  "log": [
    {
      "commit": "107e0008dfb8bd6366bc8827f5bbbc0c1f795d2d",
      "tree": "12d6be652e3de5cfcfcec5fe0bc37e4b1d983b44",
      "parents": [
        "2937391385807b3da9cd7a39345259caf550b032",
        "67080c82361b7510b602c87b83399421aa2d2895"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Oct 08 18:22:18 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Oct 08 18:22:18 2008 -0400"
      },
      "message": "Merge branch \u0027from-tomtucker\u0027 into for-2.6.28\n"
    },
    {
      "commit": "67080c82361b7510b602c87b83399421aa2d2895",
      "tree": "4003f47552ac28b54a75826e7230c711e7b64f45",
      "parents": [
        "04911b539c9817aa88a6da8f563e65e3e0bc974b"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Fri Oct 03 12:41:14 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:46:13 2008 -0500"
      },
      "message": "svcrdma: Fix IRD/ORD polarity\n\nThe inititator/responder resources in the event have been swapped. They\nno represent what the local peer would set their values to in order to\nmatch the peer. Note that iWARP does not exchange these on the wire and\nthe provider is simply putting in the local device max.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "04911b539c9817aa88a6da8f563e65e3e0bc974b",
      "tree": "9379440a4ca2a972d02d35feb3ac6ab0419e96c4",
      "parents": [
        "afd566ea080572499cc01d42d2f578bf4b54f20f"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Aug 11 15:14:53 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:46:08 2008 -0500"
      },
      "message": "svcrdma: Update svc_rdma_send_error to use DMA LKEY\n\nUpdate the svc_rdma_send_error code to use the DMA LKEY which is valid\nregardless of the memory registration strategy in use.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "afd566ea080572499cc01d42d2f578bf4b54f20f",
      "tree": "cbd0c55f27cfd0a432bf669d6db4cbe0e595a2bf",
      "parents": [
        "146b6df6a537939570c5772ebd7db826fdbd5d82"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Fri Oct 03 15:45:03 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:46:05 2008 -0500"
      },
      "message": "svcrdma: Modify the RPC reply path to use FRMR when available\n\nUse FRMR to map local RPC reply data. This allows RDMA_WRITE to send reply\ndata using a single WR. The FRMR is invalidated by linking the LOCAL_INV WR\nto the RDMA_SEND message used to complete the reply.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "146b6df6a537939570c5772ebd7db826fdbd5d82",
      "tree": "1acf55f3244719e543fb5f6eed6de11c5dd3110e",
      "parents": [
        "5b180a9a64ca2217a658bd515ef910eafefc5e5a"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Tue Aug 12 15:12:10 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:46:01 2008 -0500"
      },
      "message": "svcrdma: Modify the RPC recv path to use FRMR when available\n\nRPCRDMA requests that specify a read-list are fetched with RDMA_READ. Using\nan FRMR to map the data sink improves NFSRDMA security on transports that\nplace the RDMA_READ data sink LKEY on the wire because the valid lifetime\nof the MR is only the duration of the RDMA_READ. The LKEY is invalidated\nwhen the last RDMA_READ WR completes.\n\nMapping the data sink also allows for very large amounts to data to be\nfetched with a single WR, so if the client is also using FRMR, the entire\nRPC read-list can be fetched with a single WR.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "5b180a9a64ca2217a658bd515ef910eafefc5e5a",
      "tree": "61fe08b958b3707be0a516677f72216c06217edd",
      "parents": [
        "a5abf4e81545d9c7280c49cae853cc45fd769ddf"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Aug 11 14:10:19 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:56 2008 -0500"
      },
      "message": "svcrdma: Add support to svc_rdma_send to handle chained WR\n\nWR can be submitted as linked lists of WR. Update the svc_rdma_send\nroutine to handle WR chains. This will be used to submit a WR that\nuses an FRMR with another WR that invalidates the FRMR.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "a5abf4e81545d9c7280c49cae853cc45fd769ddf",
      "tree": "fef48a88715bac9bfdca3e00aa1ed6afb1177004",
      "parents": [
        "e1183210625cc8e02ce13eec78fb7a246567fc59"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Tue Sep 30 14:05:41 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:52 2008 -0500"
      },
      "message": "svcrdma: Modify post recv path to use local dma key\n\nUpdate the svc_rdma_post_recv routine to use the adapter\u0027s global LKEY\ninstead of sc_phys_mr which is only valid when using a DMA MR.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "e1183210625cc8e02ce13eec78fb7a246567fc59",
      "tree": "c01cb7326fb64b899cc375bbadcea0e4579c6043",
      "parents": [
        "3a5c63803d0552a3ad93b85c262f12cd86471443"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Fri Oct 03 15:22:18 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:49 2008 -0500"
      },
      "message": "svcrdma: Add a service to register a Fast Reg MR with the device\n\nFast Reg MR introduces a new WR type. Add a service to register the\nregion with the adapter and update the completion handling to support\ncompletions with a NULL WR context.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "3a5c63803d0552a3ad93b85c262f12cd86471443",
      "tree": "aec8f9e66b2ac4258a7e379be5ce9abd5670da49",
      "parents": [
        "64be8608c163bd480cf5ec4b34366f11e0f3c87f"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Tue Sep 30 13:46:13 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:45 2008 -0500"
      },
      "message": "svcrdma: Query device for Fast Reg support during connection setup\n\nQuery the device capabilities in the svc_rdma_accept function to determine\nwhat advanced memory management capabilities are supported by the device.\nBased on the query, select the most secure model available given the\nrequirements of the transport and capabilities of the adapter.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "64be8608c163bd480cf5ec4b34366f11e0f3c87f",
      "tree": "e0a2499259c799d1ac97935107a25c4cefd7cb0c",
      "parents": [
        "0d3ebb9ae9f9c887518fd4c81a68084111d154d7"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:18 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:18 2008 -0500"
      },
      "message": "svcrdma: Add FRMR get/put services\n\nAdd services for the allocating, freeing, and unmapping Fast Reg MR. These\nservices will be used by the transport connection setup, send and receive\nroutines.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "2937391385807b3da9cd7a39345259caf550b032",
      "tree": "6b75733afd1c5eb9a847c72b0c745ffc24aef559",
      "parents": [
        "26a414092353590ceaa5955bcb53f863d6ea7549"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 03 17:15:38 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Sat Oct 04 17:12:27 2008 -0400"
      },
      "message": "NLM: Remove unused argument from svc_addsock() function\n\nClean up: The svc_addsock() function no longer uses its \"proto\"\nargument, so remove it.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "d5b337b4877f7c4e1d761434ee04d045b0201e03",
      "tree": "0c31c4cfb0f2010a87b0f1ae7246cbd50068306e",
      "parents": [
        "97eb89bb0e5d9ab20dbc677cb18fad1421473287"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Sun Sep 28 09:21:26 2008 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:40 2008 -0400"
      },
      "message": "nfsd: use nfs client rpc callback program\n\nsince commit ff7d9756b501744540be65e172d27ee321d86103\n\"nfsd: use static memory for callback program and stats\"\ndo_probe_callback uses a static callback program\n(NFS4_CALLBACK) rather than the one set in clp-\u003ecl_callback.cb_prog\nas passed in by the client in setclientid (4.0)\nor create_session (4.1).\n\nThis patches introduces rpc_create_args.prognumber that allows\noverriding program-\u003enumber when creating rpc_clnt.\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "db820d6376aa81accf5b648651e160fd76e363e2",
      "tree": "b9447d4316b7319dd9675b9e93b4fdcc07d209a2",
      "parents": [
        "f6fb3f6f591b50fa4f51962ad06ee0d8782e1bc8"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Sep 25 11:57:05 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:40 2008 -0400"
      },
      "message": "SUNRPC: Clean up debug messages in rpcb_clnt.c\n\nThe RPCB XDR functions are used for multiple procedures.  For instance,\nrpcb_encode_getaddr() is used for RPCB_GETADDR, RPCB_SET, and\nRPCB_UNSET.  Make the XDR debug messages more generic so they are less\nconfusing.\n\nAnd, unlike in other RPC consumers in the kernel, a single debug flag\nenables all levels of debug messages in the RPC bind client, including\nXDR debug messages.  Since the XDR decoders already report success or\nfailure in this case, remove redundant debug messages in the mid-level\nrpcb_register_call() function.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "f6fb3f6f591b50fa4f51962ad06ee0d8782e1bc8",
      "tree": "2a50459b61ffdecac33bf99f41a24ce521994f1d",
      "parents": [
        "9d548b9c955c0709d1229d21d0bc14afa6b356de"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Sep 25 11:56:57 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:40 2008 -0400"
      },
      "message": "SUNRPC: Fix up svc_unregister()\n\nWith the new rpcbind code, a PMAP_UNSET will not have any effect on\nservices registered via rpcbind v3 or v4.\n\nImplement a version of svc_unregister() that uses an RPCB_UNSET with\nan empty netid string to make sure we have cleared *all* entries for\na kernel RPC service when shutting down, or before starting a fresh\ninstance of the service.\n\nUse the new version only when CONFIG_SUNRPC_REGISTER_V4 is enabled;\notherwise, the legacy PMAP version is used to ensure complete\nbackwards-compatibility with the Linux portmapper daemon.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "9d548b9c955c0709d1229d21d0bc14afa6b356de",
      "tree": "99a742858c6ad53d4bc790aa096561f18c97a5b0",
      "parents": [
        "2c7eb0b206b8408d92c518033a359f4374c75314"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Sep 15 16:27:30 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:40 2008 -0400"
      },
      "message": "SUNRPC: Use short-hand IPv6 ANYADDR for RPCB_SET\n\nClean up: When doing an RPCB_SET, make the kernel\u0027s rpcb client use the\nshorthand \"::\" for the universal form of the IPv6 ANY address.\n\nWithout this patch, rpcbind will advertise:\n\n  0000:0000:0000:0000:0000:0000:0000:0000.x.y\n\nThis is cosmetic only.  It cleans up the display of information from\n/sbin/rpcinfo.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "2c7eb0b206b8408d92c518033a359f4374c75314",
      "tree": "fb3e01b4ede433ec53856574ef683fe54583f2df",
      "parents": [
        "e018040a824ab48211a1fcb86acebc9fc84759b0"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Sep 15 16:27:23 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:39 2008 -0400"
      },
      "message": "SUNRPC: Register both netids for AF_INET6 servers\n\nTI-RPC is a user-space library of RPC functions that replaces ONC RPC\nand allows RPC to operate in the new world of IPv6.\n\nTI-RPC combines the concept of a transport protocol (UDP and TCP)\nand a protocol family (PF_INET and PF_INET6) into a single identifier\ncalled a \"netid.\"  For example, \"udp\" means UDP over IPv4, and \"udp6\"\nmeans UDP over IPv6.\n\nFor rpcbind, then, the RPC service tuple that is registered and\nadvertised is:\n\n  [RPC program, RPC version, service address and port, netid]\n\ninstead of\n\n  [RPC program, RPC version, port, protocol]\n\nService address is typically ANYADDR, but can be a specific address\nof one of the interfaces on a multi-homed host.  The third item in\nthe new tuple is expressed as a universal address.\n\nThe current Linux rpcbind implementation registers a netid for both\nprotocol families when RPCB_SET is done for just the PF_INET6 version\nof the netid (ie udp6 or tcp6).  So registering \"udp6\" causes a\nregistration for \"udp\" to appear automatically as well.\n\nWe\u0027ve recently determined that this is incorrect behavior.  In the\nTI-RPC world, \"udp6\" is not meant to imply that the registered RPC\nservice handles requests from AF_INET as well, even if the listener\nsocket does address mapping.  \"udp\" and \"udp6\" are entirely separate\ncapabilities, and must be registered separately.\n\nThe Linux kernel, unlike TI-RPC, leverages address mapping to allow a\nsingle listener socket to handle requests for both AF_INET and AF_INET6.\nThis is still OK, but the kernel currently assumes registering \"udp6\"\nwill cover \"udp\" as well.  It registers only \"udp6\" for it\u0027s AF_INET6\nservices, even though they handle both AF_INET and AF_INET6 on the same\nport.\n\nSo svc_register() actually needs to register both \"udp\" and \"udp6\"\nexplicitly (and likewise for TCP).  Until rpcbind is fixed, the\nkernel can ignore the return code for the second RPCB_SET call.\n\nPlease merge this with commit 15231312:\n\n    SUNRPC: Support IPv6 when registering kernel RPC services\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "a26cfad6e0a308a2c68df1f1ef50aabd48b17e6d",
      "tree": "9d200a635720bde73b66fd96e4db9e7ff9be3af7",
      "parents": [
        "7252d575ab0e8771269a3d245c36a05ace5152bd"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 18 19:34:16 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:38 2008 -0400"
      },
      "message": "SUNRPC: Support IPv6 when registering kernel RPC services\n\nIn order to advertise NFS-related services on IPv6 interfaces via\nrpcbind, the kernel RPC server implementation must use\nrpcb_v4_register() instead of rpcb_register().\n\nA new kernel build option allows distributions to use the legacy\nv2 call until they integrate an appropriate user-space rpcbind\ndaemon that can support IPv6 RPC services.\n\nI tried adding some automatic logic to fall back if registering\nwith a v4 protocol request failed, but there are too many corner\ncases.  So I just made it a compile-time switch that distributions\ncan throw when they\u0027ve replaced portmapper with rpcbind.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "7252d575ab0e8771269a3d245c36a05ace5152bd",
      "tree": "e3a60421367bd4a2a01b823772dc40a2af64960a",
      "parents": [
        "14aeb2118d6e9fd9ee988324c740a00c80979093"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 18 19:34:08 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:38 2008 -0400"
      },
      "message": "SUNRPC: Split portmap unregister API into separate function\n\nCreate a separate server-level interface for unregistering RPC services.\n\nThe mechanics of, and the API for, registering and unregistering RPC\nservices will diverge further as support for IPv6 is added.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "14aeb2118d6e9fd9ee988324c740a00c80979093",
      "tree": "ca98af50a2e90fb782605ab6235c3a4b30c5b1a4",
      "parents": [
        "b6632339e3afbcbb438a3c8935190ea22464fc99"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 18 19:34:00 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:37 2008 -0400"
      },
      "message": "SUNRPC: Simplify rpcb_register() API\n\nBruce suggested there\u0027s no need to expose the difference between an error\nsending the PMAP_SET request and an error reply from the portmapper to\nrpcb_register\u0027s callers.  The user space equivalent of rpcb_register() is\npmap_set(3), which returns a bool_t : either the PMAP set worked, or it\ndidn\u0027t.  Simple.\n\nSo let\u0027s remove the \"*okay\" argument from rpcb_register() and\nrpcb_v4_register(), and simply return an error if any part of the call\ndidn\u0027t work.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "b6632339e3afbcbb438a3c8935190ea22464fc99",
      "tree": "13fb088ceb8b18563c2eae311b0007783a612948",
      "parents": [
        "c8ab5f2a13fb41a878863c61a1e27d78f1844b5e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 18 19:33:44 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:37 2008 -0400"
      },
      "message": "SUNRPC: Set V6ONLY socket option for RPC listener sockets\n\nMy plan is to use an AF_INET listener on systems that support only IPv4,\nand an AF_INET6 listener on systems that can support IPv6. Incoming\nIPv4 packets will be posted to an AF_INET6 listener with a mapped IPv4\naddress.\n\nMax Matveev \u003cmakc@sgi.com\u003e says:\n  Creating a single listener can be dangerous - if net.ipv6.bindv6only\n  is enabled then it\u0027s possible to create another listener in v4\n  namespace on the same port and steal the traffic from the \"unifed\"\n  listener. You need to disable V6ONLY explicitly via a sockopt to stop\n  that.\n\nSet appropriate socket option on RPC server listener sockets to prevent\nthis.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "5dd248f6f1ffe1f691fd66749e2a3dc8f8eb7b5e",
      "tree": "d6a69e23505080badaa9a6043dbb8d3044a0b73b",
      "parents": [
        "e851db5b05408b89b9a9429a66814b79fabee2a1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Jun 30 18:45:37 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 17:56:56 2008 -0400"
      },
      "message": "SUNRPC: Use proper INADDR_ANY when setting up RPC services on IPv6\n\nTeach svc_create_xprt() to use the correct ANY address for AF_INET6 based\nRPC services.\n\nNo caller uses AF_INET6 yet.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "e851db5b05408b89b9a9429a66814b79fabee2a1",
      "tree": "99bac979ed90efed99c89a49cb77719ab4c0a229",
      "parents": [
        "72d31053f62c4bc464c2783974926969614a8649"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Jun 30 18:45:30 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 17:56:56 2008 -0400"
      },
      "message": "SUNRPC: Add address family field to svc_serv data structure\n\nIntroduce and initialize an address family field in the svc_serv structure.\n\nThis field will determine what family to use for the service\u0027s listener\nsockets and what families are advertised via the local rpcbind daemon.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "764527a1b3294b4560203979f39a3671b9a26676",
      "tree": "e1894879eeb5a5d513f09dab4e7276aa73676783",
      "parents": [
        "45e9c0de2e86485f8b6633fd64ab19cfbff167f6",
        "e7272403d2f9be3dbb7cc185fcc390e781b1af6b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 19 16:01:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 19 16:01:37 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  e100: Use pci_pme_active to clear PME_Status and disable PME#\n  e1000: prevent corruption of EEPROM/NVM\n  forcedeth: call restore mac addr in nv_shutdown path\n  bnx2: Promote vector field in bnx2_irq structure from u16 to unsigned int\n  sctp: Fix oops when INIT-ACK indicates that peer doesn\u0027t support AUTH\n  sctp: do not enable peer features if we can\u0027t do them.\n  sctp: set the skb-\u003eip_summed correctly when sending over loopback.\n  udp: Fix rcv socket locking\n"
    },
    {
      "commit": "add52379dde2e5300e2d574b172e62c6cf43b3d3",
      "tree": "c322f35beba73d356a44c1e31fed7a5791175eb6",
      "parents": [
        "0ef46e285c062cbe35d60c0adbff96f530d31c86"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Sep 18 16:28:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 18 16:28:27 2008 -0700"
      },
      "message": "sctp: Fix oops when INIT-ACK indicates that peer doesn\u0027t support AUTH\n\nIf INIT-ACK is received with SupportedExtensions parameter which\nindicates that the peer does not support AUTH, the packet will be\nsilently ignore, and sctp_process_init() do cleanup all of the\ntransports in the association.\nWhen T1-Init timer is expires, OOPS happen while we try to choose\na different init transport.\n\nThe solution is to only clean up the non-active transports, i.e\nthe ones that the peer added.  However, that introduces a problem\nwith sctp_connectx(), because we don\u0027t mark the proper state for\nthe transports provided by the user.  So, we\u0027ll simply mark\nuser-provided transports as ACTIVE.  That will allow INIT\nretransmissions to work properly in the sctp_connectx() context\nand prevent the crash.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ef46e285c062cbe35d60c0adbff96f530d31c86",
      "tree": "c2fc631d5760f097bab6b5173166c872639580ff",
      "parents": [
        "a3028b8ed1e1e9930bfa70ce4555fb7f9fad3dcc"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Sep 18 16:27:38 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 18 16:27:38 2008 -0700"
      },
      "message": "sctp: do not enable peer features if we can\u0027t do them.\n\nDo not enable peer features like addip and auth, if they\nare administratively disabled localy.  If the peer resports\nthat he supports something that we don\u0027t, neither end can\nuse it so enabling it is pointless.  This solves a problem\nwhen talking to a peer that has auth and addip enabled while\nwe do not.  Found by Andrei Pelinescu-Onciul \u003candrei@iptel.org\u003e.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a3028b8ed1e1e9930bfa70ce4555fb7f9fad3dcc",
      "tree": "45f2e4fe7618dbf79f0a6ff74ddaa308ddc27277",
      "parents": [
        "93821778def10ec1e69aa3ac10adee975dad4ff3"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Sep 18 02:48:25 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 18 02:48:25 2008 -0700"
      },
      "message": "sctp: set the skb-\u003eip_summed correctly when sending over loopback.\n\nLoopback used to clobber the ip_summed filed which sctp then used\nto figure out if it needed to do checksumming or not.  Now that\nloopback doesn\u0027t do that any more, sctp needs to set the ip_summed\nfield correctly.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45e9c0de2e86485f8b6633fd64ab19cfbff167f6",
      "tree": "0d4b478f259ea083e3f94363eebdf518413162ae",
      "parents": [
        "c8b0f4382cd7b5e58b17bd30d16898b7f249813c"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Sep 15 16:43:18 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 16 19:39:33 2008 -0700"
      },
      "message": "warn: Turn the netdev timeout WARN_ON() into a WARN()\n\nthis patch turns the netdev timeout WARN_ON_ONCE() into a WARN_ONCE(),\nso that the device and driver names are inside the warning message.\nThis helps automated tools like kerneloops.org to collect the data\nand do statistics, as well as making it more likely that humans\ncut-n-paste the important message as part of a bugreport.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "93821778def10ec1e69aa3ac10adee975dad4ff3",
      "tree": "5cd95c0592407ac49b4f6bd9aa8ba71d93500aae",
      "parents": [
        "cff502a38394fd33693f6233e03fca363dfa956d"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Sep 15 11:48:46 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 15 11:48:46 2008 -0700"
      },
      "message": "udp: Fix rcv socket locking\n\nThe previous patch in response to the recursive locking on IPsec\nreception is broken as it tries to drop the BH socket lock while in\nuser context.\n\nThis patch fixes it by shrinking the section protected by the\nsocket lock to sock_queue_rcv_skb only.  The only reason we added\nthe lock is for the accounting which happens in that function.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c6a329e444725f24c02192ac493d8a7cd9fa638",
      "tree": "73a48d087108537a174290f3a8a01814313fbf63",
      "parents": [
        "69da6b87fcb270f758fe75141c32e041f8db510c"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Sep 12 03:11:54 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Sep 12 03:11:54 2008 +0200"
      },
      "message": "[Bluetooth] Fix regression from using default link policy\n\nTo speed up the Simple Pairing connection setup, the support for the\ndefault link policy has been enabled. This is in contrast to settings\nthe link policy on every connection setup. Using the default link policy\nis the preferred way since there is no need to dynamically change it for\nevery connection.\n\nFor backward compatibility reason and to support old userspace the\nHCISETLINKPOL ioctl has been switched over to using hci_request() to\nissue the HCI command for setting the default link policy instead of\njust storing it in the HCI device structure.\n\nHowever the hci_request() can only be issued when the device is\nbrought up. If used on a device that is registered, but still down\nit will timeout and fail. This is problematic since the command is\nput on the TX queue and the Bluetooth core tries to submit it to\nhardware that is not ready yet. The timeout for these requests is\n10 seconds and this causes a significant regression when setting up\na new device.\n\nThe userspace can perfectly handle a failure of the HCISETLINKPOL\nioctl and will re-submit it later, but the 10 seconds delay causes\na problem. So in case hci_request() is called on a device that is\nstill down, just fail it with ENETDOWN to indicate what happens.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e550dfb0c2c31b6363aa463a035fc9f8dcaa3c9b",
      "tree": "66f11aed70a892a3768d3e0f5100cd4c1c7b6b1e",
      "parents": [
        "225f40055f779032974a9fce7b2f9c9eda04ff58"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Sep 09 13:51:35 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 09 13:51:35 2008 -0700"
      },
      "message": "ipv6: Fix OOPS in ip6_dst_lookup_tail().\n\nThis fixes kernel bugzilla 11469: \"TUN with 1024 neighbours:\nip6_dst_lookup_tail NULL crash\"\n\ndst-\u003eneighbour is not necessarily hooked up at this point\nin the processing path, so blindly dereferencing it is\nthe wrong thing to do.  This NULL check exists in other\nsimilar paths and this case was just an oversight.\n\nAlso fix the completely wrong and confusing indentation\nhere while we\u0027re at it.\n\nBased upon a patch by Evgeniy Polyakov.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "225f40055f779032974a9fce7b2f9c9eda04ff58",
      "tree": "dc2d8621f11ca7524ffc895c7c0a64593557fee9",
      "parents": [
        "fd9ec7d31ffc36917dc7cac0fd0435f587a572d4"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Sep 09 05:23:37 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 09 05:23:37 2008 -0700"
      },
      "message": "ipsec: Restore larval states and socket policies in dump\n\nThe commit commit 4c563f7669c10a12354b72b518c2287ffc6ebfb3 (\"[XFRM]:\nSpeed up xfrm_policy and xfrm_state walking\") inadvertently removed\nlarval states and socket policies from netlink dumps.  This patch\nrestores them.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd9ec7d31ffc36917dc7cac0fd0435f587a572d4",
      "tree": "844da38556f1334959d47bab1d04d0937df8efa5",
      "parents": [
        "82a28c794f27aac17d7a3ebd7f14d731a11a5532",
        "e7c29cb16c833441fd2160642bb13025f4e7ac70"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 09 02:11:11 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 09 02:11:11 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-2.6\n"
    },
    {
      "commit": "e7c29cb16c833441fd2160642bb13025f4e7ac70",
      "tree": "7ba44be60b7bf9c4e7bee459735ebabdc85eb8fd",
      "parents": [
        "09ab6f4c2376a0fc31abde1e2991513f900ea825"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 09 07:19:20 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 09 07:19:20 2008 +0200"
      },
      "message": "[Bluetooth] Reject L2CAP connections on an insecure ACL link\n\nThe Security Mode 4 of the Bluetooth 2.1 specification has strict\nauthentication and encryption requirements. It is the initiators job\nto create a secure ACL link. However in case of malicious devices, the\nacceptor has to make sure that the ACL is encrypted before allowing\nany kind of L2CAP connection. The only exception here is the PSM 1 for\nthe service discovery protocol, because that is allowed to run on an\ninsecure ACL link.\n\nPreviously it was enough to reject a L2CAP connection during the\nconnection setup phase, but with Bluetooth 2.1 it is forbidden to\ndo any L2CAP protocol exchange on an insecure link (except SDP).\n\nThe new hci_conn_check_link_mode() function can be used to check the\nintegrity of an ACL link. This functions also takes care of the cases\nwhere Security Mode 4 is disabled or one of the devices is based on\nan older specification.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "09ab6f4c2376a0fc31abde1e2991513f900ea825",
      "tree": "f002d719a8a9a2c6344f06a5b9346bc053b4054d",
      "parents": [
        "f1c08ca559387ab30992055596d54061dfa022b1"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 09 07:19:20 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 09 07:19:20 2008 +0200"
      },
      "message": "[Bluetooth] Enforce correct authentication requirements\n\nWith the introduction of Security Mode 4 and Simple Pairing from the\nBluetooth 2.1 specification it became mandatory that the initiator\nrequires authentication and encryption before any L2CAP channel can\nbe established. The only exception here is PSM 1 for the service\ndiscovery protocol (SDP). It is meant to be used without any encryption\nsince it contains only public information. This is how Bluetooth 2.0\nand before handle connections on PSM 1.\n\nFor Bluetooth 2.1 devices the pairing procedure differentiates between\nno bonding, general bonding and dedicated bonding. The L2CAP layer\nwrongly uses always general bonding when creating new connections, but it\nshould not do this for SDP connections. In this case the authentication\nrequirement should be no bonding and the just-works model should be used,\nbut in case of non-SDP connection it is required to use general bonding.\n\nIf the new connection requires man-in-the-middle (MITM) protection, it\nalso first wrongly creates an unauthenticated link key and then later on\nrequests an upgrade to an authenticated link key to provide full MITM\nprotection. With Simple Pairing the link key generation is an expensive\noperation (compared to Bluetooth 2.0 and before) and doing this twice\nduring a connection setup causes a noticeable delay when establishing\na new connection. This should be avoided to not regress from the expected\nBluetooth 2.0 connection times. The authentication requirements are known\nup-front and so enforce them.\n\nTo fulfill these requirements the hci_connect() function has been extended\nwith an authentication requirement parameter that will be stored inside\nthe connection information and can be retrieved by userspace at any\ntime. This allows the correct IO capabilities exchange and results in\nthe expected behavior.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "f1c08ca559387ab30992055596d54061dfa022b1",
      "tree": "ad95ceaf1d26b798a938ad09e2fec943a890dc11",
      "parents": [
        "24342c34a022ee90839873d91396045e12ef1090"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 09 07:19:19 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 09 07:19:19 2008 +0200"
      },
      "message": "[Bluetooth] Fix reference counting during ACL config stage\n\nThe ACL config stage keeps holding a reference count on incoming\nconnections when requesting the extended features. This results in\nkeeping an ACL link up without any users. The problem here is that\nthe Bluetooth specification doesn\u0027t define an ownership of the ACL\nlink and thus it can happen that the implementation on the initiator\nside doesn\u0027t care about disconnecting unused links. In this case the\nacceptor needs to take care of this.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "bcbc713470283bc82d043fd23b02e41a9eb8dee5",
      "tree": "2cd88a1b83dad55dc9e489f151114c0717015ac5",
      "parents": [
        "b364e2f5262e972e731a576dfc6ede0689a6c19e",
        "8d4698f7a54a492a1b96c505b30fe750ae3e61d5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 08 15:43:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 08 15:43:44 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  bridge: don\u0027t allow setting hello time to zero\n  netns : fix kernel panic in timewait socket destruction\n  pkt_sched: Fix qdisc state in net_tx_action()\n  netfilter: nf_conntrack_irc: make sure string is terminated before calling simple_strtoul\n  netfilter: nf_conntrack_gre: nf_ct_gre_keymap_flush() fixlet\n  netfilter: nf_conntrack_gre: more locking around keymap list\n  netfilter: nf_conntrack_sip: de-static helper pointers\n"
    },
    {
      "commit": "8d4698f7a54a492a1b96c505b30fe750ae3e61d5",
      "tree": "4bec6c7dcf06bb5df9645d702d554a071007b83a",
      "parents": [
        "d315492b1a6ba29da0fa2860759505ae1b2db857"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Sep 08 13:44:40 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 08 13:46:54 2008 -0700"
      },
      "message": "bridge: don\u0027t allow setting hello time to zero\n\nDushan Tcholich reports that on his system ksoftirqd can consume\nbetween %6 to %10 of cpu time, and cause ~200 context switches per\nsecond.\n\nHe then correlated this with a report by bdupree@techfinesse.com:\n\n\thttp://marc.info/?l\u003dlinux-kernel\u0026m\u003d119613299024398\u0026w\u003d2\n\nand the culprit cause seems to be starting the bridge interface.\nIn particular, when starting the bridge interface, his scripts\nare specifying a hello timer interval of \"0\".\n\nThe bridge hello time can\u0027t be safely set to values less than 1\nsecond, otherwise it is possible to end up with a runaway timer.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d315492b1a6ba29da0fa2860759505ae1b2db857",
      "tree": "1019a3c34af19939733e6d1e7d3163c73c73eb69",
      "parents": [
        "e8a83e10d7dfe5d0841062780769b30f65417e15"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Mon Sep 08 13:17:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 08 13:17:27 2008 -0700"
      },
      "message": "netns : fix kernel panic in timewait socket destruction\n\nHow to reproduce ?\n - create a network namespace\n - use tcp protocol and get timewait socket\n - exit the network namespace\n - after a moment (when the timewait socket is destroyed), the kernel\n   panics.\n\n# BUG: unable to handle kernel NULL pointer dereference at\n0000000000000007\nIP: [\u003cffffffff821e394d\u003e] inet_twdr_do_twkill_work+0x6e/0xb8\nPGD 119985067 PUD 11c5c0067 PMD 0\nOops: 0000 [1] SMP\nCPU 1\nModules linked in: ipv6 button battery ac loop dm_mod tg3 libphy ext3 jbd\nedd fan thermal processor thermal_sys sg sata_svw libata dock serverworks\nsd_mod scsi_mod ide_disk ide_core [last unloaded: freq_table]\nPid: 0, comm: swapper Not tainted 2.6.27-rc2 #3\nRIP: 0010:[\u003cffffffff821e394d\u003e] [\u003cffffffff821e394d\u003e]\ninet_twdr_do_twkill_work+0x6e/0xb8\nRSP: 0018:ffff88011ff7fed0 EFLAGS: 00010246\nRAX: ffffffffffffffff RBX: ffffffff82339420 RCX: ffff88011ff7ff30\nRDX: 0000000000000001 RSI: ffff88011a4d03c0 RDI: ffff88011ac2fc00\nRBP: ffffffff823392e0 R08: 0000000000000000 R09: ffff88002802a200\nR10: ffff8800a5c4b000 R11: ffffffff823e4080 R12: ffff88011ac2fc00\nR13: 0000000000000001 R14: 0000000000000001 R15: 0000000000000000\nFS: 0000000041cbd940(0000) GS:ffff8800bff839c0(0000)\nknlGS:0000000000000000\nCS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b\nCR2: 0000000000000007 CR3: 00000000bd87c000 CR4: 00000000000006e0\nDR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\nDR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\nProcess swapper (pid: 0, threadinfo ffff8800bff9e000, task\nffff88011ff76690)\nStack: ffffffff823392e0 0000000000000100 ffffffff821e3a3a\n0000000000000008\n0000000000000000 ffffffff821e3a61 ffff8800bff7c000 ffffffff8203c7e7\nffff88011ff7ff10 ffff88011ff7ff10 0000000000000021 ffffffff82351108\nCall Trace:\n\u003cIRQ\u003e [\u003cffffffff821e3a3a\u003e] ? inet_twdr_hangman+0x0/0x9e\n[\u003cffffffff821e3a61\u003e] ? inet_twdr_hangman+0x27/0x9e\n[\u003cffffffff8203c7e7\u003e] ? run_timer_softirq+0x12c/0x193\n[\u003cffffffff820390d1\u003e] ? __do_softirq+0x5e/0xcd\n[\u003cffffffff8200d08c\u003e] ? call_softirq+0x1c/0x28\n[\u003cffffffff8200e611\u003e] ? do_softirq+0x2c/0x68\n[\u003cffffffff8201a055\u003e] ? smp_apic_timer_interrupt+0x8e/0xa9\n[\u003cffffffff8200cad6\u003e] ? apic_timer_interrupt+0x66/0x70\n\u003cEOI\u003e [\u003cffffffff82011f4c\u003e] ? default_idle+0x27/0x3b\n[\u003cffffffff8200abbd\u003e] ? cpu_idle+0x5f/0x7d\n\n\nCode: e8 01 00 00 4c 89 e7 41 ff c5 e8 8d fd ff ff 49 8b 44 24 38 4c 89 e7\n65 8b 14 25 24 00 00 00 89 d2 48 8b 80 e8 00 00 00 48 f7 d0 \u003c48\u003e 8b 04 d0\n48 ff 40 58 e8 fc fc ff ff 48 89 df e8 c0 5f 04 00\nRIP [\u003cffffffff821e394d\u003e] inet_twdr_do_twkill_work+0x6e/0xb8\nRSP \u003cffff88011ff7fed0\u003e\nCR2: 0000000000000007\n\nThis patch provides a function to purge all timewait sockets related\nto a network namespace. The timewait sockets life cycle is not tied with\nthe network namespace, that means the timewait sockets stay alive while\nthe network namespace dies. The timewait sockets are for avoiding to\nreceive a duplicate packet from the network, if the network namespace is\nfreed, the network stack is removed, so no chance to receive any packets\nfrom the outside world. Furthermore, having a pending destruction timer\non these sockets with a network namespace freed is not safe and will lead\nto an oops if the timer callback which try to access data belonging to \nthe namespace like for example in:\n\tinet_twdr_do_twkill_work\n\t\t-\u003e NET_INC_STATS_BH(twsk_net(tw), LINUX_MIB_TIMEWAITED);\n\nPurging the timewait sockets at the network namespace destruction will:\n 1) speed up memory freeing for the namespace\n 2) fix kernel panic on asynchronous timewait destruction\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e8a83e10d7dfe5d0841062780769b30f65417e15",
      "tree": "bc7069b34bb3173970ec06690323a1ab0f89ff56",
      "parents": [
        "e3b802ba885b54f4050164c3cfd9e0ba9c73173a"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Sun Sep 07 18:41:21 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 07 18:41:21 2008 -0700"
      },
      "message": "pkt_sched: Fix qdisc state in net_tx_action()\n\nnet_tx_action() can skip __QDISC_STATE_SCHED bit clearing while qdisc\nis neither ran nor rescheduled, which may cause endless loop in\ndev_deactivate().\n\nReported-by: Denys Fedoryshchenko \u003cdenys@visp.net.lb\u003e\nTested-by: Denys Fedoryshchenko \u003cdenys@visp.net.lb\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e3b802ba885b54f4050164c3cfd9e0ba9c73173a",
      "tree": "ff57e0687a42951c974db349dd67ccb5caf4423f",
      "parents": [
        "51807e91a76a531d059ec7ce3395c435e4df52a8"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sun Sep 07 18:21:24 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 07 18:21:24 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_irc: make sure string is terminated before calling simple_strtoul\n\nAlexey Dobriyan points out:\n\n1. simple_strtoul() silently accepts all characters for given base even\n   if result won\u0027t fit into unsigned long. This is amazing stupidity in\n   itself, but\n\n2. nf_conntrack_irc helper use simple_strtoul() for DCC request parsing.\n   Data first copied into 64KB buffer, so theoretically nothing prevents\n   reading past the end of it, since data comes from network given 1).\n\nThis is not actually a problem currently since we\u0027re guaranteed to have\na 0 byte in skb_shared_info or in the buffer the data is copied to, but\nto make this more robust, make sure the string is actually terminated.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "51807e91a76a531d059ec7ce3395c435e4df52a8",
      "tree": "a2d88b7df0e16e627c8771b072decdc9e1c43c33",
      "parents": [
        "887464a41fde7e9e1e11ca86748338033c502446"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Sep 07 18:20:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 07 18:20:36 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_gre: nf_ct_gre_keymap_flush() fixlet\n\nIt does \"kfree(list_head)\" which looks wrong because entity that was\nallocated is definitely not list_head.\n\nHowever, this all works because list_head is first item in\nstruct nf_ct_gre_keymap.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "887464a41fde7e9e1e11ca86748338033c502446",
      "tree": "add59cbaf1f8fc207cb0d2bbd18e1ac97a355246",
      "parents": [
        "66bf79182d6531c14c1f9a507b6bbf374a2ae4cd"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Sep 07 18:20:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 07 18:20:08 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_gre: more locking around keymap list\n\ngre_keymap_list should be protected in all places.\n(unless I\u0027m misreading something)\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "66bf79182d6531c14c1f9a507b6bbf374a2ae4cd",
      "tree": "fdec7ca17cabf738dbf37d50a6156ffc4e1d023c",
      "parents": [
        "fca1287a3a9246d4facc27a0a455fada18fd1164"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Sep 07 18:19:25 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 07 18:19:25 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_sip: de-static helper pointers\n\nHelper\u0027s -\u003ehelp hook can run concurrently with itself, so iterating over\nSIP helpers with static pointer won\u0027t work reliably.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bf7394ccc13fe291d9258f01113b4c61214ddeae",
      "tree": "0ed848f769bf5117fd96f03ffdc3bf0ec8a8e2b2",
      "parents": [
        "b380b0d4f7dffcc235c0facefa537d4655619101"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 05 12:38:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 05 12:38:09 2008 -0700"
      },
      "message": "Revert \"mac80211: Use IWEVASSOCREQIE instead of IWEVCUSTOM\"\n\nThis reverts commit 087d833e5a9f67ba933cb32eaf5a2279c1a5b47c, which was\nreported to break wireless at least in some combinations with 32bit user\nspace and a 64bit kernel.  Alex Williamnson bisected it to this commit.\n\nReported-and-bisected-by: Alex Williamson \u003calex.williamson@hp.com\u003e\nAcked-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "316343e2cfd9a4bb4c70d0e1991e7a74840fe29e",
      "tree": "3608312dfc3c6af92c9abb79f0b8984d0473feee",
      "parents": [
        "ec0c15afb41fd9ad45b53468b60db50170e22346",
        "fca1287a3a9246d4facc27a0a455fada18fd1164"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 03 16:21:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 03 16:21:02 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  bnx2x: Accessing un-mapped page\n  ath9k: Fix TX control flag use for no ACK and RTS/CTS\n  ath9k: Fix TX status reporting\n  iwlwifi: fix STATUS_EXIT_PENDING is not set on pci_remove\n  iwlwifi: call apm stop on exit\n  iwlwifi: fix Tx cmd memory allocation failure handling\n  iwlwifi: fix rx_chain computation\n  iwlwifi: fix station mimo power save values\n  iwlwifi: remove false rxon if rx chain changes\n  iwlwifi: fix hidden ssid discovery in passive channels\n  iwlwifi: W/A for the TSF correction in IBSS\n  netxen: Remove workaround for chipset quirk\n  pcnet-cs, axnet_cs: add new IDs, remove dup ID with less info\n  ixgbe: initialize interrupt throttle rate\n  net/usb/pegasus: avoid hundreds of diagnostics\n  tipc: Don\u0027t use structure names which easily globally conflict.\n"
    },
    {
      "commit": "6c00055a819ce8a6e2c3af2f65d4ea1a8559c491",
      "tree": "10a99e61740723be45ba056b2edd623d237c0207",
      "parents": [
        "37b08e34a98c664bea86e3fae718ac45a46b7276"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 02 23:38:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 02 23:38:32 2008 -0700"
      },
      "message": "tipc: Don\u0027t use structure names which easily globally conflict.\n\nAndrew Morton reported a build failure on sparc32, because TIPC\nuses names like \"struct node\" and there is a like named data\nstructure defined in linux/node.h\n\nThis just regexp replaces \"struct node*\" to \"struct tipc_node*\"\nto avoid this and any future similar problems.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d26acd92fa990764b72608a68224f46fac377032",
      "tree": "2f14b3669e2efcd403c5309a3dc71b9551718e8c",
      "parents": [
        "fbb16e243887332dd5754e48ffe5b963378f3cd2",
        "37b08e34a98c664bea86e3fae718ac45a46b7276"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 21:02:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 21:02:14 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  ipsec: Fix deadlock in xfrm_state management.\n  ipv: Re-enable IP when MTU \u003e 68\n  net/xfrm: Use an IS_ERR test rather than a NULL test\n  ath9: Fix ath_rx_flush_tid() for IRQs disabled kernel warning message.\n  ath9k: Incorrect key used when group and pairwise ciphers are different.\n  rt2x00: Compiler warning unmasked by fix of BUILD_BUG_ON\n  mac80211: Fix debugfs union misuse and pointer corruption\n  wireless/libertas/if_cs.c: fix memory leaks\n  orinoco: Multicast to the specified addresses\n  iwlwifi: fix 64bit platform firmware loading\n  iwlwifi: fix apm_stop (wrong bit polarity for FLAG_INIT_DONE)\n  iwlwifi: workaround interrupt handling no some platforms\n  iwlwifi: do not use GFP_DMA in iwl_tx_queue_init\n  net/wireless/Kconfig: clarify the description for CONFIG_WIRELESS_EXT_SYSFS\n  net: Unbreak userspace usage of linux/mroute.h\n  pkt_sched: Fix locking of qdisc_root with qdisc_root_sleeping_lock()\n  ipv6: When we droped a packet, we should return NET_RX_DROP instead of 0\n"
    },
    {
      "commit": "37b08e34a98c664bea86e3fae718ac45a46b7276",
      "tree": "8d0cc32bdbfda4d992177aeda56700bea0f918dd",
      "parents": [
        "06770843c2f0f929a6e0c758dc433902a01aabfb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 02 20:14:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 02 20:14:15 2008 -0700"
      },
      "message": "ipsec: Fix deadlock in xfrm_state management.\n\nEver since commit 4c563f7669c10a12354b72b518c2287ffc6ebfb3\n(\"[XFRM]: Speed up xfrm_policy and xfrm_state walking\") it is\nillegal to call __xfrm_state_destroy (and thus xfrm_state_put())\nwith xfrm_state_lock held.  If we do, we\u0027ll deadlock since we\nhave the lock already and __xfrm_state_destroy() tries to take\nit again.\n\nFix this by pushing the xfrm_state_put() calls after the lock\nis dropped.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "06770843c2f0f929a6e0c758dc433902a01aabfb",
      "tree": "b579cbcf3f960289cfe5c586f7e38a03abc88df6",
      "parents": [
        "9d7d74029e0f5fde3b88b39892b9b9cfdf4ea10a"
      ],
      "author": {
        "name": "Breno Leitao",
        "email": "leitao@linux.vnet.ibm.com",
        "time": "Tue Sep 02 17:28:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 02 17:28:58 2008 -0700"
      },
      "message": "ipv: Re-enable IP when MTU \u003e 68\n\nRe-enable IP when the MTU gets back to a valid size. \n\nThis patch just checks if the in_dev is NULL on a NETDEV_CHANGEMTU event\nand if MTU is valid (bigger than 68), then re-enable in_dev. \n\nAlso a function that checks valid MTU size was created.\n\nSigned-off-by: Breno Leitao \u003cleitao@linux.vnet.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d7d74029e0f5fde3b88b39892b9b9cfdf4ea10a",
      "tree": "a079c58127d8aae4977c0650e5327859e93e22e9",
      "parents": [
        "773b4e02be28220e9ead80a5fdb180031361439a"
      ],
      "author": {
        "name": "Julien Brunel",
        "email": "brunel@diku.dk",
        "time": "Tue Sep 02 17:24:28 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 02 17:24:28 2008 -0700"
      },
      "message": "net/xfrm: Use an IS_ERR test rather than a NULL test\n\nIn case of error, the function xfrm_bundle_create returns an ERR\npointer, but never returns a NULL pointer. So a NULL test that comes\nafter an IS_ERR test should be deleted.\n\nThe semantic match that finds this problem is as follows:\n(http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@match_bad_null_test@\nexpression x, E;\nstatement S1,S2;\n@@\nx \u003d  xfrm_bundle_create(...)\n... when !\u003d x \u003d E\n*  if (x !\u003d NULL) \nS1 else S2\n// \u003c/smpl\u003e\n\nSigned-off-by: Julien Brunel \u003cbrunel@diku.dk\u003e\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2b58b209399844995ad48e421267e359e16c03db",
      "tree": "25f04fc9b6efa005666fff54f0ccecc38fa32b83",
      "parents": [
        "9a52028e534b0567913a4144060e774891c00a37"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Thu Aug 28 15:12:06 2008 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 02 17:39:50 2008 -0400"
      },
      "message": "mac80211: Fix debugfs union misuse and pointer corruption\n\ndebugfs union in struct ieee80211_sub_if_data is misused by including a\ncommon default_key dentry as a union member. This ends occupying the same\nmemory area with the first dentry in other union members (structures;\nusually drop_unencrypted). Consequently, debugfs operations on\ndefault_key symlinks and drop_unencrypted entry are using the same\ndentry pointer even though they are supposed to be separate ones. This\ncan lead to removing entries incorrectly or potentially leaving\nsomething behind since one of the dentry pointers gets lost.\n\nFix this by moving the default_key dentry to a new struct\n(common_debugfs) that contains dentries (more to be added in future)\nthat are shared by all vif types. The debugfs union must only be used\nfor vif type-specific entries to avoid this type of pointer corruption.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d9664741e0e2216770d6e52646474d3982b8eb55",
      "tree": "19892a41a970bbda679a44dc2bbb974aad2d6d81",
      "parents": [
        "7c19a3d280297d43ef5ff7c6b205dc208a16d3d1"
      ],
      "author": {
        "name": "Florian Mickler",
        "email": "florian@mickler.org",
        "time": "Tue Sep 02 15:26:34 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 02 15:03:19 2008 -0400"
      },
      "message": "net/wireless/Kconfig: clarify the description for CONFIG_WIRELESS_EXT_SYSFS\n\nCurrent setup with hal and NetworkManager will fail to work\nwithout newest hal version with this config option disabled.\n\nAlthough this will solve itself by time, at the moment it is\ndishonest to say that we don\u0027t know any software that uses it,\nif there are many many people relying on old hal versions.\n\nSigned-off-by: Florian Mickler \u003cflorian@mickler.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e77295dc9e6b52281ae85af4068f13752524e9f4",
      "tree": "fca6b723f6c91f2af79b28f05c05e114720fbe66",
      "parents": [
        "1136cf11066a32d4ac2a476dac302858d763703d",
        "91b80969ba466ba4b915a4a1d03add8c297add3f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 10:58:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 10:58:11 2008 -0700"
      },
      "message": "Merge branch \u0027for-2.6.27\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.27\u0027 of git://linux-nfs.org/~bfields/linux:\n  nfsd: fix buffer overrun decoding NFSv4 acl\n  sunrpc: fix possible overrun on read of /proc/sys/sunrpc/transports\n  nfsd: fix compound state allocation error handling\n  svcrdma: Fix race between svc_rdma_recvfrom thread and the dto_tasklet\n"
    },
    {
      "commit": "27df6f25ff218072e0e879a96beeb398a79cdbc8",
      "tree": "92156018e74a963b2abb94bd51a7e7d6b6a72f34",
      "parents": [
        "c228c24bf1138d4757dbe20615df655815446da3"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@gmail.com",
        "time": "Sun Aug 31 19:25:49 2008 +0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 01 14:24:24 2008 -0400"
      },
      "message": "sunrpc: fix possible overrun on read of /proc/sys/sunrpc/transports\n\nVegard Nossum reported\n----------------------\n\u003e I noticed that something weird is going on with /proc/sys/sunrpc/transports.\n\u003e This file is generated in net/sunrpc/sysctl.c, function proc_do_xprt(). When\n\u003e I \"cat\" this file, I get the expected output:\n\u003e    $ cat /proc/sys/sunrpc/transports\n\u003e    tcp 1048576\n\u003e    udp 32768\n\n\u003e But I think that it does not check the length of the buffer supplied by\n\u003e userspace to read(). With my original program, I found that the stack was\n\u003e being overwritten by the characters above, even when the length given to\n\u003e read() was just 1.\n\nDavid Wagner added (among other things) that copy_to_user could be\nprobably used here.\n\nIngo Oeser suggested to use simple_read_from_buffer() here.\n\nThe conclusion is that proc_do_xprt doesn\u0027t check for userside buffer\nsize indeed so fix this by using Ingo\u0027s suggestion.\n\nReported-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@gmail.com\u003e\nCC: Ingo Oeser \u003cioe-lkml@rameria.de\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Greg Banks \u003cgnb@sgi.com\u003e\nCc: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "102396ae65108b026e4e1868e30fa013f45a169e",
      "tree": "1164f9020a3fa47460a2ab72e07c3308be2290ee",
      "parents": [
        "3cc76caa98b092a8fb3e7b4303c70f847db0651f"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Fri Aug 29 14:21:52 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 29 14:27:52 2008 -0700"
      },
      "message": "pkt_sched: Fix locking of qdisc_root with qdisc_root_sleeping_lock()\n\nUse qdisc_root_sleeping_lock() instead of qdisc_root_lock() where\nappropriate. The only difference is while dev is deactivated, when\ncurrently we can use a sleeping qdisc with the lock of noop_qdisc.\nThis shouldn\u0027t be dangerous since after deactivation root lock could\nbe used only by gen_estimator code, but looks wrong anyway.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3cc76caa98b092a8fb3e7b4303c70f847db0651f",
      "tree": "ef2380db53d72de84c498c86a4db78b2abe942f4",
      "parents": [
        "d97240552cd98c4b07322f30f66fd9c3ba4171de"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Fri Aug 29 14:06:51 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 29 14:27:51 2008 -0700"
      },
      "message": "ipv6: When we droped a packet, we should return NET_RX_DROP instead of 0\n\nSigned-off-by: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d97240552cd98c4b07322f30f66fd9c3ba4171de",
      "tree": "61a8fd1ace711bcf2c832d0c453d8fbf6f8f3003",
      "parents": [
        "328fc47ea0bcc27d9afa69c3ad6e52431cadd76c"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Aug 27 16:09:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 16:09:49 2008 -0700"
      },
      "message": "sctp: fix random memory dereference with SCTP_HMAC_IDENT option.\n\nThe number of identifiers needs to be checked against the option\nlength.  Also, the identifier index provided needs to be verified\nto make sure that it doesn\u0027t exceed the bounds of the array.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "328fc47ea0bcc27d9afa69c3ad6e52431cadd76c",
      "tree": "5969688468a63ee01db68be4adff671bd9aa85c8",
      "parents": [
        "f2455eb176ac87081bbfc9a44b21c7cd2bc1967e"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Aug 27 16:08:54 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 16:08:54 2008 -0700"
      },
      "message": "sctp: correct bounds check in sctp_setsockopt_auth_key\n\nThe bonds check to prevent buffer overlflow was not exactly\nright.  It still allowed overflow of up to 8 bytes which is\nsizeof(struct sctp_authkey).\n\nSince optlen is already checked against the size of that struct,\nwe are guaranteed not to cause interger overflow either.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6c36810a731a422535d838cdb440f332c1d91017",
      "tree": "ec8c129bbd7b1277cb947621a930ef7dce03d943",
      "parents": [
        "df69471290cbec7714f6d1fabd14f4e41219cee1",
        "576fdeaef631976c3afcb1d78ef196051282611d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 04:29:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 04:29:50 2008 -0700"
      },
      "message": "Merge branch \u0027no-iwlwifi\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "d994af0d50efc96b2077978fe9f066992639d525",
      "tree": "5f69b70980175e386815da3ac35d08ed27e8a7a0",
      "parents": [
        "7982d5e1b350acb96aa156916c44c25ef87bb809"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Wed Aug 27 02:35:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 02:35:18 2008 -0700"
      },
      "message": "ipv4: mode 0555 in ipv4_skeleton\n\nvpnc on today\u0027s kernel says Cannot open \"/proc/sys/net/ipv4/route/flush\":\nd--------- 0 root root 0 2008-08-26 11:32 /proc/sys/net/ipv4/route\nd--------- 0 root root 0 2008-08-26 19:16 /proc/sys/net/ipv4/neigh\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7982d5e1b350acb96aa156916c44c25ef87bb809",
      "tree": "d1af9ffefd6137a2972b203296ea3961282f5ae8",
      "parents": [
        "fe439dd09d3e4da6a44d35df7371b9c6a2661b99"
      ],
      "author": {
        "name": "Philip Love",
        "email": "love_phil@emc.com",
        "time": "Wed Aug 27 02:33:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 02:33:50 2008 -0700"
      },
      "message": "tcp: fix tcp header size miscalculation when window scale is unused\n\nThe size of the TCP header is miscalculated when the window scale ends\nup being 0. Additionally, this can be induced by sending a SYN to a\npassive open port with a window scale option with value 0.\n\nSigned-off-by: Philip Love \u003clove_phil@emc.com\u003e\nSigned-off-by: Adam Langley \u003cagl@imperialviolet.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6f9b93f1624206c802ac9162c9302edaf59bfd9",
      "tree": "643bd211bf909118311138e588a78834fad7a40d",
      "parents": [
        "f7a54c13c7b072d9426bd5cec1cdb8306df5ef55"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Wed Aug 27 02:25:17 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 02:25:17 2008 -0700"
      },
      "message": "pkt_sched: Fix gen_estimator locks\n\nWhile passing a qdisc root lock to gen_new_estimator() and\ngen_replace_estimator() dev could be deactivated or even before\ngrafting proper root qdisc as qdisc_sleeping (e.g. qdisc_create), so\nusing qdisc_root_lock() is not enough. This patch adds\nqdisc_root_sleeping_lock() for this, plus additional checks, where\nnecessary.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f7a54c13c7b072d9426bd5cec1cdb8306df5ef55",
      "tree": "12134183d09f0826e0488fd281e6c0b830270d37",
      "parents": [
        "666d9bbedfff7c2c37eab92e715641922dee6864"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Wed Aug 27 02:22:07 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 02:22:07 2008 -0700"
      },
      "message": "pkt_sched: Use rcu_assign_pointer() to change dev_queue-\u003eqdisc\n\nThese pointers are RCU protected, so proper primitives should be used.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "666d9bbedfff7c2c37eab92e715641922dee6864",
      "tree": "5df5a04cad7fb147fca45fa3afc45703765ecc7d",
      "parents": [
        "c2d42545774c4bba7232521d836d0793330e3a4e"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Wed Aug 27 02:12:52 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 27 02:15:20 2008 -0700"
      },
      "message": "pkt_sched: Fix dev_graft_qdisc() locking\n\nDuring dev_graft_qdisc() dev is deactivated, so qdisc_root_lock()\nreturns wrong lock of noop_qdisc instead of qdisc_sleeping.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "576fdeaef631976c3afcb1d78ef196051282611d",
      "tree": "2b4c3172e6627b749ae59ea50f3c55edcbb52ee2",
      "parents": [
        "8ab65b03b7893da4a49009e7e356e36e27b0c407"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 26 20:33:34 2008 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 26 20:33:34 2008 -0400"
      },
      "message": "mac80211: quiet chatty IBSS merge message\n\nIt seems obvious that this #ifndef should be the opposite polarity...\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8ab65b03b7893da4a49009e7e356e36e27b0c407",
      "tree": "7e5fd53f9e580996ffc1d0447de7866fb4d8be6b",
      "parents": [
        "93015f0f34e81a47c4126329746ce5f364bafd11"
      ],
      "author": {
        "name": "Jan-Espen Pettersen",
        "email": "sigsegv@radiotube.org",
        "time": "Mon Aug 25 20:29:22 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 26 20:06:33 2008 -0400"
      },
      "message": "mac80211: don\u0027t send empty extended rates IE\n\nThe association request includes a list of supported data rates.\n\n802.11b: 4 supported rates.\n802.11g: 12 (8 + 4) supported rates.\n802.11a: 8 supported rates.\n\nThe rates tag of the assoc request has room for only 8 rates. In case of\n802.11g an extended rate tag is appended. However in net/wireless/mlme.c\nan extended (empty) rate tag is also appended if the number of rates is\nexact 8. This empty (length\u003d0) extended rates tag causes some APs to\ndeny association with code 18 (unsupported rates). These APs include my\nZyXEL G-570U, and according to Tomas Winkler som Cisco APs.\n\n\u0027If count \u003d\u003d 8\u0027 has been used to check for the need for an extended rates\ntag. But count would also be equal to 8 if the for loop exited because of\nno more supported rates. Therefore a check for count being less than\nrates_len would seem more correct.\n\nThanks to:\n * Dan Williams for newbie guidance\n * Tomas Winkler for confirming the problem\n\nSigned-off-by: Jan-Espen Pettersen \u003csigsegv@radiotube.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "93015f0f34e81a47c4126329746ce5f364bafd11",
      "tree": "a65755403354d28148f8b85627ddf0dd544c9277",
      "parents": [
        "667d8af9af775a5fea203890978037ea750816cc"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Mon Aug 25 11:57:06 2008 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 26 20:06:33 2008 -0400"
      },
      "message": "mac80211: Fix debugfs file add/del for netdev\n\nPrevious version was using incorrect union structures for non-AP\ninterfaces when adding and removing max_ratectrl_rateidx and\nforce_unicast_rateidx entries. Depending on the vif type, this ended\nup in corrupting debugfs entries since the dentries inside different\nunion structures ended up going being on top of eachother.. As the\nend result, debugfs files were being left behind with references to\nfreed data (instant kernel oops on access) and directories were not\nremoved properly when unloading mac80211 drivers. This patch fixes\nthose issues by using only a single union structure based on the vif\ntype.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "667d8af9af775a5fea203890978037ea750816cc",
      "tree": "5bdc41ed57b9a5080fd63fafe17c0d5bbd0b0508",
      "parents": [
        "087d833e5a9f67ba933cb32eaf5a2279c1a5b47c"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Sat Aug 23 18:27:38 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 26 20:06:32 2008 -0400"
      },
      "message": "net/mac80211/mesh.c: correct the argument to __mesh_table_free\n\nIn the function mesh_table_grow, it is the new table not the argument table\nthat should be freed if the function fails (cf commit\nbd9b448f4c0a514559bdae4ca18ca3e8cd999c6d)\n\nThe semantic match that detects this problem is as follows:\n(http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@r exists@\nlocal idexpression x;\nexpression E,f;\nposition p1,p2,p3;\nidentifier l;\nstatement S;\n@@\n\nx \u003d mesh_table_alloc@p1(...)\n...\nif (x \u003d\u003d NULL) S\n... when !\u003d E \u003d x\n    when !\u003d mesh_table_free(x)\ngoto@p2 l;\n... when !\u003d E \u003d x\n    when !\u003d f(...,x,...)\n    when any\n(\nreturn \\(0\\|x\\);\n|\nreturn@p3 ...;\n)\n\n@script:python@\np1 \u003c\u003c r.p1;\np2 \u003c\u003c r.p2;\np3 \u003c\u003c r.p3;\n@@\n\nprint \"%s: call on line %s not freed or saved before return on line %s via line %s\" % (p1[0].file,p1[0].line,p3[0].line,p2[0].line)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "087d833e5a9f67ba933cb32eaf5a2279c1a5b47c",
      "tree": "4fec52d3c6628184bb5d6ac417fa5409f04d22e6",
      "parents": [
        "988b02f1bf5b608ef91a9d98c7170d037d0f12e3"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Tue Aug 19 10:54:32 2008 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 26 20:06:32 2008 -0400"
      },
      "message": "mac80211: Use IWEVASSOCREQIE instead of IWEVCUSTOM\n\nThe previous code was using IWEVCUSTOM to report IEs from AssocReq and\nAssocResp frames into user space. This can easily hit the 256 byte\nlimit (IW_CUSTOM_MAX) with APs that include number of vendor IEs in\nAssocResp. This results in the event message not being sent and dmesg\nshowing \"wlan0 (WE) : Wireless Event too big (366)\" type of errors.\n\nConvert mac80211 to use IWEVASSOCREQIE/IWEVASSOCRESPIE to avoid the\nissue of being unable to send association IEs as wireless events. These\nnewer event types use binary encoding and larger maximum size\n(IW_GENERIC_IE_MAX \u003d 1024), so the likelyhood of not being able to send\nthe IEs is much smaller than with IWEVCUSTOM. As an extra benefit, the\ncode is also quite a bit simpler since there is no need to allocate an\nextra buffer for hex encoding.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "988b02f1bf5b608ef91a9d98c7170d037d0f12e3",
      "tree": "649b8dbc86bb25edef876efbe2c706b2bb098a54",
      "parents": [
        "67d2e2dfab31b4c0497ce8a84d63efc931f10bb7"
      ],
      "author": {
        "name": "Felipe Balbi",
        "email": "felipe.balbi@nokia.com",
        "time": "Mon Aug 18 22:56:53 2008 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 26 20:06:31 2008 -0400"
      },
      "message": "net: rfkill: add missing line break\n\nTrivial patch adding a missing line break on\nrfkill_claim_show().\n\nSigned-off-by: Felipe Balbi \u003cfelipe.balbi@nokia.com\u003e\nAcked-by: Ivo van Doorn \u003cIvDoorn@gmail.co\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ce3113ec57abcd41cc5a2fed02474aee3f63d12c",
      "tree": "33c5eeb01120aeb013f351e9327d05f3e6f9e827",
      "parents": [
        "2f4520d35d89ca6c5cd129c38e3b11f0283b7d1b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 15:18:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 25 15:18:15 2008 -0700"
      },
      "message": "ipv6: sysctl fixes\n\nBraino: net.ipv6 in ipv6 skeleton has no business in rotable\nclass\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2f4520d35d89ca6c5cd129c38e3b11f0283b7d1b",
      "tree": "06038a77e1c4f81a7f349a0c49c6a61061b65922",
      "parents": [
        "30c2235cbc477d4629983d440cdc4f496fec9246"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 15:17:44 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 25 15:17:44 2008 -0700"
      },
      "message": "ipv4: sysctl fixes\n\nnet.ipv4.neigh should be a part of skeleton to avoid ordering problems\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "30c2235cbc477d4629983d440cdc4f496fec9246",
      "tree": "c280fcf36c472f1a21a58f74a2dc76dbf337859e",
      "parents": [
        "f410a1fba7afa79d2992620e874a343fdba28332"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Aug 25 15:16:19 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 25 15:16:19 2008 -0700"
      },
      "message": "sctp: add verification checks to SCTP_AUTH_KEY option\n\nThe structure used for SCTP_AUTH_KEY option contains a\nlength that needs to be verfied to prevent buffer overflow\nconditions.  Spoted by Eugene Teo \u003ceteo@redhat.com\u003e.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f410a1fba7afa79d2992620e874a343fdba28332",
      "tree": "5e08d30678cfadd65a8dfe20bc12160a23faa43d",
      "parents": [
        "fdc0bde90a689b9145f2b6f271c03f4c99d09667"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Sat Aug 23 05:16:46 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 23 05:16:46 2008 -0700"
      },
      "message": "ipv6: protocol for address routes\n\nThis fixes a problem spotted with zebra, but not sure if it is\nnecessary a kernel problem.  With IPV6 when an address is added to an\ninterface, Zebra creates a duplicate RIB entry, one as a connected\nroute, and other as a kernel route.\n\nWhen an address is added to an interface the RTN_NEWADDR message\ncauses Zebra to create a connected route. In IPV4 when an address is\nadded to an interface a RTN_NEWROUTE message is set to user space with\nthe protocol RTPROT_KERNEL. Zebra ignores these messages, because it\nalready has the connected route.\n\nThe problem is that route created in IPV6 has route protocol \u003d\u003d\nRTPROT_BOOT.  Was this a design decision or a bug? This fixes it. Same\npatch applies to both net-2.6 and stable.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fdc0bde90a689b9145f2b6f271c03f4c99d09667",
      "tree": "f29db0a155cee7349f20862d0e1601a5696979df",
      "parents": [
        "f6e0b239a2657ea8cb67f0d83d0bfdbfd19a481b"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Sat Aug 23 04:43:33 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 23 04:43:33 2008 -0700"
      },
      "message": "icmp: icmp_sk() should not use smp_processor_id() in preemptible code\n\nPass namespace into icmp_xmit_lock, obtain socket inside and return\nit as a result for caller.\n\nThanks Alexey Dobryan for this report:\n\nSteps to reproduce:\n\n\tCONFIG_PREEMPT\u003dy\n\tCONFIG_DEBUG_PREEMPT\u003dy\n\ttracepath \u003csomething\u003e\n\nBUG: using smp_processor_id() in preemptible [00000000] code: tracepath/3205\ncaller is icmp_sk+0x15/0x30\nPid: 3205, comm: tracepath Not tainted 2.6.27-rc4 #1\n\nCall Trace:\n [\u003cffffffff8031af14\u003e] debug_smp_processor_id+0xe4/0xf0\n [\u003cffffffff80409405\u003e] icmp_sk+0x15/0x30\n [\u003cffffffff8040a17b\u003e] icmp_send+0x4b/0x3f0\n [\u003cffffffff8025a415\u003e] ? trace_hardirqs_on_caller+0xd5/0x160\n [\u003cffffffff8025a4ad\u003e] ? trace_hardirqs_on+0xd/0x10\n [\u003cffffffff8023a475\u003e] ? local_bh_enable_ip+0x95/0x110\n [\u003cffffffff804285b9\u003e] ? _spin_unlock_bh+0x39/0x40\n [\u003cffffffff8025a26c\u003e] ? mark_held_locks+0x4c/0x90\n [\u003cffffffff8025a4ad\u003e] ? trace_hardirqs_on+0xd/0x10\n [\u003cffffffff8025a415\u003e] ? trace_hardirqs_on_caller+0xd5/0x160\n [\u003cffffffff803e91b4\u003e] ip_fragment+0x8d4/0x900\n [\u003cffffffff803e7030\u003e] ? ip_finish_output2+0x0/0x290\n [\u003cffffffff803e91e0\u003e] ? ip_finish_output+0x0/0x60\n [\u003cffffffff803e6650\u003e] ? dst_output+0x0/0x10\n [\u003cffffffff803e922c\u003e] ip_finish_output+0x4c/0x60\n [\u003cffffffff803e92e3\u003e] ip_output+0xa3/0xf0\n [\u003cffffffff803e68d0\u003e] ip_local_out+0x20/0x30\n [\u003cffffffff803e753f\u003e] ip_push_pending_frames+0x27f/0x400\n [\u003cffffffff80406313\u003e] udp_push_pending_frames+0x233/0x3d0\n [\u003cffffffff804067d1\u003e] udp_sendmsg+0x321/0x6f0\n [\u003cffffffff8040d155\u003e] inet_sendmsg+0x45/0x80\n [\u003cffffffff803b967f\u003e] sock_sendmsg+0xdf/0x110\n [\u003cffffffff8024a100\u003e] ? autoremove_wake_function+0x0/0x40\n [\u003cffffffff80257ce5\u003e] ? validate_chain+0x415/0x1010\n [\u003cffffffff8027dc10\u003e] ? __do_fault+0x140/0x450\n [\u003cffffffff802597d0\u003e] ? __lock_acquire+0x260/0x590\n [\u003cffffffff803b9e55\u003e] ? sockfd_lookup_light+0x45/0x80\n [\u003cffffffff803ba50a\u003e] sys_sendto+0xea/0x120\n [\u003cffffffff80428e42\u003e] ? _spin_unlock_irqrestore+0x42/0x80\n [\u003cffffffff803134bc\u003e] ? __up_read+0x4c/0xb0\n [\u003cffffffff8024e0c6\u003e] ? up_read+0x26/0x30\n [\u003cffffffff8020b8bb\u003e] system_call_fastpath+0x16/0x1b\n\nicmp6_sk() is similar.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6e0b239a2657ea8cb67f0d83d0bfdbfd19a481b",
      "tree": "9d6e3c97a81869fde3958cdbcf431ee3739f9b2c",
      "parents": [
        "2540e0511ea17e25831be543cdf9381e6209950d"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Fri Aug 22 03:24:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 22 03:31:39 2008 -0700"
      },
      "message": "pkt_sched: Fix qdisc list locking\n\nSince some qdiscs call qdisc_tree_decrease_qlen() (so qdisc_lookup())\nwithout rtnl_lock(), adding and deleting from a qdisc list needs\nadditional locking. This patch adds global spinlock qdisc_list_lock\nand wrapper functions for modifying the list. It is considered as a\ntemporary solution until hfsc_dequeue(), netem_dequeue() and\ntbf_dequeue() (or qdisc_tree_decrease_qlen()) are redone.\n\nWith feedback from Herbert Xu and David S. Miller.\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2540e0511ea17e25831be543cdf9381e6209950d",
      "tree": "31c505b9957d82125cd7e779d83da0d389f9d336",
      "parents": [
        "5e739d1752aca4e8f3e794d431503bfca3162df4"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Thu Aug 21 05:11:14 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 21 05:11:14 2008 -0700"
      },
      "message": "pkt_sched: Fix qdisc_watchdog() vs. dev_deactivate() race\n\ndev_deactivate() can skip rescheduling of a qdisc by qdisc_watchdog()\nor other timer calling netif_schedule() after dev_queue_deactivate().\nWe prevent this checking aliveness before scheduling the timer. Since\nduring deactivation the root qdisc is available only as qdisc_sleeping\nadditional accessor qdisc_root_sleeping() is created.\n\nWith feedback from Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5e739d1752aca4e8f3e794d431503bfca3162df4",
      "tree": "c5bdef49d12fbd4bb0eae6fca102607346390cb5",
      "parents": [
        "6a55617ed5d1aa62b850de2cf66f5ede2eef4825"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Aug 21 03:34:25 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 21 03:34:25 2008 -0700"
      },
      "message": "sctp: fix potential panics in the SCTP-AUTH API.\n\nAll of the SCTP-AUTH socket options could cause a panic\nif the extension is disabled and the API is envoked.\n\nAdditionally, there were some additional assumptions that\ncertain pointers would always be valid which may not\nalways be the case.\n\nThis patch hardens the API and address all of the crash\nscenarios.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "195648bbc5ae0848e82f771ecf4cd7497054c212",
      "tree": "644bc8685cab5f83225558888a4398cd0c93c919",
      "parents": [
        "d2805395aadc105d7228511eb0f42d9eea912003"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 19 04:00:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 19 04:00:36 2008 -0700"
      },
      "message": "pkt_sched: Prevent livelock in TX queue running.\n\nIf dev_deactivate() is trying to quiesce the queue, it\nis theoretically possible for another cpu to livelock\ntrying to process that queue.  This happens because\ndev_deactivate() grabs the queue spinlock as it checks\nthe queue state, whereas net_tx_action() does a trylock\nand reschedules the qdisc if it hits the lock.\n\nThis breaks the livelock by adding a check on\n__QDISC_STATE_DEACTIVATED to net_tx_action() when\nthe trylock fails.\n\nBased upon feedback from Herbert Xu and Jarek Poplawski.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d2805395aadc105d7228511eb0f42d9eea912003",
      "tree": "a97b491304831cfc809d1f3d1bcf5280b15bbe8d",
      "parents": [
        "f3b9605d744df537dee10fd06630f35a62b343ec",
        "63fbd24e5102eecfc9d049ed7f4be7f9a25f814f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 19 01:33:25 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 19 01:33:25 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-2.6\n"
    },
    {
      "commit": "f3b9605d744df537dee10fd06630f35a62b343ec",
      "tree": "ca59a163fa700b36620358940f57f88057db7d8a",
      "parents": [
        "deb3abf15fb92a608fba630da2e8719862731714"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 22:33:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 22:33:05 2008 -0700"
      },
      "message": "Revert \"pkt_sched: Add BH protection for qdisc_stab_lock.\"\n\nThis reverts commit 1cfa26661a85549063e369e2b40275eeaa7b923c.\n\nqdisc_destroy() runs fully under RTNL again and not from softint any\nlonger, so this change is no longer needed.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "deb3abf15fb92a608fba630da2e8719862731714",
      "tree": "1a9dddd682bef08a3fddffd647d7d0ee12b08fa5",
      "parents": [
        "e5befbd9525d92bb074b70192eb2c69aae65fc60"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 22:32:10 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 22:32:10 2008 -0700"
      },
      "message": "Revert \"pkt_sched: Protect gen estimators under est_lock.\"\n\nThis reverts commit d4766692e72422f3b0f0e9ac6773d92baad07d51.\n\nqdisc_destroy() now runs in RTNL fully again, so this\nchange is no longer needed.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5befbd9525d92bb074b70192eb2c69aae65fc60",
      "tree": "ad9a3ce178096938f3ccb8c4445d71ace63f3e61",
      "parents": [
        "9f593653742d1dd816c4e94c6e5154a57ccba6d1"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Mon Aug 18 22:30:01 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 22:30:01 2008 -0700"
      },
      "message": "pkt_sched: remove bogus block (cleanup)\n\n...Last block local var got just deleted.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f593653742d1dd816c4e94c6e5154a57ccba6d1",
      "tree": "1e71181cc80da8dc3d6e1da202943482b9eb5500",
      "parents": [
        "fab00c5d15091546be681426c60b2ed2c10513bf"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Aug 18 21:32:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:32:32 2008 -0700"
      },
      "message": "nf_nat: use secure_ipv4_port_ephemeral() for NAT port randomization\n\nUse incoming network tuple as seed for NAT port randomization.\nThis avoids concerns of leaking net_random() bits, and also gives better\nport distribution. Don\u0027t have NAT server, compile tested only.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\n\n[ added missing EXPORT_SYMBOL_GPL ]\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fab00c5d15091546be681426c60b2ed2c10513bf",
      "tree": "b2b2933ae23fdc33410b48f00c0b7a5f6fc76bad",
      "parents": [
        "cb1cb5c47457ff2b604dac2da44cab4d39d11459"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Aug 18 21:31:46 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:31:46 2008 -0700"
      },
      "message": "netfilter: ctnetlink: sleepable allocation with spin lock bh\n\nThis patch removes a GFP_KERNEL allocation while holding a spin lock with\nbottom halves disabled in ctnetlink_change_helper().\n\nThis problem was introduced in 2.6.23 with the netfilter extension\ninfrastructure.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cb1cb5c47457ff2b604dac2da44cab4d39d11459",
      "tree": "3bd23533d093a73d69c748c97486b292786fbc57",
      "parents": [
        "1575e7ea018fec992b94a12a1a491ce693ae9eac"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Aug 18 21:31:24 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:31:24 2008 -0700"
      },
      "message": "netfilter: ctnetlink: fix sleep in read-side lock section\n\nFix allocation with GFP_KERNEL in ctnetlink_create_conntrack() under\nread-side lock sections.\n\nThis problem was introduced in 2.6.25.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1575e7ea018fec992b94a12a1a491ce693ae9eac",
      "tree": "5a93c71ea8ac0cb1ad0703c0ee03cd52aa268707",
      "parents": [
        "46faec9858e8943226464dac50e205bf210d9174"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Aug 18 21:30:55 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:30:55 2008 -0700"
      },
      "message": "netfilter: ctnetlink: fix double helper assignation for NAT\u0027ed conntracks\n\nIf we create a conntrack that has NAT handlings and a helper, the helper\nis assigned twice. This happens because nf_nat_setup_info() - via\nnf_conntrack_alter_reply() - sets the helper before ctnetlink, which\nindeed does not check if the conntrack already has a helper as it thinks that\nit is a brand new conntrack.\n\nThe fix moves the helper assignation before the set of the status flags.\nThis avoids a bogus assertion in __nf_ct_ext_add (if netfilter assertions are\nenabled) which checks that the conntrack must not be confirmed.\n\nThis problem was introduced in 2.6.23 with the netfilter extension\ninfrastructure.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "46faec9858e8943226464dac50e205bf210d9174",
      "tree": "548640a9a13c8c9d5c06289d2ea249e0195eb994",
      "parents": [
        "8e0f36ec371ef4804da46d962d5272b3efb04481"
      ],
      "author": {
        "name": "Anders Grafström",
        "email": "grfstrm@users.sourceforge.net",
        "time": "Mon Aug 18 21:29:57 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:29:57 2008 -0700"
      },
      "message": "netfilter: ipt_addrtype: Fix matching of inverted destination address type\n\nThis patch fixes matching of inverted destination address type.\n\nSigned-off-by: Anders Grafström \u003cgrfstrm@users.sourceforge.net\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e0f36ec371ef4804da46d962d5272b3efb04481",
      "tree": "7207bb6ffa31c1fe6bf7cddb33561a4ebebd5cc4",
      "parents": [
        "d28934ad8a4e87203a95de9c376611de8bc2f013",
        "3eb75aac8907e7ea36f0d078b2cc7393986001cf"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:15:44 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:15:44 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "d28934ad8a4e87203a95de9c376611de8bc2f013",
      "tree": "4ee2a055492d3c462101edd9945e199450497f30",
      "parents": [
        "4d8863a29c4755a0461cd31b6865026187d6c43a"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Aug 18 21:14:20 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:14:20 2008 -0700"
      },
      "message": "dccp: Fix panic caused by too early termination of retransmission mechanism\n\nThanks is due to Wei Yongjun for the detailed analysis and description of this\nbug at http://marc.info/?l\u003ddccp\u0026m\u003d121739364909199\u0026w\u003d2\n\nThe problem is that invalid packets received by a client in state REQUEST cause\nthe retransmission timer for the DCCP-Request to be reset. This includes freeing\nthe Request-skb ( in dccp_rcv_request_sent_state_process() ). As a consequence,\n * the arrival of further packets cause a double-free, triggering a panic(),\n * the connection then may hang, since further retransmissions are blocked.\n\nThis patch changes the order of statements so that the retransmission timer is\nreset, and the pending Request freed, only if a valid Response has arrived (or\nthe number of sysctl-retries has been exhausted).\n\nFurther changes:\n----------------\nTo be on the safe side, replaced __kfree_skb with kfree_skb so that if due to\nunexpected circumstances the sk_send_head is NULL the WARN_ON is used instead.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "4d8863a29c4755a0461cd31b6865026187d6c43a",
      "tree": "502b355314b1ff2e6cef52bf3778aba3bdae80cd",
      "parents": [
        "25bfcd5a78a377ea4c54a3c21e44590e2fc478a6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:03:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:06:19 2008 -0700"
      },
      "message": "pkt_sched: Don\u0027t hold qdisc lock over qdisc_destroy().\n\nBased upon reports by Denys Fedoryshchenko, and feedback\nand help from Jarek Poplawski and Herbert Xu.\n\nWe always either:\n\n1) Never made an external reference to this qdisc.\n\nor\n\n2) Did a dev_deactivate() which purged all asynchronous\n   references.\n\nSo do not lock the qdisc when we call qdisc_destroy(),\nit\u0027s illegal anyways as when we drop the lock this is\nfree\u0027d memory.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25bfcd5a78a377ea4c54a3c21e44590e2fc478a6",
      "tree": "6abe3cb036c724206ec0996351aa8eec12d12b42",
      "parents": [
        "8608db031b4d2932d645709e2cfe8fbcd91a7305"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Aug 18 20:53:34 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:06:09 2008 -0700"
      },
      "message": "pkt_sched: Add lockdep annotation for qdisc locks\n\nQdisc locks are initialized in the same function, qdisc_alloc(), so\nlockdep can\u0027t distinguish tx qdisc lock from rx and reports \"possible\nrecursive locking detected\" when both these locks are taken eg. while\nusing act_mirred with ifb. This looks like a false positive. Anyway,\nafter this patch these locks will be reported more exactly.\n\nReported-by: Denys Fedoryshchenko \u003cdenys@visp.net.lb\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8608db031b4d2932d645709e2cfe8fbcd91a7305",
      "tree": "01b2e63f9f28dddcb5c0dd72e9c8c5b73c866685",
      "parents": [
        "69747650c814a8a79fef412c7416adf823293a3e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 20:51:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:05:56 2008 -0700"
      },
      "message": "pkt_sched: Never schedule non-root qdiscs.\n\nBased upon initial discovery and patch by Jarek Poplawski.\n\nThe qdisc watchdogs can be attached to any qdisc, not just the root,\nso make sure we schedule the correct one.\n\nCBQ has a similar bug.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a61dae1f784f0c4ced0d47721c0efc7033231522",
      "tree": "ec180a4272c17607a695b6c9fc040b985b14e28e",
      "parents": [
        "37465c8a3ec7279e3314623d1e2d2a50c10cf79f"
      ],
      "author": {
        "name": "Ron Rindjunsky",
        "email": "ron.rindjunsky@intel.com",
        "time": "Sun Aug 10 00:54:34 2008 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 18 11:05:13 2008 -0400"
      },
      "message": "mac80211: update new sta\u0027s rx timestamp\n\nThis patch fixes needless probe request caused by zero value in\nsta-\u003elast_rx inside ieee80211_associated flow\n\nSigned-off-by: Ron Rindjunsky \u003cron.rindjunsky@intel.com\u003e\nSigned-off-by: Tomas Winkler \u003ctomas.winkler@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e10e0dfe3ba358cfb442cc3bf0d3f2068785bf5c",
      "tree": "9921c44240e39f07bf825ede5777f72fbdfe40d0",
      "parents": [
        "aaa1553512b9105699113ea7e2ea726f3d9d4de2"
      ],
      "author": {
        "name": "Henrique de Moraes Holschuh",
        "email": "hmh@hmh.eng.br",
        "time": "Sat Aug 02 14:56:25 2008 -0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 18 11:05:12 2008 -0400"
      },
      "message": "rfkill: protect suspended rfkill controllers\n\nGuard rfkill controllers attached to a rfkill class against state changes\nafter class suspend has been issued.\n\nSigned-off-by: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nAcked-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "63fbd24e5102eecfc9d049ed7f4be7f9a25f814f",
      "tree": "9ead3c67300ce8bcdbe26d02ba264e84baea930a",
      "parents": [
        "90855d7b725d764d6d70503bcc1b494cf10ddc98"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Aug 18 13:23:53 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Aug 18 13:23:53 2008 +0200"
      },
      "message": "[Bluetooth] Consolidate maintainers information\n\nThe Bluetooth entries for the MAINTAINERS file are a little bit too\nmuch. Consolidate them into two entries. One for Bluetooth drivers and\nanother one for the Bluetooth subsystem.\n\nAlso the MODULE_AUTHOR should indicate the current maintainer of the\nmodule and actually not the original author. Fix all Bluetooth modules\nto provide current maintainer information.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "90855d7b725d764d6d70503bcc1b494cf10ddc98",
      "tree": "bad737fb7b8ee6593b3fcddce0233f0eb207ea25",
      "parents": [
        "9bfa35fe422c74882e27cc54450a5f76c96aad68"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Aug 18 13:23:53 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Aug 18 13:23:53 2008 +0200"
      },
      "message": "[Bluetooth] Fix userspace breakage due missing class links\n\nThe Bluetooth adapters and connections are best presented via a class\nin sysfs. The removal of the links inside the Bluetooth class broke\nassumptions by userspace programs on how to find attached adapters.\n\nThis patch creates adapters and connections as part of the Bluetooth\nclass, but it uses different device types to distinguish them. The\nuserspace programs can now easily navigate in the sysfs device tree.\n\nThe unused platform device and bus have been removed to keep the\ncode simple and clean.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "69747650c814a8a79fef412c7416adf823293a3e",
      "tree": "c1c83e9ae903b0e93029f0071fdca544d2add340",
      "parents": [
        "96d203169d1d851ac1468f7d4459a09581be364c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 17 23:55:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 00:39:41 2008 -0700"
      },
      "message": "pkt_sched: Fix return value corruption in HTB and TBF.\n\nBased upon a bug report by Josip Rodin.\n\nPacket schedulers should only return NET_XMIT_DROP iff\nthe packet really was dropped.  If the packet does reach\nthe device after we return NET_XMIT_DROP then TCP can\ncrash because it depends upon the enqueue path return\nvalues being accurate.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "96d203169d1d851ac1468f7d4459a09581be364c",
      "tree": "779c9a942452b2bd0f5d7d42cdbc6fa9ca3b14c9",
      "parents": [
        "13601cd8e44aab332cedff1d6dc10786ec890b7b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 17 23:37:16 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 17 23:37:16 2008 -0700"
      },
      "message": "pkt_sched: Fix missed RCU unlock in dev_queue_xmit()\n\nNoticed by Jarek Poplawski.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "13601cd8e44aab332cedff1d6dc10786ec890b7b",
      "tree": "8a0477e6b8a958f070db4c35c93b385e478d8a95",
      "parents": [
        "4cf7cb280e4fcfcd7ae7429e17d798d3a44087af"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Sun Aug 17 23:21:52 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 17 23:21:52 2008 -0700"
      },
      "message": "ipv6: Fix the return interface index when get it while no message is received.\n\nWhen get receiving interface index while no message is received,\nthe bounded device\u0027s index of the socket should be returned.\n\nRFC 3542:\n   Issuing getsockopt() for the above options will return the sticky\n   option value i.e., the value set with setsockopt().  If no sticky\n   option value has been set getsockopt() will return the following\n   values:\n\n   -  For the IPV6_PKTINFO option, it will return an in6_pktinfo\n      structure with ipi6_addr being in6addr_any and ipi6_ifindex being\n      zero.\n\nSigned-off-by: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "4cf7cb280e4fcfcd7ae7429e17d798d3a44087af"
}
