)]}'
{
  "log": [
    {
      "commit": "0858a3a52f659dabf2860f350e5a6a61f069e851",
      "tree": "cec27991ece5515676d10ea2bc19d6d237cbab36",
      "parents": [
        "812219ab8facf07b94e4b3fe81e9cd3fe4129777"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon May 17 10:58:12 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:47 2010 -0700"
      },
      "message": "USB: include/usb/*.h checkpatch cleanup\n\nLots of minor formatting cleanups in includes/usb/ to make checkpatch\nhappier.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "812219ab8facf07b94e4b3fe81e9cd3fe4129777",
      "tree": "e7bbdc24a3e6a6c8c9d2bd5343d29883d5189b2f",
      "parents": [
        "aa84dfc4296b8dd296da9a4d9e19ec1e6f7ddb94"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon May 17 10:40:55 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:47 2010 -0700"
      },
      "message": "USB: usb.h: checkpatch cleanups\n\nMinor formatting changes to clean up the file.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "22b4b6113ec5d0ff2a9175bc611f3f3f61e4e172",
      "tree": "5226f05128912ed10db3a334864d07170be1955b",
      "parents": [
        "b9e000884e50bf6b25a92a3f3580e1d14fe01591"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Wed May 12 23:38:46 2010 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:45 2010 -0700"
      },
      "message": "USB: remove usb_find_device\n\nNow on one uses this function and it seems useless,\nso remove usb_find_device.\n\n[tom@tom linux-2.6-next]$ grep -r -n -I usb_find_device ./\ndrivers/media/dvb/dvb-usb/dvb-usb-init.c:160:static struct\ndvb_usb_device_description * dvb_usb_find_device(struct usb_device\n*udev,struct dvb_usb_device_properties *props, int *cold)\n\ndrivers/media/dvb/dvb-usb/dvb-usb-init.c:230:   if ((desc \u003d\ndvb_usb_find_device(udev,props,\u0026cold)) \u003d\u003d NULL) {\n\ndrivers/usb/core/usb.c:630: * usb_find_device - find a specific usb device in the system\ndrivers/usb/core/usb.c:642:struct usb_device *usb_find_device(u16 vendor_id, u16 product_id)\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ddf8abd2599491cbad959c700b90ba72a5dce8d0",
      "tree": "d04cf8348f36c4a65af77190658ba87a4480cd50",
      "parents": [
        "28824b18ac4705e876a282a15ea0de8fc957551f"
      ],
      "author": {
        "name": "Michal Nazarewicz",
        "email": "m.nazarewicz@samsung.com",
        "time": "Wed May 05 12:53:14 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:43 2010 -0700"
      },
      "message": "USB: f_fs: the FunctionFS driver\n\nThe FunctionFS is a USB composite function that can be used\nwith the composite framework to create an USB gadget.\n\n\u003eFrom kernel point of view it is just a composite function with\nsome unique behaviour.  It may be added to an USB\nconfiguration only after the user space driver has registered\nby writing descriptors and strings (the user space program has\nto provide the same information that kernel level composite\nfunctions provide when they are added to the configuration).\n\n\u003eFrom user space point of view it is a file system which when\nmounted provide an \"ep0\" file.  User space driver need to\nwrite descriptors and strings to that file.  It does not need\nto worry about endpoints, interfaces or strings numbers but\nsimply provide descriptors such as if the function was the\nonly one (endpoints and strings numbers starting from one and\ninterface numbers starting from core).  The FunctionFS changes\nnumbers of those as needed also handling situation when\nnumbers differ in different configurations.\n\nWhen descriptors and strings are written \"ep#\" files appear\n(one for each declared endpoint) which handle communication on\na single endpoint.  Again, FunctionFS takes care of the real\nnumbers and changing of the configuration (which means that\n\"ep1\" file may be really mapped to (say) endpoint 3 (and when\nconfiguration changes to (say) endpoint 2)).  \"ep0\" is used\nfor receiving events and handling setup requests.\n\nWhen all files are closed the function disables itself.\n\nSigned-off-by: Michal Nazarewicz \u003cm.nazarewicz@samsung.com\u003e\nCc: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nCc: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "22c43c81a51e05f61e90445ceb59d486c12fd921",
      "tree": "88582f01bf413bdc4d9d95a512116c9fe44afa33",
      "parents": [
        "24337c133ff92ba8d7c42819db17f7f2b0de3129"
      ],
      "author": {
        "name": "Michal Nazarewicz",
        "email": "m.nazarewicz@samsung.com",
        "time": "Wed May 05 12:53:11 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:42 2010 -0700"
      },
      "message": "wait_event_interruptible_locked() interface\n\nNew wait_event_interruptible{,_exclusive}_locked{,_irq} macros added.\nThey work just like versions without _locked* suffix but require the\nwait queue\u0027s lock to be held.  Also __wake_up_locked() is now exported\nas to pair it with the above macros.\n\nThe use case of this new facility is when one uses wait queue\u0027s lock\nto  protect a data structure.  This may be advantageous if the\nstructure needs to be protected by a spinlock anyway.  In particular,\nwith additional spinlock the following code has to be used to wait\nfor a condition:\n\nspin_lock(\u0026data.lock);\n...\nfor (ret \u003d 0; !ret \u0026\u0026 !(condition); ) {\n\tspin_unlock(\u0026data.lock);\n\tret \u003d wait_event_interruptible(data.wqh, (condition));\n\tspin_lock(\u0026data.lock);\n}\n...\nspin_unlock(\u0026data.lock);\n\nThis looks bizarre plus wait_event_interruptible() locks the wait\nqueue\u0027s lock anyway so there is a unlock+lock sequence where it could\nbe avoided.\n\nTo avoid those problems and benefit from wait queue\u0027s lock, a code\nsimilar to the following should be used:\n\n/* Waiting */\nspin_lock(\u0026data.wqh.lock);\n...\nret \u003d wait_event_interruptible_locked(data.wqh, (condition));\n...\nspin_unlock(\u0026data.wqh.lock);\n\n/* Waiting exclusively */\nspin_lock(\u0026data.whq.lock);\n...\nret \u003d wait_event_interruptible_exclusive_locked(data.whq, (condition));\n...\nspin_unlock(\u0026data.whq.lock);\n\n/* Waking up */\nspin_lock(\u0026data.wqh.lock);\n...\nwake_up_locked(\u0026data.wqh);\n...\nspin_unlock(\u0026data.wqh.lock);\n\nWhen spin_lock_irq() is used matching versions of macros need to be\nused (*_locked_irq()).\n\nSigned-off-by: Michal Nazarewicz \u003cm.nazarewicz@samsung.com\u003e\nCc: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nCc: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Andreas Herrmann \u003candreas.herrmann3@amd.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c23e5fc1f7dba228558b4a46e68f7af89515b13c",
      "tree": "add71b10dc2275c98d3439fe3756829c2ec0afc9",
      "parents": [
        "27c7acf22047fbe4ec4cc36b7c2610dba227697c"
      ],
      "author": {
        "name": "Johan Hovold",
        "email": "jhovold@gmail.com",
        "time": "Wed May 05 23:58:13 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:42 2010 -0700"
      },
      "message": "USB: serial: remove multi-urb write from generic driver\n\nRemove multi-urb write from the generic driver and simplify the\nprepare_write_buffer prototype:\n\n\tint (*prepare_write_buffer)(struct usb_serial_port *port,\n\t\t\t\t\t\tvoid *dest, size_t size);\n\nThe default implementation simply fills dest with data from port write\nfifo but drivers can override it if they need to process the outgoing\ndata (e.g. add headers).\n\nTurn ftdi_sio into a generic fifo-based driver, which lowers CPU usage\nsignificantly for small writes while retaining maximum throughput.\n\nSigned-off-by: Johan Hovold \u003cjhovold@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "27c7acf22047fbe4ec4cc36b7c2610dba227697c",
      "tree": "c0a8f217fc2d7a302b4d2e084bb126e825006ca4",
      "parents": [
        "4272568b3dd8dbad36014a107c0fbbef6400c917"
      ],
      "author": {
        "name": "Johan Hovold",
        "email": "jhovold@gmail.com",
        "time": "Wed May 05 23:57:37 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:42 2010 -0700"
      },
      "message": "USB: serial: reimplement generic fifo-based writes\n\nReimplement fifo-based writes in the generic driver using a multiple\npre-allocated urb scheme.\n\nIn contrast to multi-urb writes, no allocations (of urbs or buffers) are\nmade during run-time and there is less pressure on the host stack\nqueues as currently only two urbs are used (implementation is generic\nand can handle more than two urbs as well, though).\n\nInitial tests using ftdi_sio show that the implementation achieves the\nsame (maximum) throughput at high baudrates as multi-urb writes. The CPU\nusage is much lower than for multi-urb writes for small write requests\nand only slightly higher for large (e.g. 2k) requests (due to extra copy\nvia fifo?).\n\nAlso outperforms multi-urb writes for small write requests on an\nembedded arm-9 system, where multi-urb writes are CPU-bound at high\nbaudrates (perf reveals that a lot of time is spent in the host stack\nenqueue function -- could perhaps be a bug as well).\n\nKeeping the original write_urb, buffer and flag for now as there are\nother drivers depending on them.\n\nSigned-off-by: Johan Hovold \u003cjhovold@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0ba169aff9181389f30f225ad92e113eeb2290b9",
      "tree": "50dc210826805224c8b2941dfcfbf55ffb4e3c02",
      "parents": [
        "a9914127e834acf648a96c72b4e271dc0c1c7c74"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Wed May 05 15:26:17 2010 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:42 2010 -0700"
      },
      "message": "USB: simplify usb_sg_init()\n\nThis patch (as1377) simplifies the code in usb_sg_init(), without\nchanging its functionality.  It also removes a couple of unused fields\nfrom the usb_sg_request structure.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "910f8d0cede74beff1eee93cf9cf2a28d7600e66",
      "tree": "663cd91c3d4ca2a71937b0dcaad51b02cae3c9c6",
      "parents": [
        "1e429018b646bdf903554e92ead1cda96cc552dc"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Sat May 01 12:20:01 2010 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:41 2010 -0700"
      },
      "message": "USB: Change the scatterlist type in struct urb\n\nChange the type of the URB\u0027s \u0027sg\u0027 pointer from a usb_sg_request to\na scatterlist.  This allows drivers to submit scatter-gather lists\nwithout using the usb_sg_wait() interface.  It has the added benefit\nof removing the typecasts that were added as part of patch as1368 (and\nslightly decreasing the number of pointer dereferences).\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nReviewed-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nTested-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1e429018b646bdf903554e92ead1cda96cc552dc",
      "tree": "e57fdbc9e823d5b06659ceae6ce9850c6ab3be91",
      "parents": [
        "fe54b058de9d1df5fef9e2a559651f4b7c9f04b1"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Fri Apr 30 13:11:30 2010 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:41 2010 -0700"
      },
      "message": "USB: Turn interface_to_usbdev into an inline function\n\nThe stronger type-checking would have prevented a bug I had.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "fe54b058de9d1df5fef9e2a559651f4b7c9f04b1",
      "tree": "9ed1f427416478e8832f5ca67c17bd8433a87630",
      "parents": [
        "b18a23495fd4492081a61373fc3ef9f5c59e094a"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Fri Apr 30 13:11:29 2010 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:41 2010 -0700"
      },
      "message": "USB: Add a usb_pipe_endpoint() convenience function\n\nConverting a pipe number to a struct usb_host_endpoint pointer is a little\nmessy.  Introduce a new convenience function to hide the mess.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b18a23495fd4492081a61373fc3ef9f5c59e094a",
      "tree": "b5f1b173266a91f522c587eeee1cb24647e83af4",
      "parents": [
        "6641445c3e05460c5164ab15a17fc4ee481ca213"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Fri Apr 30 13:11:28 2010 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:41 2010 -0700"
      },
      "message": "USB: Add definition for the Pipe Usage descriptor\n\nThe Pipe Usage descriptor is needed for USB Attached SCSI\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "85bcb5ee889e0ebb9154718939e049de265fcdfb",
      "tree": "daeec28274c8b68fea502c41af84d45d2681ebc5",
      "parents": [
        "842f16905dfc6743c1dd80c3d29b49ba3ab7f7c8"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Fri Apr 30 16:35:37 2010 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:40 2010 -0700"
      },
      "message": "USB: remove URB_NO_SETUP_DMA_MAP\n\nNow that URB_NO_SETUP_DMA_MAP is no longer in use, this patch (as1376)\nremoves all references to it.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "842f16905dfc6743c1dd80c3d29b49ba3ab7f7c8",
      "tree": "2d193389359d78580b1652325bb83e57a59e77fa",
      "parents": [
        "3b02ca3218cf878e206545041aa811073e4f6c79"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Fri Apr 30 12:44:46 2010 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:40 2010 -0700"
      },
      "message": "USB: remove the usb_host_ss_ep_comp structure\n\nThis patch (as1375) eliminates the usb_host_ss_ep_comp structure used\nfor storing a dynamically-allocated copy of the SuperSpeed endpoint\ncompanion descriptor.  The SuperSpeed descriptor is placed directly in\nthe usb_host_endpoint structure, alongside the standard endpoint\ndescriptor.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3b02ca3218cf878e206545041aa811073e4f6c79",
      "tree": "079757cdb134a5ae7bba75ad8a863a622c4b7fd2",
      "parents": [
        "beb7b04a09a9da8b12417f7b74fbcceedb087fc3"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Fri Apr 30 12:42:23 2010 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:40 2010 -0700"
      },
      "message": "USB: export the new ch11.h file to userspce\n\nThis patch (as1374) cleans up a few loose ends in the\ninclude/linux/usb/ch11.h header file and exports it to userspace.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Eric Lescouet \u003cEric.Lescouet@virtuallogix.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f48cf80f93ba974eb3201ab2d0f2c4cef950f3fc",
      "tree": "a90ec04a891d1698110372791d01a03d90c6da3f",
      "parents": [
        "326b4810cc995209e31136af4202ed0414814ed5"
      ],
      "author": {
        "name": "Fabien Chouteau",
        "email": "fabien.chouteau@barco.com",
        "time": "Fri Apr 23 14:21:26 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:39 2010 -0700"
      },
      "message": "USB: Composite framework: Add suspended sysfs entry\n\nThis patch adds a sysfs entry (/sys/devices/platform/_UDC_/gadget/suspended) to\nshow the suspend state of an USB composite gadget.\n\nSigned-off-by: Fabien Chouteau \u003cfabien.chouteau@barco.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "65e0b499105ec8ff3bc4ab7680873dec20127f9d",
      "tree": "69c178f0585ad100d32bb7b81cebffb4b0bbb83d",
      "parents": [
        "01154aa714240a9be12a0ed69b047e53d258f5b1"
      ],
      "author": {
        "name": "Yauheni Kaliuta",
        "email": "yauheni.kaliuta@nokia.com",
        "time": "Fri Apr 16 16:13:35 2010 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:39 2010 -0700"
      },
      "message": "USB: ncm: added ncm.h with auxiliary definitions\n\nSigned-off-by: Yauheni Kaliuta \u003cyauheni.kaliuta@nokia.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "01154aa714240a9be12a0ed69b047e53d258f5b1",
      "tree": "51b80ba7ab47b34744291b55668a8ccca492cb07",
      "parents": [
        "9ff68c7ad8910426495be36e2b568ac623adc226"
      ],
      "author": {
        "name": "Yauheni Kaliuta",
        "email": "yauheni.kaliuta@nokia.com",
        "time": "Fri Apr 16 16:13:34 2010 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:39 2010 -0700"
      },
      "message": "usb: cdc: ncm constants and structures added\n\nSigned-off-by: Yauheni Kaliuta \u003cyauheni.kaliuta@nokia.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "eab1cafc3b524b714b0567ab98fc75ace09db98c",
      "tree": "854ed5c4cba741efabec933714dac5c68bcbb452",
      "parents": [
        "e9df17eb1408cfafa3d1844bfc7f22c7237b31b8"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Mon Apr 05 10:55:58 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:38 2010 -0700"
      },
      "message": "USB: Support for allocating USB 3.0 streams.\n\nBulk endpoint streams were added in the USB 3.0 specification.  Streams\nallow a device driver to overload a bulk endpoint so that multiple\ntransfers can be queued at once.\n\nThe device then decides which transfer it wants to work on first, and can\nqueue part of a transfer before it switches to a new stream.  All this\nswitching is invisible to the device driver, which just gets a completion\nfor the URB.  Drivers that use streams must be able to handle URBs\ncompleting in a different order than they were submitted to the endpoint.\n\nThis requires adding new API to set up xHCI data structures to support\nmultiple queues (\"stream rings\") per endpoint.  Drivers will allocate a\nnumber of stream IDs before enqueueing URBs to the bulk endpoints of the\ndevice, and free the stream IDs in their disconnect function.  See\nDocumentation/usb/bulk-streams.txt for details.\n\nThe new mass storage device class, USB Attached SCSI Protocol (UASP), uses\nthese streams API.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "94af1220985c71cd80d6c161b7a42c51ef08b923",
      "tree": "0256344a21dd26880146a9cad88c3ec19182d155",
      "parents": [
        "22ad1e7f86e1fb96488d71512e2797153a6ad839"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Apr 02 15:34:10 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:37 2010 -0700"
      },
      "message": "USB: Add stream ID field to struct urb.\n\nBulk endpoint streams were added in the USB 3.0 specification.  Streams\nallow a device driver to overload a bulk endpoint so that multiple\ntransfers can be queued at once.\n\nAdd a new field, stream_id, to struct urb so that USB 3.0 drivers can\nspecify which stream they want the URB to be queued to.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "22ad1e7f86e1fb96488d71512e2797153a6ad839",
      "tree": "5e2b35287d9a03664e9b4aac64c3e7f5a3173469",
      "parents": [
        "e07896e62abbf7a741a5cd5b25ba7637bdf91ad0"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Apr 02 15:33:56 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:37 2010 -0700"
      },
      "message": "USB: Add parsing of SuperSpeed endpoint companion descriptor.\n\nAllow the xHCI drivers (and any new USB 3.0 drivers) to parse the\nSuperSpeed endpoint companion descriptor to find the maximum number of\nbulk endpoint streams the endpoint supports.  This is used to calculate\nthe maximum total number of streams the driver can allocate.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9e18c821659d836bd63f88df3c19729327728496",
      "tree": "4148e58d0e03aecfe0dbeedd175bc960006570a9",
      "parents": [
        "7aba8d014341341590ecb64050b7a026642a62eb"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Fri Apr 02 13:22:09 2010 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:37 2010 -0700"
      },
      "message": "USB: use PM core routines to enable/disable autosuspend\n\nThis patch (as1366) replaces the private routines\nusb_enable_autosuspend() and usb_disable_autosuspend() with calls to\nthe standard pm_runtime_allow() and pm_runtime_forbid() functions in\nthe runtime PM framework.  They do the same thing.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ff9c895f07d36193c75533bda8193bde8ca99d02",
      "tree": "386ca8e37734c4810e59a55eaba92e4e88275d14",
      "parents": [
        "0ff8d1b3c858ea7c8daa54f7577971a76d04d283"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Fri Apr 02 13:27:28 2010 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:37 2010 -0700"
      },
      "message": "USB: fix usbmon and DMA mapping for scatter-gather URBs\n\nThis patch (as1368) fixes a rather obscure bug in usbmon: When tracing\nURBs sent by the scatter-gather library, it accesses the data buffers\nwhile they are still mapped for DMA.\n\nThe solution is to move the mapping and unmapping out of the s-g\nlibrary and into the usual place in hcd.c.  This requires the addition\nof new URB flag bits to describe the kind of mapping needed, since we\nhave to call dma_map_sg() if the HCD supports native scatter-gather\noperation and dma_map_page() if it doesn\u0027t.  The nice thing about\nhaving the new flags is that they simplify the testing for unmapping.\n\nThe patch removes the only caller of usb_buffer_[un]map_sg(), so those\nfunctions are #if\u0027ed out.  A later patch will remove them entirely.\n\nAs a result of this change, urb-\u003esg will be set in situations where\nit wasn\u0027t set previously.  Hence the xhci and whci drivers are\nadjusted to test urb-\u003enum_sgs instead, which retains its original\nmeaning and is nonzero only when the HCD has to handle a scatterlist.\n\nFinally, even when a submission error occurs we don\u0027t want to hand\nURBs to usbmon before they are unmapped.  The submission path is\nrearranged so that map_urb_for_dma() is called only for non-root-hub\nURBs and unmap_urb_for_dma() is called immediately after a submission\nerror.  This simplifies the error handling.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "3a229eb13984a2950ee47fb827c8ed1d654b9d68",
      "tree": "33c12dc014ae7b741e0c2d851bf7763ef71ee627",
      "parents": [
        "0fb2c2a1692b8f77be25d38f8802b0142cb6e6bc"
      ],
      "author": {
        "name": "Heikki Krogerus",
        "email": "ext-heikki.krogerus@nokia.com",
        "time": "Mon May 03 09:13:01 2010 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:36 2010 -0700"
      },
      "message": "usb: otg: add global ULPI register definitions\n\nDefinitions for registers defined by ULPI specification v1.1.\n\nSigned-off-by: Heikki Krogerus \u003cext-heikki.krogerus@nokia.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "71adf118946957839a13aa4d1094183e05c6c094",
      "tree": "b99d1113b8a36da96fc7b498b2cea39fcc440914",
      "parents": [
        "e49bbce133a049f6f325db6b0cee49f406d03a6e"
      ],
      "author": {
        "name": "Fabien Chouteau",
        "email": "fabien.chouteau@barco.com",
        "time": "Thu Apr 08 09:31:15 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:35 2010 -0700"
      },
      "message": "USB: gadget: add HID gadget driver\n\ng_hid is a USB gadget driver implementing the Human Interface Device class\nspecification. The driver handles basic HID protocol handling in the\nkernel, and allows userspace to read/write HID reports trough /dev/hidgX\ncharacter devices.\n\nSigned-off-by: Fabien Chouteau \u003cfabien.chouteau@barco.com\u003e\nSigned-off-by: Peter Korsgaard \u003cpeter.korsgaard@barco.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "eaa3bcb06aed1ac1d6d9e3edd3b5f72ea57a6ac0",
      "tree": "a55b216df6a5977ab8d502df44397ef7ebbb11bc",
      "parents": [
        "25d514ca227e1ac81d0906a4ccf2aa171f50a600"
      ],
      "author": {
        "name": "Johan Hovold",
        "email": "jhovold@gmail.com",
        "time": "Wed Mar 17 23:06:08 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:35 2010 -0700"
      },
      "message": "USB: serial: generalise write buffer preparation\n\nGeneralise write buffer preparation.\n\nThis allows for drivers to manipulate (e.g. add headers) to bulk out\ndata before it is sent.\n\nThis adds a new function pointer to usb_serial_driver:\n\nint (*prepare_write_buffer)(struct usb_serial_port *port,\n\t\tvoid **dest, size_t size, const void *src, size_t count);\n\nThe function is generic and can be used with either kfifo-based or\nmulti-urb writes:\n\nIf *dest is NULL the implementation should allocate dest.\nIf src is NULL the implementation should use the port write fifo.\n\nIf not set, a generic implementation is used which simply uses memcpy or\nkfifo_out.\n\nSigned-off-by: Johan Hovold \u003cjhovold@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "25d514ca227e1ac81d0906a4ccf2aa171f50a600",
      "tree": "599690248485fb28cd61cf0ce73004e4fbbf3559",
      "parents": [
        "40f92f0dcd9b215c48c53a226328e8e36615e367"
      ],
      "author": {
        "name": "Johan Hovold",
        "email": "jhovold@gmail.com",
        "time": "Wed Mar 17 23:06:07 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:35 2010 -0700"
      },
      "message": "USB: serial: re-implement multi-urb writes in generic driver\n\nUse dynamic transfer buffer sizes since it is more efficient to let the\nhost controller do the partitioning to fit endpoint size. This way we\nalso do not use more than one urb per write request.\n\nReplace max_in_flight_urbs with multi_urb_write flag in struct\nusb_serial_driver to enable multi-urb writes.\n\nUse MAX_TX_URBS\u003d40 and a max buffer size of PAGE_SIZE to prevent DoS\nattacks.\n\nSigned-off-by: Johan Hovold \u003cjhovold@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "231543206452f5c42bace54b5c13dfe5a0313812",
      "tree": "cbefc56d6c37f50c895a37c47161ac5733cda24c",
      "parents": [
        "0f3d5bae2bdacce6c6c1d116809d6b3d50338df7"
      ],
      "author": {
        "name": "Johan Hovold",
        "email": "jhovold@gmail.com",
        "time": "Wed Mar 17 23:05:57 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:34 2010 -0700"
      },
      "message": "USB: serial: generalise generic read implementation\n\nAdd process_read_urb to usb_serial_driver so that a driver can rely on\nthe generic read (and throttle) mechanism but still do device specific\nprocessing of incoming data (such as adding tty_flags before pushing to\nline discipline).\n\nThe default generic implementation handles sysrq for consoles but\notherwise simply pushes to tty.\n\nSigned-off-by: Johan Hovold \u003cjhovold@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "41bd72f9041def8e3334d3e3693862d078f5cb9a",
      "tree": "6a63cccfedd49a8a6fd407dd275657fc52e1fb93",
      "parents": [
        "f26788da3b342099d2b02d99ba1cb7f154d6ef7b"
      ],
      "author": {
        "name": "Johan Hovold",
        "email": "jhovold@gmail.com",
        "time": "Wed Mar 17 23:05:53 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:33 2010 -0700"
      },
      "message": "USB: serial: refactor read urb submission in generic driver\n\nUse the already exported function for submitting the read urb associated\nwith a usb_serial_port.\n\nMake sure it returns the result of usb_submit_urb and rename to the\nmore descriptive usb_serial_generic_submit_read_urb.\n\nSigned-off-by: Johan Hovold \u003cjhovold@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "bbcb2b907415a90334521a31a8767cd77462c716",
      "tree": "8ee895f4ee3352a7f57c52c5e99119bc6838edac",
      "parents": [
        "317149c655defedfaf432143b86a720cfc12a424"
      ],
      "author": {
        "name": "Johan Hovold",
        "email": "jhovold@gmail.com",
        "time": "Wed Mar 17 23:00:37 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:33 2010 -0700"
      },
      "message": "USB: serial: allow drivers to define bulk buffer sizes\n\nAllow drivers to define custom bulk in/out buffer sizes in struct\nusb_serial_driver. If not set, fall back to the default buffer size\nwhich matches the endpoint size.\n\nThree drivers are currently freeing the pre-allocated buffers and\nallocating larger ones to achieve this at port probe (ftdi_sio) or even\nat port open (ipaq and iuu_phoenix), which needless to say is suboptimal.\n\nSigned-off-by: Johan Hovold \u003cjhovold@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "317149c655defedfaf432143b86a720cfc12a424",
      "tree": "c9834f9813e14b595c93da5d7ceb718af39d1c5d",
      "parents": [
        "7f0ae3a8eeb7f231dc99cee7c871ba64e07ebefe"
      ],
      "author": {
        "name": "Hans de Goede",
        "email": "hdegoede@redhat.com",
        "time": "Mon Mar 29 12:03:17 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:32 2010 -0700"
      },
      "message": "USB: Add a new quirk: USB_QUIRK_HONOR_BNUMINTERFACES\n\nAdd a new quirk USB_QUIRK_HONOR_BNUMINTERFACES, when this quirk is\nset and a device has more interface descriptors in a configuration\nthen it claims to have in config-\u003ebNumInterfaces, ignore all additional\ninterfaces.\n\nThis is needed for devices which try to hide unused interfaces by only\nlowering config-\u003ebNumInterfaces, and which can\u0027t handle if you try to talk\nto the \"hidden\" interfaces.\n\nSigned-off-by: Hans de Goede \u003chdegoede@redhat.com\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6ddc6dae4ab559b648bc348e3a48e113e92ab4a2",
      "tree": "0a67e89a4501ed974217f02e1a0e86d21f15589b",
      "parents": [
        "fb9c58edf13fc30d160ce52018576a1d7d45d795"
      ],
      "author": {
        "name": "Cliff Cai",
        "email": "cliff.cai@analog.com",
        "time": "Fri Mar 12 10:29:10 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:32 2010 -0700"
      },
      "message": "USB: musb: allow the Blackfin vrsel gpio to be active low\n\nRather than hardcoding the gpio levels for vrsel, allow the platform\nresources to handle this so boards can be active high or low.\n\nSigned-off-by: Cliff Cai \u003ccliff.cai@analog.com\u003e\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Felipe Balbi \u003cfelipe.balbi@nokia.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e6c213b2968cbee4cfb8f89f2d685b9ad07eefbd",
      "tree": "bbe7c6bd630c3fef4dc1062b762c5fba9b7d1d6d",
      "parents": [
        "bd5afa9eac6daa408412a31a6c69e87e8bd28c7e"
      ],
      "author": {
        "name": "Felipe Balbi",
        "email": "felipe.balbi@nokia.com",
        "time": "Fri Mar 12 10:29:06 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:31 2010 -0700"
      },
      "message": "usb: musb: allow board to pass down fifo mode\n\nboards might want to optimize their fifo configuration\nto the particular needs of that specific board. Allow\nthat by moving all related data structures to\n\u003clinux/usb/musb.h\u003e\n\nSigned-off-by: Felipe Balbi \u003cfelipe.balbi@nokia.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "bd5afa9eac6daa408412a31a6c69e87e8bd28c7e",
      "tree": "5f99e4ee9d787d038746c2217f7c1152fad3c453",
      "parents": [
        "9757de384451a606af8c722213cb973192cbbd1b"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon Mar 08 21:50:12 2010 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:31 2010 -0700"
      },
      "message": "usb-serial: Use tty_port version console instead of usb_serial_port\n\nReplace all instances of using the console variable in struct\nusb_serial_port with the struct tty_port version.\n\nCC: Alan Cox \u003calan@linux.intel.com\u003e\nCC: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: Oliver Neukum \u003coliver@neukum.org\u003e\nCC: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCC: linux-usb@vger.kernel.org\nCC: linux-kernel@vger.kernel.org\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "288ead45fa6637e959015d055304f521cbbc0575",
      "tree": "b150572e95760f26f905802269b3a76da0260976",
      "parents": [
        "45f30e0bdadd4660383250e85b543b0bea05413d"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Thu Mar 04 11:32:30 2010 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:31 2010 -0700"
      },
      "message": "USB: remove bogus USB_PORT_FEAT_*_SPEED symbols\n\nThis patch (as1348) removes the bogus\nUSB_PORT_FEAT_{HIGHSPEED,SUPERSPEED} symbols from ch11.h.  No such\nfeatures are defined by the USB spec.  (There is a PORT_LOWSPEED\nfeature, but the spec doesn\u0027t mention it except to say that host\nsoftware should never use it.)  The speed indicators are port\nstatuses, not port features.\n\nAs a temporary workaround for the xhci-hcd driver, a fictional\nUSB_PORT_STAT_SUPER_SPEED symbol is added.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d20db4b4e938aa8e4e5735b5a1b202de5800400e",
      "tree": "7433cdfb9df46cb19016da85682e98a724ae8efb",
      "parents": [
        "d65d7e7ef3dc5e61e4dfaac54ec6d3e97f9a1108"
      ],
      "author": {
        "name": "Eric Lescouet",
        "email": "Eric.Lescouet@virtuallogix.com",
        "time": "Sat Apr 24 23:38:17 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:30 2010 -0700"
      },
      "message": "USB: split hub.h into ch11.h and merge-in hcd.h\n\nBase on inputs from Alan Stern, split the hub.h header into:\n- new ch11.h header (most of it) containing constants and\n  structures from chapter 11 of the USB 2.0 spec.\n- a small remaining part being merged into hcd.h.\n\nSigned-of-by: Eric Lescouet \u003ceric@lescouet.org\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d65d7e7ef3dc5e61e4dfaac54ec6d3e97f9a1108",
      "tree": "c6dc49e59baea2c3f20fb1937799666a7c828284",
      "parents": [
        "27729aadd31dafddaaf64c24f8ef6d0ff750f3aa"
      ],
      "author": {
        "name": "Eric Lescouet",
        "email": "Eric.Lescouet@virtuallogix.com",
        "time": "Sat Apr 24 23:34:27 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:30 2010 -0700"
      },
      "message": "USB: make hub.h public (drivers dependency)\n\nThe usbcore headers: hcd.h and hub.h are shared between usbcore,\nHCDs and a couple of other drivers (e.g. USBIP modules).\nSo, it makes sense to move them into a more public location and\nto cleanup dependency of those modules on kernel internal headers.\nThis patch moves hub.h from drivers/usb/core into include/linux/usb/\n\nSigned-of-by: Eric Lescouet \u003ceric@lescouet.org\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "27729aadd31dafddaaf64c24f8ef6d0ff750f3aa",
      "tree": "20499b4132eaad36fb177b028600694fc4d0626a",
      "parents": [
        "44ebd037c54f80db3121ac9f5fe6e677b76e11d5"
      ],
      "author": {
        "name": "Eric Lescouet",
        "email": "Eric.Lescouet@virtuallogix.com",
        "time": "Sat Apr 24 23:21:52 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 20 13:21:30 2010 -0700"
      },
      "message": "USB: make hcd.h public (drivers dependency)\n\nThe usbcore headers: hcd.h and hub.h are shared between usbcore,\nHCDs and a couple of other drivers (e.g. USBIP modules).\nSo, it makes sense to move them into a more public location and\nto cleanup dependency of those modules on kernel internal headers.\nThis patch moves hcd.h from drivers/usb/core into include/linux/usb/\n\nSigned-of-by: Eric Lescouet \u003ceric@lescouet.org\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b5dbc858717113c823fe6bb058807c2cb67d1efa",
      "tree": "e82858156bf5d46b539455728ac1b8a7cd9feb02",
      "parents": [
        "d34e14f690d611ffe3db09e4ed8123d86c89a831",
        "c02db8c6290bb992442fec1407643c94cc414375"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 16 11:11:53 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 16 11:11:53 2010 -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  rtnetlink: make SR-IOV VF interface symmetric\n  sctp: delete active ICMP proto unreachable timer when free transport\n  tcp: fix MD5 (RFC2385) support\n"
    },
    {
      "commit": "c02db8c6290bb992442fec1407643c94cc414375",
      "tree": "05ec7bdd7efc005cd9e3905e0d6f6469bf08668b",
      "parents": [
        "55fa0cfd7c3ac2ae34cac7dca2e3fbcfe661e6c3"
      ],
      "author": {
        "name": "Chris Wright",
        "email": "chrisw@sous-sol.org",
        "time": "Sun May 16 01:05:45 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 16 01:05:45 2010 -0700"
      },
      "message": "rtnetlink: make SR-IOV VF interface symmetric\n\nNow we have a set of nested attributes:\n\n  IFLA_VFINFO_LIST (NESTED)\n    IFLA_VF_INFO (NESTED)\n      IFLA_VF_MAC\n      IFLA_VF_VLAN\n      IFLA_VF_TX_RATE\n\nThis allows a single set to operate on multiple attributes if desired.\nAmong other things, it means a dump can be replayed to set state.\n\nThe current interface has yet to be released, so this seems like\nsomething to consider for 2.6.34.\n\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "35790c0421121364883a167bab8a2e37e1f67f78",
      "tree": "a3e032a9ba6bb77337176bef407d7408d6a10a4d",
      "parents": [
        "d77f873fdd21912803836da78f627d2efd267082"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun May 16 00:34:04 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 16 00:34:04 2010 -0700"
      },
      "message": "tcp: fix MD5 (RFC2385) support\n\nTCP MD5 support uses percpu data for temporary storage. It currently\ndisables preemption so that same storage cannot be reclaimed by another\nthread on same cpu.\n\nWe also have to make sure a softirq handler wont try to use also same\ncontext. Various bug reports demonstrated corruptions.\n\nFix is to disable preemption and BH.\n\nReported-by: Bhaskar Dutta \u003cbhaskie@gmail.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d83c49f3e36cecd2e8823b6c48ffba083b8a5704",
      "tree": "a304de4eb43652d2a9528d4b43f798ab821c8b93",
      "parents": [
        "6a251b0ab67989f468f4cb65179e0cf40cf8c295"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Apr 30 17:17:09 2010 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 15 07:16:33 2010 -0400"
      },
      "message": "Fix the regression created by \"set S_DEAD on unlink()...\" commit\n\n1) i_flags simply doesn\u0027t work for mount/unlink race prevention;\nwe may have many links to file and rm on one of those obviously\nshouldn\u0027t prevent bind on top of another later on.  To fix it\nright way we need to mark _dentry_ as unsuitable for mounting\nupon; new flag (DCACHE_CANT_MOUNT) is protected by d_flags and\ni_mutex on the inode in question.  Set it (with dont_mount(dentry))\nin unlink/rmdir/etc., check (with cant_mount(dentry)) in places\nin namespace.c that used to check for S_DEAD.  Setting S_DEAD\nis still needed in places where we used to set it (for directories\ngetting killed), since we rely on it for readdir/rmdir race\nprevention.\n\n2) rename()/mount() protection has another bogosity - we unhash\nthe target before we\u0027d checked that it\u0027s not a mountpoint.  Fixed.\n\n3) ancient bogosity in pivot_root() - we locked i_mutex on the\nright directory, but checked S_DEAD on the different (and wrong)\none.  Noticed and fixed.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "34441427aab4bdb3069a4ffcda69a99357abcb2e",
      "tree": "3beebde910f25b0945e9105017fd743c9e5241a5",
      "parents": [
        "3c904afd7358e9ef515eb5df36b6f25c2b7fc2da"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue May 11 14:06:46 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 11 17:33:41 2010 -0700"
      },
      "message": "revert \"procfs: provide stack information for threads\" and its fixup commits\n\nOriginally, commit d899bf7b (\"procfs: provide stack information for\nthreads\") attempted to introduce a new feature for showing where the\nthreadstack was located and how many pages are being utilized by the\nstack.\n\nCommit c44972f1 (\"procfs: disable per-task stack usage on NOMMU\") was\napplied to fix the NO_MMU case.\n\nCommit 89240ba0 (\"x86, fs: Fix x86 procfs stack information for threads on\n64-bit\") was applied to fix a bug in ia32 executables being loaded.\n\nCommit 9ebd4eba7 (\"procfs: fix /proc/\u003cpid\u003e/stat stack pointer for kernel\nthreads\") was applied to fix a bug which had kernel threads printing a\nuserland stack address.\n\nCommit 1306d603f (\u0027proc: partially revert \"procfs: provide stack\ninformation for threads\"\u0027) was then applied to revert the stack pages\nbeing used to solve a significant performance regression.\n\nThis patch nearly undoes the effect of all these patches.\n\nThe reason for reverting these is it provides an unusable value in\nfield 28.  For x86_64, a fork will result in the task-\u003estack_start\nvalue being updated to the current user top of stack and not the stack\nstart address.  This unpredictability of the stack_start value makes\nit worthless.  That includes the intended use of showing how much stack\nspace a thread has.\n\nOther architectures will get different values.  As an example, ia64\ngets 0.  The do_fork() and copy_process() functions appear to treat the\nstack_start and stack_size parameters as architecture specific.\n\nI only partially reverted c44972f1 (\"procfs: disable per-task stack usage\non NOMMU\") .  If I had completely reverted it, I would have had to change\nmm/Makefile only build pagewalk.o when CONFIG_PROC_PAGE_MONITOR is\nconfigured.  Since I could not test the builds without significant effort,\nI decided to not change mm/Makefile.\n\nI only partially reverted 89240ba0 (\"x86, fs: Fix x86 procfs stack\ninformation for threads on 64-bit\") .  I left the KSTK_ESP() change in\nplace as that seemed worthwhile.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f33d7e2d2d113a63772bbc993cdec3b5327f0ef1",
      "tree": "1349305b4c3a39c87baab95beb05fa5b8dfc7750",
      "parents": [
        "fc2a093e7ad23e935aa29e349bc27173c92f1a95"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue May 11 14:06:43 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 11 17:33:41 2010 -0700"
      },
      "message": "dma-mapping: fix dma_sync_single_range_*\n\ndma_sync_single_range_for_cpu() and dma_sync_single_range_for_device() use\na wrong address with a partial synchronization.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nReviewed-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9fc282baa8f743a7049e301d13cf9968ee95a91c",
      "tree": "d34e827ed35c21b98eb4e3d4c3731d1da54fa03a",
      "parents": [
        "c61ea31dac0319ec64b33725917bda81fc293a25",
        "de02d72bb3cc5b3d4c873db4ca8291723dd48479"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 11 10:11:40 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 11 10:11:40 2010 -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  net: Fix FDDI and TR config checks in ipv4 arp and LLC.\n  IPv4: unresolved multicast route cleanup\n  mac80211: remove association work when processing deauth request\n  ar9170: wait for asynchronous firmware loading\n  ipv4: udp: fix short packet and bad checksum logging\n  phy: Fix initialization in micrel driver.\n  sctp: Fix a race between ICMP protocol unreachable and connect()\n  veth: Dont kfree_skb() after dev_forward_skb()\n  IPv6: fix IPV6_RECVERR handling of locally-generated errors\n  net/gianfar: drop recycled skbs on MTU change\n  iwlwifi: work around passive scan issue\n"
    },
    {
      "commit": "e33b3e7567f8636c61e79ff1da5ff9a6cf6562c7",
      "tree": "72f361fec4a8c81d5003b93344bf3eab3eb21775",
      "parents": [
        "e2dbe06c271f3bb2a495627980aad3d1d8ccef2a",
        "8cfe92d683a0041ac8e016a0b0a487c99a78f6c1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 07 14:02:01 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 07 14:02:01 2010 -0700"
      },
      "message": "Merge branch \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6\n\n* \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:\n  drm/ttm: Remove the ttm_bo_block_reservation() function.\n  drm/ttm: Remove some leftover debug messages.\n  drm/radeon: async event synchronization for drmWaitVblank\n"
    },
    {
      "commit": "417a9ef1f488e3cf92bacc4999e1cbabc0e7cf1a",
      "tree": "f9ea61b81f7de18687466d5a9d510ad9b563b79e",
      "parents": [
        "91bc482ec5a615e8ecebc106aaf7d0c267d511de",
        "a47f6be45670465d45a3d27f7ff71986bd35d6c4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 07 13:58:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 07 13:58:56 2010 -0700"
      },
      "message": "Merge branch \u0027v4l_for_2.6.34\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6\n\n* \u0027v4l_for_2.6.34\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6:\n  V4L/DVB: pxa_camera: move fifo reset direct before dma start\n  V4L/DVB: video: testing unsigned for less than 0\n  V4L/DVB: mx1-camera: compile fix\n  V4L/DVB: budget: Oops: \"BUG: unable to handle kernel NULL pointer \tdereference\"\n  V4L/DVB: ngene: Workaround for stuck DiSEqC pin\n  V4L/DVB: saa7146: fix regression of the av7110/budget-av driver\n  V4L/DVB: v4l: fix config dependencies: mxb and saa7191 are V4L2 drivers, not V4L1\n  V4L/DVB: feature-removal: announce videotext.h removal\n  V4L/DVB: V4L - vpfe capture - fix for kernel crash\n  V4L/DVB: gspca: make usb id 0461:0815 get handled by the right driver\n  V4L/DVB: gspca - stv06xx: Remove the 046d:08da from the stv06xx driver\n  V4L/DVB: gspca - sn9c20x: Correct onstack wait_queue_head declaration\n  V4L/DVB: saa7146: fix up bytesperline if it is an impossible value\n  V4L/DVB: V4L: vpfe_capture - free ccdc_lock when memory allocation fails\n  V4L/DVB: V4L - Makfile:Removed duplicate entry of davinci\n  V4L/DVB: omap24xxcam: potential buffer overflow\n"
    },
    {
      "commit": "91bc482ec5a615e8ecebc106aaf7d0c267d511de",
      "tree": "ad75789a5825fb2da75b2dbdc02d1969bad9b338",
      "parents": [
        "e8e8fade7b351f131433fa44ca5d4e960e1c0f9c",
        "ee84b8243b07c33a5c8aed42b4b2da60cb16d1d2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 07 13:58:21 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 07 13:58:21 2010 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcu: create rcu_my_thread_group_empty() wrapper\n  memcg: css_id() must be called under rcu_read_lock()\n  cgroup: Check task_lock in task_subsys_state()\n  sched: Fix an RCU warning in print_task()\n  cgroup: Fix an RCU warning in alloc_css_id()\n  cgroup: Fix an RCU warning in cgroup_path()\n  KEYS: Fix an RCU warning in the reading of user keys\n  KEYS: Fix an RCU warning\n"
    },
    {
      "commit": "8cfe92d683a0041ac8e016a0b0a487c99a78f6c1",
      "tree": "5949c336ea881c9fb51aee811432125451fef45d",
      "parents": [
        "5be6eff965aee22181d7f6210c2c463420e94e03"
      ],
      "author": {
        "name": "Thomas Hellstrom",
        "email": "thellstrom@vmware.com",
        "time": "Wed Apr 28 11:33:25 2010 +0200"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Fri May 07 09:21:28 2010 +1000"
      },
      "message": "drm/ttm: Remove the ttm_bo_block_reservation() function.\n\nIt\u0027s unused and buggy in its current form, since it can place a bo\nin the reserved state without removing it from lru lists.\n\nSigned-off-by: Thomas Hellstrom \u003cthellstrom@vmware.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "03b1930efd3c2320b1dcba76c8af15f7e454919d",
      "tree": "436dfae66ed4444578bc7d14cc43600a4f5119e1",
      "parents": [
        "d2f2d6d0a11e892263ea511e46af449113fd2081"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Wed Mar 24 19:09:55 2010 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Thu May 06 19:20:50 2010 -0300"
      },
      "message": "V4L/DVB: saa7146: fix regression of the av7110/budget-av driver\n\nAn earlier regression fix for the mxb driver (V4L/DVB: saa7146_vv: fix\nregression where v4l2_device was registered too late) caused a new\nregression in the av7110 driver.\n\nReverted the old fix and fixed the problem in the mxb driver instead.\nTested on mxb and budget-av cards.\n\nThe real problem is that the saa7146 framework has separate probe()\nand attach() driver callbacks which should be rolled into one. This\nis now done for the mxb driver, but others should do the same. Lack\nof hardware makes this hard to do, though. I hope to get hold of some\nhexium cards and then I can try to improve the framework to prevent\nthis from happening again.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\n"
    },
    {
      "commit": "ee84b8243b07c33a5c8aed42b4b2da60cb16d1d2",
      "tree": "a5b3cad55179fe8340c6422deaf6e11120222ad1",
      "parents": [
        "ad4ba375373937817404fd92239ef4cadbded23b"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 06 09:28:41 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 06 09:28:41 2010 -0700"
      },
      "message": "rcu: create rcu_my_thread_group_empty() wrapper\n\nSome RCU-lockdep splat repairs need to know whether they are running\nin a single-threaded process.  Unfortunately, the thread_group_empty()\nprimitive is defined in sched.h, and can induce #include hell.  This\ncommit therefore introduces a rcu_my_thread_group_empty() wrapper that\nis defined in rcupdate.c, thus avoiding the need to include sched.h\neverywhere.\n\nSigned-off-by: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "50b5d6ad63821cea324a5a7a19854d4de1a0a819",
      "tree": "a279d53880e3bdf144783598ad03bbaa33e2cd96",
      "parents": [
        "6ec82562ffc6f297d0de36d65776cff8e5704867"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu May 06 00:56:07 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 06 00:56:07 2010 -0700"
      },
      "message": "sctp: Fix a race between ICMP protocol unreachable and connect()\n\nICMP protocol unreachable handling completely disregarded\nthe fact that the user may have locked the socket.  It proceeded\nto destroy the association, even though the user may have\nheld the lock and had a ref on the association.  This resulted\nin the following:\n\nAttempt to release alive inet socket f6afcc00\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ BUG: held lock freed! ]\n-------------------------\nsomenu/2672 is freeing memory f6afcc00-f6afcfff, with a lock still held\nthere!\n (sk_lock-AF_INET){+.+.+.}, at: [\u003cc122098a\u003e] sctp_connect+0x13/0x4c\n1 lock held by somenu/2672:\n #0:  (sk_lock-AF_INET){+.+.+.}, at: [\u003cc122098a\u003e] sctp_connect+0x13/0x4c\n\nstack backtrace:\nPid: 2672, comm: somenu Not tainted 2.6.32-telco #55\nCall Trace:\n [\u003cc1232266\u003e] ? printk+0xf/0x11\n [\u003cc1038553\u003e] debug_check_no_locks_freed+0xce/0xff\n [\u003cc10620b4\u003e] kmem_cache_free+0x21/0x66\n [\u003cc1185f25\u003e] __sk_free+0x9d/0xab\n [\u003cc1185f9c\u003e] sk_free+0x1c/0x1e\n [\u003cc1216e38\u003e] sctp_association_put+0x32/0x89\n [\u003cc1220865\u003e] __sctp_connect+0x36d/0x3f4\n [\u003cc122098a\u003e] ? sctp_connect+0x13/0x4c\n [\u003cc102d073\u003e] ? autoremove_wake_function+0x0/0x33\n [\u003cc12209a8\u003e] sctp_connect+0x31/0x4c\n [\u003cc11d1e80\u003e] inet_dgram_connect+0x4b/0x55\n [\u003cc11834fa\u003e] sys_connect+0x54/0x71\n [\u003cc103a3a2\u003e] ? lock_release_non_nested+0x88/0x239\n [\u003cc1054026\u003e] ? might_fault+0x42/0x7c\n [\u003cc1054026\u003e] ? might_fault+0x42/0x7c\n [\u003cc11847ab\u003e] sys_socketcall+0x6d/0x178\n [\u003cc10da994\u003e] ? trace_hardirqs_on_thunk+0xc/0x10\n [\u003cc1002959\u003e] syscall_call+0x7/0xb\n\nThis was because the sctp_wait_for_connect() would aqcure the socket\nlock and then proceed to release the last reference count on the\nassociation, thus cause the fully destruction path to finish freeing\nthe socket.\n\nThe simplest solution is to start a very short timer in case the socket\nis owned by user.  When the timer expires, we can do some verification\nand be able to do the release properly.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7437e7d3672b6d23c08212c68752c9a9c25f8e9e",
      "tree": "809507a1d8c1cadce9a7cab87970da95aa772d2d",
      "parents": [
        "38c9e91bc396672e9ea8013bad63ea4f59d9d31c",
        "7cff0943a1104479fc9fc2d6ced24c02ba81e73e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 05 07:55:07 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 05 07:55:07 2010 -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  FEC: Fix kernel panic in fec_set_mac_address.\n  ipv6: Fix default multicast hops setting.\n  net: ep93xx_eth stops receiving packets\n  drivers/net/phy: micrel phy driver\n  dm9601: fix phy/eeprom write routine\n  ppp_generic: handle non-linear skbs when passing them to pppd\n  ppp_generic: pull 2 bytes so that PPP_PROTO(skb) is valid\n  net: fix compile error due to double return type in SOCK_DEBUG\n  net/usb: initiate sync sequence in sierra_net.c driver\n  net/usb: remove default in Kconfig for sierra_net driver\n  r8169: Fix rtl8169_rx_interrupt()\n  e1000e: Fix oops caused by ASPM patch.\n  net/sb1250: register mdio bus in probe\n  sctp: Fix skb_over_panic resulting from multiple invalid parameter errors (CVE-2010-1173) (v4)\n  p54pci: fix bugs in p54p_check_tx_ring\n"
    },
    {
      "commit": "1ce7e4ff24fe338438bc7837e02780f202bf202b",
      "tree": "3906643ba96ba8b3fda2291e5e40e48bbba9085f",
      "parents": [
        "b629317e66fb1c6066c550dded45ab85a936163c"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Apr 23 10:35:52 2010 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue May 04 09:25:02 2010 -0700"
      },
      "message": "cgroup: Check task_lock in task_subsys_state()\n\nExpand task_subsys_state()\u0027s rcu_dereference_check() to include the full\nlocking rule as documented in Documentation/cgroups/cgroups.txt by adding\na check for task-\u003ealloc_lock being held.\n\nThis fixes an RCU false positive when resuming from suspend. The warning\ncomes from freezer cgroup in cgroup_freezing_or_frozen().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "6629dcff19470a894ce294d0adb9cbab94ee1fb9",
      "tree": "18f75a3f5ca83de96a0fe353fafa02bab174cd36",
      "parents": [
        "b1d4b390ea4bb480e65974ce522a04022608a8df"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Tue May 04 11:09:28 2010 +0200"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Tue May 04 11:09:28 2010 +0200"
      },
      "message": "i2c-core: Use per-adapter userspace device lists\n\nUsing a single list for all userspace devices leads to a dead lock\non multiplexed buses in some circumstances (mux chip instantiated\nfrom userspace). This is solved by using a separate list for each\nbus segment.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nAcked-by: Michael Lawnick \u003cml.lawnick@gmx.de\u003e\n"
    },
    {
      "commit": "1183f3838c588545592c042c0ce15015661ce7f2",
      "tree": "24de17b69f9b2d83720a550af130d1dbddf067e8",
      "parents": [
        "6f1464bf65fcaa57a4b32dae93de4e8bbdfaf7c5"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Sun May 02 13:42:39 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 02 13:42:39 2010 -0700"
      },
      "message": "net: fix compile error due to double return type in SOCK_DEBUG\n\nFix this one:\ninclude/net/sock.h: error: two or more data types in declaration specifiers\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "073900a28d95c75a706bf40ebf092ea048c7b236",
      "tree": "01e8bb7856ebf1e989a1eb693704435fc4032118",
      "parents": [
        "75181f386f9a80ed6f87763ac6cf05826e253ccd"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "daniel@caiaq.de",
        "time": "Mon Apr 12 13:17:25 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Apr 30 09:25:12 2010 -0700"
      },
      "message": "USB: rename usb_buffer_alloc() and usb_buffer_free()\n\nFor more clearance what the functions actually do,\n\n  usb_buffer_alloc() is renamed to usb_alloc_coherent()\n  usb_buffer_free()  is renamed to usb_free_coherent()\n\nThey should only be used in code which really needs DMA coherency.\n\n[added compatibility macros so we can convert things easier - gregkh]\n\nSigned-off-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Pedro Ribeiro \u003cpedrib@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "27fb8d7b1fe7c2fa2d7c1f243b899793e1b080e0",
      "tree": "25a8ca59a3743459bbd48674731becea89a16318",
      "parents": [
        "f80a0ca6ad8f2800453e819dafa09a0ed9e56850",
        "9699eda6bc1f708a28acb716e1477aa351362fe2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 29 10:23:44 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 29 10:23:44 2010 -0700"
      },
      "message": "Merge branch \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:\n  nfs: fix memory leak in nfs_get_sb with CONFIG_NFS_V4\n  nfs: fix some issues in nfs41_proc_reclaim_complete()\n  NFS: Ensure that nfs_wb_page() waits for Pg_writeback to clear\n  NFS: Fix an unstable write data integrity race\n  nfs: testing for null instead of ERR_PTR()\n  NFS: rsize and wsize settings ignored on v4 mounts\n  NFSv4: Don\u0027t attempt an atomic open if the file is a mountpoint\n  SUNRPC: Fix a bug in rpcauth_prune_expired\n"
    },
    {
      "commit": "5fa782c2f5ef6c2e4f04d3e228412c9b4a4c8809",
      "tree": "38442b86f3c1b57dd9c660d7c551334e110f6d43",
      "parents": [
        "e41c11ee0cc602bcde68916be85fb97d1a484324"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed Apr 28 10:30:59 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 28 14:22:01 2010 -0700"
      },
      "message": "sctp: Fix skb_over_panic resulting from multiple invalid parameter errors (CVE-2010-1173) (v4)\n\nOk, version 4\n\nChange Notes:\n1) Minor cleanups, from Vlads notes\n\nSummary:\n\nHey-\n\tRecently, it was reported to me that the kernel could oops in the\nfollowing way:\n\n\u003c5\u003e kernel BUG at net/core/skbuff.c:91!\n\u003c5\u003e invalid operand: 0000 [#1]\n\u003c5\u003e Modules linked in: sctp netconsole nls_utf8 autofs4 sunrpc iptable_filter\nip_tables cpufreq_powersave parport_pc lp parport vmblock(U) vsock(U) vmci(U)\nvmxnet(U) vmmemctl(U) vmhgfs(U) acpiphp dm_mirror dm_mod button battery ac md5\nipv6 uhci_hcd ehci_hcd snd_ens1371 snd_rawmidi snd_seq_device snd_pcm_oss\nsnd_mixer_oss snd_pcm snd_timer snd_page_alloc snd_ac97_codec snd soundcore\npcnet32 mii floppy ext3 jbd ata_piix libata mptscsih mptsas mptspi mptscsi\nmptbase sd_mod scsi_mod\n\u003c5\u003e CPU:    0\n\u003c5\u003e EIP:    0060:[\u003cc02bff27\u003e]    Not tainted VLI\n\u003c5\u003e EFLAGS: 00010216   (2.6.9-89.0.25.EL)\n\u003c5\u003e EIP is at skb_over_panic+0x1f/0x2d\n\u003c5\u003e eax: 0000002c   ebx: c033f461   ecx: c0357d96   edx: c040fd44\n\u003c5\u003e esi: c033f461   edi: df653280   ebp: 00000000   esp: c040fd40\n\u003c5\u003e ds: 007b   es: 007b   ss: 0068\n\u003c5\u003e Process swapper (pid: 0, threadinfo\u003dc040f000 task\u003dc0370be0)\n\u003c5\u003e Stack: c0357d96 e0c29478 00000084 00000004 c033f461 df653280 d7883180\ne0c2947d\n\u003c5\u003e        00000000 00000080 df653490 00000004 de4f1ac0 de4f1ac0 00000004\ndf653490\n\u003c5\u003e        00000001 e0c2877a 08000800 de4f1ac0 df653490 00000000 e0c29d2e\n00000004\n\u003c5\u003e Call Trace:\n\u003c5\u003e  [\u003ce0c29478\u003e] sctp_addto_chunk+0xb0/0x128 [sctp]\n\u003c5\u003e  [\u003ce0c2947d\u003e] sctp_addto_chunk+0xb5/0x128 [sctp]\n\u003c5\u003e  [\u003ce0c2877a\u003e] sctp_init_cause+0x3f/0x47 [sctp]\n\u003c5\u003e  [\u003ce0c29d2e\u003e] sctp_process_unk_param+0xac/0xb8 [sctp]\n\u003c5\u003e  [\u003ce0c29e90\u003e] sctp_verify_init+0xcc/0x134 [sctp]\n\u003c5\u003e  [\u003ce0c20322\u003e] sctp_sf_do_5_1B_init+0x83/0x28e [sctp]\n\u003c5\u003e  [\u003ce0c25333\u003e] sctp_do_sm+0x41/0x77 [sctp]\n\u003c5\u003e  [\u003cc01555a4\u003e] cache_grow+0x140/0x233\n\u003c5\u003e  [\u003ce0c26ba1\u003e] sctp_endpoint_bh_rcv+0xc5/0x108 [sctp]\n\u003c5\u003e  [\u003ce0c2b863\u003e] sctp_inq_push+0xe/0x10 [sctp]\n\u003c5\u003e  [\u003ce0c34600\u003e] sctp_rcv+0x454/0x509 [sctp]\n\u003c5\u003e  [\u003ce084e017\u003e] ipt_hook+0x17/0x1c [iptable_filter]\n\u003c5\u003e  [\u003cc02d005e\u003e] nf_iterate+0x40/0x81\n\u003c5\u003e  [\u003cc02e0bb9\u003e] ip_local_deliver_finish+0x0/0x151\n\u003c5\u003e  [\u003cc02e0c7f\u003e] ip_local_deliver_finish+0xc6/0x151\n\u003c5\u003e  [\u003cc02d0362\u003e] nf_hook_slow+0x83/0xb5\n\u003c5\u003e  [\u003cc02e0bb2\u003e] ip_local_deliver+0x1a2/0x1a9\n\u003c5\u003e  [\u003cc02e0bb9\u003e] ip_local_deliver_finish+0x0/0x151\n\u003c5\u003e  [\u003cc02e103e\u003e] ip_rcv+0x334/0x3b4\n\u003c5\u003e  [\u003cc02c66fd\u003e] netif_receive_skb+0x320/0x35b\n\u003c5\u003e  [\u003ce0a0928b\u003e] init_stall_timer+0x67/0x6a [uhci_hcd]\n\u003c5\u003e  [\u003cc02c67a4\u003e] process_backlog+0x6c/0xd9\n\u003c5\u003e  [\u003cc02c690f\u003e] net_rx_action+0xfe/0x1f8\n\u003c5\u003e  [\u003cc012a7b1\u003e] __do_softirq+0x35/0x79\n\u003c5\u003e  [\u003cc0107efb\u003e] handle_IRQ_event+0x0/0x4f\n\u003c5\u003e  [\u003cc01094de\u003e] do_softirq+0x46/0x4d\n\nIts an skb_over_panic BUG halt that results from processing an init chunk in\nwhich too many of its variable length parameters are in some way malformed.\n\nThe problem is in sctp_process_unk_param:\nif (NULL \u003d\u003d *errp)\n\t*errp \u003d sctp_make_op_error_space(asoc, chunk,\n\t\t\t\t\t ntohs(chunk-\u003echunk_hdr-\u003elength));\n\n\tif (*errp) {\n\t\tsctp_init_cause(*errp, SCTP_ERROR_UNKNOWN_PARAM,\n\t\t\t\t WORD_ROUND(ntohs(param.p-\u003elength)));\n\t\tsctp_addto_chunk(*errp,\n\t\t\tWORD_ROUND(ntohs(param.p-\u003elength)),\n\t\t\t\t  param.v);\n\nWhen we allocate an error chunk, we assume that the worst case scenario requires\nthat we have chunk_hdr-\u003elength data allocated, which would be correct nominally,\ngiven that we call sctp_addto_chunk for the violating parameter.  Unfortunately,\nwe also, in sctp_init_cause insert a sctp_errhdr_t structure into the error\nchunk, so the worst case situation in which all parameters are in violation\nrequires chunk_hdr-\u003elength+(sizeof(sctp_errhdr_t)*param_count) bytes of data.\n\nThe result of this error is that a deliberately malformed packet sent to a\nlistening host can cause a remote DOS, described in CVE-2010-1173:\nhttp://cve.mitre.org/cgi-bin/cvename.cgi?name\u003d2010-1173\n\nI\u0027ve tested the below fix and confirmed that it fixes the issue.  We move to a\nstrategy whereby we allocate a fixed size error chunk and ignore errors we don\u0027t\nhave space to report.  Tested by me successfully\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "032b734d291e3532221b6cf7643a5f41c6261941",
      "tree": "bbfa57472cdf90a84730ade5d2358205d35b2a34",
      "parents": [
        "3fb938b2a8bdbcf6086192d90fb7c73425e41fb9",
        "e41c11ee0cc602bcde68916be85fb97d1a484324"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 28 13:37:06 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 28 13:37:06 2010 -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: (27 commits)\n  sfc: Change falcon_probe_board() to fail for unsupported boards\n  sfc: Always close net device at the end of a disabling reset\n  sfc: Wait at most 10ms for the MC to finish reading out MAC statistics\n  sctp: Fix oops when sending queued ASCONF chunks\n  sctp: fix to calc the INIT/INIT-ACK chunk length correctly is set\n  sctp: per_cpu variables should be in bh_disabled section\n  sctp: fix potential reference of a freed pointer\n  sctp: avoid irq lock inversion while call sk-\u003esk_data_ready()\n  Revert \"tcp: bind() fix when many ports are bound\"\n  net/usb: add sierra_net.c driver\n  cdc_ether: fix autosuspend for mbm devices\n  bluetooth: handle l2cap_create_connless_pdu() errors\n  gianfar: Wait for both RX and TX to stop\n  ipheth: potential null dereferences on error path\n  smc91c92_cs: spin_unlock_irqrestore before calling smc_interrupt()\n  drivers/usb/net/kaweth.c: add device \"Allied Telesyn AT-USB10 USB Ethernet Adapter\"\n  bnx2: Update version to 2.0.9.\n  bnx2: Prevent \"scheduling while atomic\" warning with cnic, bonding and vlan.\n  bnx2: Fix lost MSI-X problem on 5709 NICs.\n  cxgb3: Wait longer for control packets on initialization\n  ...\n"
    },
    {
      "commit": "c0786693404cffd80ca3cb6e75ee7b35186b2825",
      "tree": "92a9026abbe71399c95330656af0f8c9d9c0019c",
      "parents": [
        "a8170c35e738d62e9919ce5b109cf4ed66e95bde"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Apr 28 08:47:22 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 28 12:16:34 2010 -0700"
      },
      "message": "sctp: Fix oops when sending queued ASCONF chunks\n\nWhen we finish processing ASCONF_ACK chunk, we try to send\nthe next queued ASCONF.  This action runs the sctp state\nmachine recursively and it\u0027s not prepared to do so.\n\nkernel BUG at kernel/timer.c:790!\ninvalid opcode: 0000 [#1] SMP\nlast sysfs file: /sys/module/ipv6/initstate\nModules linked in: sha256_generic sctp libcrc32c ipv6 dm_multipath\nuinput 8139too i2c_piix4 8139cp mii i2c_core pcspkr virtio_net joydev\nfloppy virtio_blk virtio_pci [last unloaded: scsi_wait_scan]\n\nPid: 0, comm: swapper Not tainted 2.6.34-rc4 #15 /Bochs\nEIP: 0060:[\u003cc044a2ef\u003e] EFLAGS: 00010286 CPU: 0\nEIP is at add_timer+0xd/0x1b\nEAX: cecbab14 EBX: 000000f0 ECX: c0957b1c EDX: 03595cf4\nESI: cecba800 EDI: cf276f00 EBP: c0957aa0 ESP: c0957aa0\n DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068\nProcess swapper (pid: 0, ti\u003dc0956000 task\u003dc0988ba0 task.ti\u003dc0956000)\nStack:\n c0957ae0 d1851214 c0ab62e4 c0ab5f26 0500ffff 00000004 00000005 00000004\n\u003c0\u003e 00000000 d18694fd 00000004 1666b892 cecba800 cecba800 c0957b14\n00000004\n\u003c0\u003e c0957b94 d1851b11 ceda8b00 cecba800 cf276f00 00000001 c0957b14\n000000d0\nCall Trace:\n [\u003cd1851214\u003e] ? sctp_side_effects+0x607/0xdfc [sctp]\n [\u003cd1851b11\u003e] ? sctp_do_sm+0x108/0x159 [sctp]\n [\u003cd1863386\u003e] ? sctp_pname+0x0/0x1d [sctp]\n [\u003cd1861a56\u003e] ? sctp_primitive_ASCONF+0x36/0x3b [sctp]\n [\u003cd185657c\u003e] ? sctp_process_asconf_ack+0x2a4/0x2d3 [sctp]\n [\u003cd184e35c\u003e] ? sctp_sf_do_asconf_ack+0x1dd/0x2b4 [sctp]\n [\u003cd1851ac1\u003e] ? sctp_do_sm+0xb8/0x159 [sctp]\n [\u003cd1863334\u003e] ? sctp_cname+0x0/0x52 [sctp]\n [\u003cd1854377\u003e] ? sctp_assoc_bh_rcv+0xac/0xe1 [sctp]\n [\u003cd1858f0f\u003e] ? sctp_inq_push+0x2d/0x30 [sctp]\n [\u003cd186329d\u003e] ? sctp_rcv+0x797/0x82e [sctp]\n\nTested-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Yuansong Qiao \u003cysqiao@research.ait.ie\u003e\nSigned-off-by: Shuaijun Zhang \u003cszhang@research.ait.ie\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "561b1733a465cf9677356b40c27653dd45f1ac56",
      "tree": "86d6720a6497a0b3faa9685596d4f85d3858b6fe",
      "parents": [
        "8d238b25b1ec22a73b1c2206f111df2faaff8285"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Wed Apr 28 08:47:18 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 28 12:16:31 2010 -0700"
      },
      "message": "sctp: avoid irq lock inversion while call sk-\u003esk_data_ready()\n\nsk-\u003esk_data_ready() of sctp socket can be called from both BH and non-BH\ncontexts, but the default sk-\u003esk_data_ready(), sock_def_readable(), can\nnot be used in this case. Therefore, we have to make a new function\nsctp_data_ready() to grab sk-\u003esk_data_ready() with BH disabling.\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ INFO: possible irq lock inversion dependency detected ]\n2.6.33-rc6 #129\n---------------------------------------------------------\nsctp_darn/1517 just changed the state of lock:\n (clock-AF_INET){++.?..}, at: [\u003cc06aab60\u003e] sock_def_readable+0x20/0x80\nbut this lock took another, SOFTIRQ-unsafe lock in the past:\n (slock-AF_INET){+.-...}\n\nand interrupts could create inverse lock ordering between them.\n\nother info that might help us debug this:\n1 lock held by sctp_darn/1517:\n #0:  (sk_lock-AF_INET){+.+.+.}, at: [\u003ccdfe363d\u003e] sctp_sendmsg+0x23d/0xc00 [sctp]\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3fb938b2a8bdbcf6086192d90fb7c73425e41fb9",
      "tree": "3b273692ee6a34c603f83a645b29573c404ffc97",
      "parents": [
        "970b06485ffee36aa3549dfe4c6b2a2c2118354d",
        "83bf6f11e82eba8533f8dbd241b2c2825e42ae5d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 28 07:58:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 28 07:58:36 2010 -0700"
      },
      "message": "Merge branch \u0027urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6\n\n* \u0027urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6:\n  pcmcia: fix matching rules for pseudo-multi-function cards\n  pcmcia: pcmcia_dev_present bugfix\n"
    },
    {
      "commit": "970b06485ffee36aa3549dfe4c6b2a2c2118354d",
      "tree": "1b0f6f4182e73d19071addf8a209e5fb58483d08",
      "parents": [
        "696e65c3606aa3f587eeb181766baf49ea750cfc",
        "33f60e9640b2f60dde6735293d4aa5ecc5b1d5d5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 28 07:56:05 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 28 07:56:05 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  coda: move backing-dev.h kernel include inside __KERNEL__\n  mtd: ensure that bdi entries are properly initialized and registered\n  Move mtd_bdi_*mappable to mtdcore.c\n  btrfs: convert to using bdi_setup_and_register()\n  Catch filesystems lacking s_bdi\n  drbd: Terminate a connection early if sending the protocol fails\n  drbd: fix memory leak\n  Fix JFFS2 sync silent failure\n  smbfs: add bdi backing to mount session\n  ncpfs: add bdi backing to mount session\n  exofs: add bdi backing to mount session\n  ecryptfs: add bdi backing to mount session\n  coda: add bdi backing to mount session\n  cifs: add bdi backing to mount session\n  afs: add bdi backing to mount session.\n  9p: add bdi backing to mount session\n  bdi: add helper function for doing init and register of a bdi for a file system\n  block: ensure jiffies wrap is handled correctly in blk_rq_timed_out_timer\n"
    },
    {
      "commit": "33f60e9640b2f60dde6735293d4aa5ecc5b1d5d5",
      "tree": "9fc41444f93cd0e4c78fabd081b2d113fc917fc9",
      "parents": [
        "0661b1ac5d48eb47c8a5948c0554fea25e0895ab"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Apr 28 09:20:33 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Apr 28 09:20:33 2010 +0200"
      },
      "message": "coda: move backing-dev.h kernel include inside __KERNEL__\n\nOtherwise we must export backing-dev.h as well, which doesn\u0027t make\nany sense.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5129a469a91a91427334c40e29e64c6d0ab68caf",
      "tree": "141a17cbea94c7c9c038187cc7081e1c688eac55",
      "parents": [
        "7e2455c1a123ceadbb35150a610d61e8443fd340"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@logfs.org",
        "time": "Sun Apr 25 08:54:42 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Sun Apr 25 08:54:42 2010 +0200"
      },
      "message": "Catch filesystems lacking s_bdi\n\nnoop_backing_dev_info is used only as a flag to mark filesystems that\ndon\u0027t have any backing store, like tmpfs, procfs, spufs, etc.\n\nSigned-off-by: Joern Engel \u003cjoern@logfs.org\u003e\n\nChanged the BUG_ON() to a WARN_ON(). Note that adding dirty inodes\nto the noop_backing_dev_info is not legal and will not result in\nthem being flushed, but we already catch this condition in\n__mark_inode_dirty() when checking for a registered bdi.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "23be7468e8802a2ac1de6ee3eecb3ec7f14dc703",
      "tree": "2c01e547594b8d7f32ddda47b6bea284d8f19761",
      "parents": [
        "9a6a1ecd9e9b5d046a236da2f7eb6b6812f04229"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Fri Apr 23 13:17:56 2010 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 24 11:31:25 2010 -0700"
      },
      "message": "hugetlb: fix infinite loop in get_futex_key() when backed by huge pages\n\nIf a futex key happens to be located within a huge page mapped\nMAP_PRIVATE, get_futex_key() can go into an infinite loop waiting for a\npage-\u003emapping that will never exist.\n\nSee https://bugzilla.redhat.com/show_bug.cgi?id\u003d552257 for more details\nabout the problem.\n\nThis patch makes page-\u003emapping a poisoned value that includes\nPAGE_MAPPING_ANON mapped MAP_PRIVATE.  This is enough for futex to\ncontinue but because of PAGE_MAPPING_ANON, the poisoned value is not\ndereferenced or used by futex.  No other part of the VM should be\ndereferencing the page-\u003emapping of a hugetlbfs page as its page cache is\nnot on the LRU.\n\nThis patch fixes the problem with the test case described in the bugzilla.\n\n[akpm@linux-foundation.org: mel cant spel]\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Darren Hart \u003cdarren@dvhart.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3a3076f4d6e2fa31338a0b007df42a3b32f079e0",
      "tree": "58bb9ec51a2e99baf7b28cebd0c9d3df2fc1c7a7",
      "parents": [
        "1918ad77f7f908ed67cf37c505c6ad4ac52f1ecf"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "josef@redhat.com",
        "time": "Fri Apr 23 12:17:17 2010 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 23 10:39:48 2010 -0700"
      },
      "message": "Cleanup generic block based fiemap\n\nThis cleans up a few of the complaints of __generic_block_fiemap.  I\u0027ve\nfixed all the typing stuff, used inline functions instead of macros,\ngotten rid of a couple of variables, and made sure the size and block\nrequests are all block aligned.  It also fixes a problem where sometimes\nFIEMAP_EXTENT_LAST wasn\u0027t being set properly.\n\nSigned-off-by: Josef Bacik \u003cjosef@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cfc94b2c9ac603b20db54225408df6ed80188dcd",
      "tree": "6e5b21adac556242b89931c4d0929b66efb8c0b9",
      "parents": [
        "4c6a3999651741419cd3cc4303cf0c2be07d89bc",
        "e1393667be574807a13bfaf1bb471f5fd1a5287b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 22 12:54:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 22 12:54:54 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:\n  firewire: ohci: wait for local CSR lock access to finish\n  firewire: ohci: prevent aliasing of locally handled register addresses\n  firewire: core: fw_iso_resource_manage: return -EBUSY when out of resources\n  firewire: core: fix retries calculation in iso manage_channel()\n  firewire: cdev: fix cut+paste mistake in disclaimer\n"
    },
    {
      "commit": "71d0a6112a363e703e383ae5b12c492485c39701",
      "tree": "fc22ab92565fb61a37a77f829a82fa9b8ea6497f",
      "parents": [
        "cdd29ecfcb9554132cd94b82ae8b69ba37adb3b5"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Apr 22 15:35:57 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Apr 22 15:35:57 2010 -0400"
      },
      "message": "NFS: Fix an unstable write data integrity race\n\nCommit 2c61be0a9478258f77b66208a0c4b1f5f8161c3c (NFS: Ensure that the WRITE\nand COMMIT RPC calls are always uninterruptible) exposed a race on file\nclose. In order to ensure correct close-to-open behaviour, we want to wait\nfor all outstanding background commit operations to complete.\n\nThis patch adds an inode flag that indicates if a commit operation is under\nway, and provides a mechanism to allow -\u003ewrite_inode() to wait for its\ncompletion if this is a data integrity flush.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "424264b7b220e8eee165dc3080ae48692af73dec",
      "tree": "f946baadbb45ae77e76807df3d394aff88dcd801",
      "parents": [
        "f1970c73cbb6b884152207e4dfe90639f5029905"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 22 12:37:07 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 22 12:37:07 2010 +0200"
      },
      "message": "smbfs: add bdi backing to mount session\n\nThis ensures that dirty data gets flushed properly.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "f1970c73cbb6b884152207e4dfe90639f5029905",
      "tree": "86f8e8c1dc149b46b01e6235eb3f01c7c6c3d5b5",
      "parents": [
        "b3d0ab7e60d1865bb6f6a79a77aaba22f2543236"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 22 12:31:11 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 22 12:31:11 2010 +0200"
      },
      "message": "ncpfs: add bdi backing to mount session\n\nThis ensures that dirty data gets flushed properly.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5163d90076729413cb882d3dd5c3d3cfb5b9f035",
      "tree": "b2e3419e481f4373bb511642953f6faca5157a51",
      "parents": [
        "8044f7f468469c80031611206d554f86fcdfe704"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 22 12:12:40 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 22 12:12:40 2010 +0200"
      },
      "message": "coda: add bdi backing to mount session\n\nThis ensures that dirty data gets flushed properly.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "c3c532061e46156e8aab1268f38d66cfb63aeb2d",
      "tree": "8c5b027873b823b04f5564d442477e80e82e8edb",
      "parents": [
        "a534dbe96e9929c7245924d8252d89048c23d569"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 22 11:37:01 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 22 11:39:36 2010 +0200"
      },
      "message": "bdi: add helper function for doing init and register of a bdi for a file system\n\nPretty trivial helper, just sets up the bdi and registers it. An atomic\nsequence count is used to ensure that the registered sysfs names are\nunique.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "458f8c895beba63851281dcdac3773685f0fae09",
      "tree": "dd5b7af8b221bc5755e8ce94b7145f6f0589cac4",
      "parents": [
        "255f41c59558a346d65a2012420a7573e36dc584",
        "58d57658834faa0c19da35e84632f7b78846f69f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 21 12:31:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 21 12:31:52 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6:\n  mc13783-regulator: fix a memory leak in mc13783_regulator_remove\n  regulator: Let drivers know when they use the stub API\n"
    },
    {
      "commit": "04de0816173c86948b75da93a6344a0a02bbec4d",
      "tree": "ed4b274c1ce5da03a9c37f5858a331529e5b150f",
      "parents": [
        "05ce7bfe547c9fa967d9cab6c37867a9cb6fb3fa"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Tue Apr 20 14:49:01 2010 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Apr 21 08:09:17 2010 +0200"
      },
      "message": "pcmcia: pcmcia_dev_present bugfix\n\npcmcia_dev_present is in and by itself buggy. Add a note specifying\nwhy it is broken, and replace the broken locking -- taking a mutex\nis a bad idea in IRQ context, from which this function is rarely\ncalled -- by an atomic_t.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "e80e2a60ff7914dae691345a976c80bbbff3ec74",
      "tree": "ce9f6ce95d3b00f24a407982d52aca567866c0d8",
      "parents": [
        "87bf6e7de1134f48681fd2ce4b7c1ec45458cb6d"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Tue Mar 30 16:48:25 2010 -0700"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Apr 20 13:08:30 2010 +0300"
      },
      "message": "KVM: Increase NR_IOBUS_DEVS limit to 200\n\nThis patch increases the current hardcoded limit of NR_IOBUS_DEVS\nfrom 6 to 200. We are hitting this limit when creating a guest with more\nthan 1 virtio-net device using vhost-net backend. Each virtio-net\ndevice requires 2 such devices to service notifications from rx/tx queues.\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "87bf6e7de1134f48681fd2ce4b7c1ec45458cb6d",
      "tree": "ae8ce63cecab98c036c0d76422de42cf78e042f4",
      "parents": [
        "77662e0028c7c63e34257fda03ff9625c59d939d"
      ],
      "author": {
        "name": "Takuya Yoshikawa",
        "email": "yoshikawa.takuya@oss.ntt.co.jp",
        "time": "Mon Apr 12 19:35:35 2010 +0900"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Apr 20 13:06:55 2010 +0300"
      },
      "message": "KVM: fix the handling of dirty bitmaps to avoid overflows\n\nInt is not long enough to store the size of a dirty bitmap.\n\nThis patch fixes this problem with the introduction of a wrapper\nfunction to calculate the sizes of dirty bitmaps.\n\nNote: in mark_page_dirty(), we have to consider the fact that\n  __set_bit() takes the offset as int, not long.\n\nSigned-off-by: Takuya Yoshikawa \u003cyoshikawa.takuya@oss.ntt.co.jp\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "85341c61361cc45a9cc0e11c01e8f4479ef460ac",
      "tree": "8d5e8e98aaef7f77f9749d851dd409ac356f0258",
      "parents": [
        "375db4810b27306ea400ab39d3d6f7a063ac9ff6",
        "bc293d62b26ec590afc90a9e0a31c45d355b7bd8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 19 08:35:47 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 19 08:35:47 2010 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcu: Make RCU lockdep check the lockdep_recursion variable\n  rcu: Update docs for rcu_access_pointer and rcu_dereference_protected\n  rcu: Better explain the condition parameter of rcu_dereference_check()\n  rcu: Add rcu_access_pointer and rcu_dereference_protected\n"
    },
    {
      "commit": "73c6c7fbb74d07a80fee41ce4ca3976547519e42",
      "tree": "2c2e2e5c7420054900a491bed70a2c766bd558c9",
      "parents": [
        "eb3e5cce2b39a266a1a167fa4290939db20ef5d6",
        "79b9517a33a283c5d9db875c263670ed1e055f7e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 19 07:27:06 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 19 07:27:06 2010 -0700"
      },
      "message": "Merge branch \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6\n\n* \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:\n  drm/radeon/kms: add FireMV 2400 PCI ID.\n  drm/radeon/kms: allow R500 regs VAP_ALT_NUM_VERTICES and VAP_INDEX_OFFSET\n  drivers/gpu/radeon: Add MSPOS regs to safe list.\n  drm/radeon/kms: disable the tv encoder when tv/cv is not in use\n  drm/radeon/kms: adjust pll settings for tv\n  drm/radeon/kms: fix tv dac conflict resolver\n  drm/radeon/kms/evergreen: don\u0027t enable hdmi audio stuff\n  drm/radeon/kms/atom: fix dual-link DVI on DCE3.2/4.0\n  drm/radeon/kms: fix rs600 tlb flush\n  drm/radeon/kms: print GPU family and device id when loading\n  drm/radeon/kms: fix calculation of mipmapped 3D texture sizes\n  drm/radeon/kms: only change mode when coherent value changes.\n  drm/radeon/kms: more atom parser fixes (v2)\n"
    },
    {
      "commit": "be1a50d4eba4cdb3ebf9d97a0a8693c153436775",
      "tree": "c4923c176186b9d1a596fd4274d05ddf8a5c2d49",
      "parents": [
        "13bd8e4673d527a9e48f41956b11d391e7c2cfe0"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Sat Apr 03 17:37:45 2010 +0200"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lrg@slimlogic.co.uk",
        "time": "Mon Apr 19 13:17:10 2010 +0100"
      },
      "message": "regulator: Let drivers know when they use the stub API\n\nHave the stub variant of regulator_get() return NULL, so that drivers\ncan (but still don\u0027t have to) handle this case specifically.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCc: Jerome Oufella \u003cjerome.oufella@savoirfairelinux.com\u003e\nAcked-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Liam Girdwood \u003clrg@slimlogic.co.uk\u003e\n"
    },
    {
      "commit": "79b9517a33a283c5d9db875c263670ed1e055f7e",
      "tree": "0a6c0fb95415864c0a1e1356a4dd26cb3f390ba0",
      "parents": [
        "cae94b0ad9d147152af77b971a7234faf20027a9"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Apr 19 17:54:31 2010 +1000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Apr 19 18:53:10 2010 +1000"
      },
      "message": "drm/radeon/kms: add FireMV 2400 PCI ID.\n\nThis is an M24/X600 chip.\n\nFrom RH# 581927\n\ncc: stable@kernel.org\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "bc293d62b26ec590afc90a9e0a31c45d355b7bd8",
      "tree": "4b61dee53e849f0ba1d5a7fef58522e224be836e",
      "parents": [
        "50aec0024eccb1d5f540ab64a1958eebcdb9340c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Apr 15 12:50:39 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 19 08:37:19 2010 +0200"
      },
      "message": "rcu: Make RCU lockdep check the lockdep_recursion variable\n\nThe lockdep facility temporarily disables lockdep checking by\nincrementing the current-\u003elockdep_recursion variable.  Such\ndisabling happens in NMIs and in other situations where lockdep\nmight expect to recurse on itself.\n\nThis patch therefore checks current-\u003elockdep_recursion, disabling RCU\nlockdep splats when this variable is non-zero.  In addition, this patch\nremoves the \"likely()\", as suggested by Lai Jiangshan.\n\nReported-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nReported-by: David Miller \u003cdavem@davemloft.net\u003e\nTested-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: josh@joshtriplett.org\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nCc: Valdis.Kletnieks@vt.edu\nCc: dhowells@redhat.com\nCc: eric.dumazet@gmail.com\nLKML-Reference: \u003c20100415195039.GA22623@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a2612cb16d4d8447793609cbdd2a2f4f156c0020",
      "tree": "bf1330080ff46175f535d76de6ca98bf2ad23d52",
      "parents": [
        "19b3eecc21b65a24b0aae2684ca0c8e1b99ef802"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Apr 15 22:16:04 2010 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Apr 15 22:18:36 2010 +0200"
      },
      "message": "firewire: cdev: fix cut+paste mistake in disclaimer\n\nThis was supposed to be generic \"authors or copyright holders\";\nI mistakenly picked up text from a wrong file.\n\nReported-by: Daniel K. \u003cdk@uw.no\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "2fed94c032316d89422d4abfca2a882897489b94",
      "tree": "9381c79a351d2c13f6b87bae550c51689491ded6",
      "parents": [
        "00eef7bd01c7598d195699983c5290d901df19ad",
        "19b3eecc21b65a24b0aae2684ca0c8e1b99ef802"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 15 11:56:20 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 15 11:56:20 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:\n  firewire: cdev: change license of exported header files to MIT license\n  firewire: cdev: comment fixlet\n  firewire: cdev: iso packet documentation\n  firewire: cdev: fix information leak\n  firewire: cdev: require quadlet-aligned headers for transmit packets\n  firewire: cdev: disallow receive packets without header\n"
    },
    {
      "commit": "00eef7bd01c7598d195699983c5290d901df19ad",
      "tree": "14ba0178fc2c5e807282132e689236965b889e91",
      "parents": [
        "250541fca717a5c9b0d3710e737b2ca32ebb6fbc",
        "014f61504af276ba9d9544d8a7401d8f8526eb73"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 15 11:49:55 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 15 11:49:55 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:\n  Input: wacom - switch mode upon system resume\n  Revert \"Input: wacom - merge out and in prox events\"\n  Input: matrix_keypad - allow platform to disable key autorepeat\n  Input: ALPS - add signature for HP Pavilion dm3 laptops\n  Input: i8042 - spelling fix\n  Input: sparse-keymap - implement safer freeing of the keymap\n  Input: update the status of the Multitouch X driver project\n  Input: clarify the no-finger event in multitouch protocol\n  Input: bcm5974 - retract efi-broken suspend_resume\n  Input: sparse-keymap - free the right keymap on error\n"
    },
    {
      "commit": "19b3eecc21b65a24b0aae2684ca0c8e1b99ef802",
      "tree": "dc7d17175b47cd81fea937ddd4d933aa4871b9f4",
      "parents": [
        "ca658b1e29d6be939207532e337fb640eb697f71"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Apr 11 11:52:12 2010 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Apr 15 17:50:49 2010 +0200"
      },
      "message": "firewire: cdev: change license of exported header files to MIT license\n\nAmong else, this allows projects like libdc1394 to carry copies of the\nABI related header files without them or distributors having to worry\nabout effects on the project\u0027s overall license terms.  Switch to MIT\nlicense as suggested by Kristian.  Also update the year in the\ncopyright statement according to source history.\n\nCc: Jay Fenlason \u003cfenlason@redhat.com\u003e\nAcked-by: Clemens Ladisch \u003cclemens@ladisch.de\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@bitplanet.net\u003e\n"
    },
    {
      "commit": "c08c68dd76bd6b776bc0eb45a5e8f354ed772cdf",
      "tree": "5324c73474b1e73631392de814e8ecebd5956d5b",
      "parents": [
        "b62730baea32f86fe91a7930e4b7ee8d82778b79"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Apr 09 15:39:11 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 14 12:20:04 2010 +0200"
      },
      "message": "rcu: Better explain the condition parameter of rcu_dereference_check()\n\nBetter explain the condition parameter of\nrcu_dereference_check() that describes the conditions under\nwhich the dereference is permitted to take place (and\nincorporate Yong Zhang\u0027s suggestion).  This condition is only\nchecked under lockdep proving.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: josh@joshtriplett.org\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nCc: Valdis.Kletnieks@vt.edu\nCc: eric.dumazet@gmail.com\nLKML-Reference: \u003c1270852752-25278-2-git-send-email-paulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b62730baea32f86fe91a7930e4b7ee8d82778b79",
      "tree": "97910bcb8a0790b10ff687dad901e158a2da63f4",
      "parents": [
        "2ba3abd8186f24c7fb418927025b4e2120e3a362"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Fri Apr 09 15:39:10 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 14 12:19:51 2010 +0200"
      },
      "message": "rcu: Add rcu_access_pointer and rcu_dereference_protected\n\nThis patch adds variants of rcu_dereference() that handle\nsituations where the RCU-protected data structure cannot change,\nperhaps due to our holding the update-side lock, or where the\nRCU-protected pointer is only to be fetched, not dereferenced.\nThese are needed due to some performance concerns with using\nrcu_dereference() where it is not required, aside from the need\nfor lockdep/sparse checking.\n\nThe new rcu_access_pointer() primitive is for the case where the\npointer is be fetch and not dereferenced.  This primitive may be\nused without protection, RCU or otherwise, due to the fact that\nit uses ACCESS_ONCE().\n\nThe new rcu_dereference_protected() primitive is for the case\nwhere updates are prevented, for example, due to holding the\nupdate-side lock.  This primitive does neither ACCESS_ONCE() nor\nsmp_read_barrier_depends(), so can only be used when updates are\nsomehow prevented.\n\nSuggested-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: josh@joshtriplett.org\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nCc: Valdis.Kletnieks@vt.edu\nCc: dhowells@redhat.com\nCc: eric.dumazet@gmail.com\nLKML-Reference: \u003c1270852752-25278-1-git-send-email-paulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0fdfe5ad2802e747460bf48eb2eb0ca3d3f3af42",
      "tree": "1358c7920438e090605695f6fb8e7989eb3f8998",
      "parents": [
        "44d2d371d250b44cbe40f8d47e329c97668d7594",
        "0df5dd4aae211edeeeb84f7f84f6d093406d7c22"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 13 15:10:16 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 13 15:10:16 2010 -0700"
      },
      "message": "Merge branch \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:\n  NFSv4: fix delegated locking\n  NFS: Ensure that the WRITE and COMMIT RPC calls are always uninterruptible\n  NFS: Fix a race with the new commit code\n  NFS: Ensure that writeback_single_inode() calls write_inode() when syncing\n  NFS: Fix the mode calculation in nfs_find_open_context\n  NFSv4: Fall back to ordinary lookup if nfs4_atomic_open() returns EISDIR\n"
    },
    {
      "commit": "0df5dd4aae211edeeeb84f7f84f6d093406d7c22",
      "tree": "6e58bc436b873cf582f20cf0dbd21461c0a56837",
      "parents": [
        "2c61be0a9478258f77b66208a0c4b1f5f8161c3c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Apr 11 16:48:44 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Apr 12 07:55:15 2010 -0400"
      },
      "message": "NFSv4: fix delegated locking\n\nArnaud Giersch reports that NFSv4 locking is broken when we hold a\ndelegation since commit 8e469ebd6dc32cbaf620e134d79f740bf0ebab79 (NFSv4:\nDon\u0027t allow posix locking against servers that don\u0027t support it).\n\nAccording to Arnaud, the lock succeeds the first time he opens the file\n(since we cannot do a delegated open) but then fails after we start using\ndelegated opens.\n\nThe following patch fixes it by ensuring that locking behaviour is\ngoverned by a per-filesystem capability flag that is initially set, but\ngets cleared if the server ever returns an OPEN without the\nNFS4_OPEN_RESULT_LOCKTYPE_POSIX flag being set.\n\nReported-by: Arnaud Giersch \u003carnaud.giersch@iut-bm.univ-fcomte.fr\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "4a1032faac94ebbf647460ae3e06fc21146eb280",
      "tree": "7f31b97beb0406faa1523e619289ad0ab07c9787",
      "parents": [
        "ae4e8d63b5619d4d95f1d2bfa2b836caa6e62d06",
        "0eddb519b9127c73d53db4bf3ec1d45b13f844d1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 02:44:30 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 02:44:30 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n"
    },
    {
      "commit": "ca658b1e29d6be939207532e337fb640eb697f71",
      "tree": "f22c747e718d12b5be2bc37cfccd6d02aff9fcbe",
      "parents": [
        "aa6fec3cdeb14ecc916eb78c4cd9ed79e4f7fe8d"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Apr 10 12:23:09 2010 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Apr 10 16:51:13 2010 +0200"
      },
      "message": "firewire: cdev: comment fixlet\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "aa6fec3cdeb14ecc916eb78c4cd9ed79e4f7fe8d",
      "tree": "4beee35aa9f9e31ec542d11075b822de9adbacc6",
      "parents": [
        "9cac00b8f0079d5d3d54ec4dae453d58dec30e7c"
      ],
      "author": {
        "name": "Clemens Ladisch",
        "email": "clemens@ladisch.de",
        "time": "Wed Mar 31 16:26:52 2010 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Apr 10 16:51:13 2010 +0200"
      },
      "message": "firewire: cdev: iso packet documentation\n\nAdd the missing documentation for iso packets.\n\nSigned-off-by: Clemens Ladisch \u003cclemens@ladisch.de\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "2f4084209adc77f9a1c9f38db3019a509e167882",
      "tree": "775657114c885505ecc46605e29ea1470e986f76",
      "parents": [
        "2f10ffcfb28beb35137d9e86992c771b4a6c5f2a",
        "3440c49f5c5ecb4f29b0544aa87da71888404f8f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 09 11:50:29 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 09 11:50:29 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block: (34 commits)\n  cfq-iosched: Fix the incorrect timeslice accounting with forced_dispatch\n  loop: Update mtime when writing using aops\n  block: expose the statistics in blkio.time and blkio.sectors for the root cgroup\n  backing-dev: Handle class_create() failure\n  Block: Fix block/elevator.c elevator_get() off-by-one error\n  drbd: lc_element_by_index() never returns NULL\n  cciss: unlock on error path\n  cfq-iosched: Do not merge queues of BE and IDLE classes\n  cfq-iosched: Add additional blktrace log messages in CFQ for easier debugging\n  i2o: Remove the dangerous kobj_to_i2o_device macro\n  block: remove 16 bytes of padding from struct request on 64bits\n  cfq-iosched: fix a kbuild regression\n  block: make CONFIG_BLK_CGROUP visible\n  Remove GENHD_FL_DRIVERFS\n  block: Export max number of segments and max segment size in sysfs\n  block: Finalize conversion of block limits functions\n  block: Fix overrun in lcm() and move it to lib\n  vfs: improve writeback_inodes_wb()\n  paride: fix off-by-one test\n  drbd: fix al-to-on-disk-bitmap for 4k logical_block_size\n  ...\n"
    },
    {
      "commit": "ce82653d6cfcc95ba88c25908664878459fb1b8d",
      "tree": "ab80dd0055bcb4b9296c28c241f1d1fba229be1f",
      "parents": [
        "d3e06e2b15590b70ea73733fc4612e4741ff46e0"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Apr 06 22:36:20 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 09 10:12:03 2010 -0700"
      },
      "message": "radix_tree_tag_get() is not as safe as the docs make out [ver #2]\n\nradix_tree_tag_get() is not safe to use concurrently with radix_tree_tag_set()\nor radix_tree_tag_clear().  The problem is that the double tag_get() in\nradix_tree_tag_get():\n\n\t\tif (!tag_get(node, tag, offset))\n\t\t\tsaw_unset_tag \u003d 1;\n\t\tif (height \u003d\u003d 1) {\n\t\t\tint ret \u003d tag_get(node, tag, offset);\n\nmay see the value change due to the action of set/clear.  RCU is no protection\nagainst this as no pointers are being changed, no nodes are being replaced\naccording to a COW protocol - set/clear alter the node directly.\n\nThe documentation in linux/radix-tree.h, however, says that\nradix_tree_tag_get() is an exception to the rule that \"any function modifying\nthe tree or tags (...) must exclude other modifications, and exclude any\nfunctions reading the tree\".\n\nThe problem is that the next statement in radix_tree_tag_get() checks that the\ntag doesn\u0027t vary over time:\n\n\t\t\tBUG_ON(ret \u0026\u0026 saw_unset_tag);\n\nThis has been seen happening in FS-Cache:\n\n\thttps://www.redhat.com/archives/linux-cachefs/2010-April/msg00013.html\n\nTo this end, remove the BUG_ON() from radix_tree_tag_get() and note in various\ncomments that the value of the tag may change whilst the RCU read lock is held,\nand thus that the return value of radix_tree_tag_get() may not be relied upon\nunless radix_tree_tag_set/clear() and radix_tree_delete() are excluded from\nrunning concurrently with it.\n\nReported-by: Romain DEGEZ \u003cromain.degez@smartjog.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc1c183353a113c71675fecd0485e5aa0fe68d72",
      "tree": "25fc50112c80402ab43bd86a3d6b6a99a0c3c128",
      "parents": [
        "4dc86ae1f925b2121d4e75058675895f83e54c71"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed Apr 07 19:23:40 2010 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 09 10:09:50 2010 -0700"
      },
      "message": "slab: Generify kernel pointer validation\n\nAs suggested by Linus, introduce a kern_ptr_validate() helper that does some\nsanity checks to make sure a pointer is a valid kernel pointer.  This is a\npreparational step for fixing SLUB kmem_ptr_validate().\n\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45c4d015a92f72ec47acd0c7557abdc0c8a6499d",
      "tree": "8c71c959f3c7c04647336cca27dc18e3cd0bbe0b",
      "parents": [
        "cf90bfe2ebaf9d32f37acbebb7425c280fd6cd30"
      ],
      "author": {
        "name": "Mark Lord",
        "email": "kernel@teksavvy.com",
        "time": "Wed Apr 07 13:52:08 2010 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Apr 08 12:53:57 2010 -0400"
      },
      "message": "libata: Fix accesses at LBA28 boundary (old bug, but nasty) (v2)\n\nMost drives from Seagate, Hitachi, and possibly other brands,\ndo not allow LBA28 access to sector number 0x0fffffff (2^28 - 1).\nSo instead use LBA48 for such accesses.\n\nThis bug could bite a lot of systems, especially when the user has\ntaken care to align partitions to 4KB boundaries. On misaligned systems,\nit is less likely to be encountered, since a 4KB read would end at\n0x10000000 rather than at 0x0fffffff.\n\nSigned-off-by: Mark Lord \u003cmlord@pobox.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "cf90bfe2ebaf9d32f37acbebb7425c280fd6cd30",
      "tree": "d3e3f2067dc423721d698d154e15213aa5b0132d",
      "parents": [
        "0a2851b9a837cb025d48bb8118f35ebd12bce4b5",
        "720fc22a7af79d91ec460c80efa92c65c12d105e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 08 07:45:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 08 07:45:36 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6:\n  ide: Fix IDE taskfile with cfq scheduler\n  ide: Must hold queue lock when requeueing\n  ide: Requeue request after DMA timeout\n"
    },
    {
      "commit": "f5eb917b861828da18dc28854308068c66d1449a",
      "tree": "aa45d1a809abbe426b55dc89b8167e5a6609d418",
      "parents": [
        "fd218cf9557b9bf7061365a8fe7020a56d3f767c"
      ],
      "author": {
        "name": "John Hughes",
        "email": "john@calva.com",
        "time": "Wed Apr 07 21:29:25 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 07 21:29:25 2010 -0700"
      },
      "message": "x25: Patch to fix bug 15678 - x25 accesses fields beyond end of packet.\n\nHere is a patch to stop X.25 examining fields beyond the end of the packet.\n\nFor example, when a simple CALL ACCEPTED was received:\n\n\t10 10 0f\n\nx25_parse_facilities was attempting to decode the FACILITIES field, but this\npacket contains no facilities field.\n\nSigned-off-by: John Hughes \u003cjohn@calva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "b7a413015d2986edf020fba765c906cc9cbcbfc9"
}
