)]}'
{
  "log": [
    {
      "commit": "b2bdd1f5041db6f2d172417b5ceea20abc7a6eb6",
      "tree": "2d13145f81197f78924274c2f7dbf88918bf4339",
      "parents": [
        "5a33956a300dcb48a3b125cae437ad6f5c718282"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri May 30 10:29:55 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:23 2008 -0700"
      },
      "message": "USB: cp2101.c fix sparse signedness mismatch warnings\n\nThe get/set 2101_config helpers take an unsigned int rather than an\nint.  It is safe to change these in each case and may even produce\nbetter code as it will be an unsigned divide rather than a signed\ndivide in places.  All other manipulation was setting/masking bits\nwhich will not be affected by the sign change.\n\nFixes the following sparse warnings:\ndrivers/usb/serial/cp2101.c:378:44: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:378:44:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:378:44:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:388:40: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:388:40:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:388:40:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:413:42: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:413:42:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:413:42:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:421:42: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:421:42:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:421:42:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:444:42: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:444:42:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:444:42:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:451:42: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:451:42:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:451:42:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:458:42: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:458:42:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:458:42:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:471:42: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:471:42:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:471:42:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:481:42: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:481:42:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:481:42:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:561:41: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:561:41:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:561:41:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:591:45: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:591:45:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:591:45:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:597:41: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:597:41:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:597:41:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:608:45: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:608:45:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:608:45:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:614:41: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:614:41:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:614:41:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:623:45: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:623:45:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:623:45:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:680:50: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:680:50:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:680:50:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:690:43: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:690:43:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:690:43:    got int *\u003cnoident\u003e\ndrivers/usb/serial/cp2101.c:715:41: warning: incorrect type in argument 3 (different signedness)\ndrivers/usb/serial/cp2101.c:715:41:    expected unsigned int *data\ndrivers/usb/serial/cp2101.c:715:41:    got int *\u003cnoident\u003e\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "5a33956a300dcb48a3b125cae437ad6f5c718282",
      "tree": "3c0eb9c55f351ffa5229f6904949a0ced666f62d",
      "parents": [
        "554cc171e3b08a0cecd5cf7c0c38f66c43f76b39"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri May 30 10:18:53 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:22 2008 -0700"
      },
      "message": "USB: digi_accelport.c trivial sparse lock annotation\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "554cc171e3b08a0cecd5cf7c0c38f66c43f76b39",
      "tree": "d10d8920bed0f69ddd3afd67c254110babe61110",
      "parents": [
        "49f1525546532139e0260ae19ab8012a2bfbd1f3"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Fri May 23 16:37:58 2008 +1000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:22 2008 -0700"
      },
      "message": "USB: ohci-ppc-of: use linux/of_platform.h instead of asm\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "49f1525546532139e0260ae19ab8012a2bfbd1f3",
      "tree": "09fe366d23762cfce48f83f3be75454d04ffa486",
      "parents": [
        "54592157c7120ea4d6d0014cbbfc327d4b867fe3"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu May 22 22:48:48 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:21 2008 -0700"
      },
      "message": "USB: sisusb: Push down the BKL\n\nThis is another case where the lock_kernel appears to be unneccessary and\ncould be removed with a bit more investigative work\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "54592157c7120ea4d6d0014cbbfc327d4b867fe3",
      "tree": "b910f60432af71646ab763eea0c24f88d380942b",
      "parents": [
        "f1b5a7fe1718393f67fa6222a1cc27f97e12c4b3"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu May 22 22:47:31 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:20 2008 -0700"
      },
      "message": "USB: rio100: Push down the BKL\n\nThe BKL is actually probably not needed as the mutex seems sufficient. If\nso then a further patch to drop it would be a good followup.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f1b5a7fe1718393f67fa6222a1cc27f97e12c4b3",
      "tree": "5c56c6225a5450a43f993984c009bd2fb89e5690",
      "parents": [
        "824f16fda56a88267aba9b2580d7566cf56a0860"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu May 22 22:46:25 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:20 2008 -0700"
      },
      "message": "USB: auerwald: Push down the BKL into the driver\n\nAlso fix the unknown ioctl return code\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "824f16fda56a88267aba9b2580d7566cf56a0860",
      "tree": "f4e93bd841d8b5b865315e78dd73d2c5b5905a47",
      "parents": [
        "5cb4aeca8e8c29605703be5576825eb3257d8a92"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu May 22 22:06:02 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:19 2008 -0700"
      },
      "message": "USB: iowarrior: Push down BKL\n\nI\u0027m pretty sure the mutex is sufficient for all locking but will come\nback to that later if the USB folks don\u0027t beat me to it. For now get rid\nof the old BKL ioctl method and wrap the ioctl handler\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "5cb4aeca8e8c29605703be5576825eb3257d8a92",
      "tree": "b33bd1668d65836c6f6ceb2d60ea75de0a664728",
      "parents": [
        "1160d0765660e14b44dffd931b28a3875d5d9e46"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu May 22 22:07:51 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:18 2008 -0700"
      },
      "message": "USB: usblcd: Push down BKL into driver\n\nI\u0027m pretty sure this can be eliminated however I couldn\u0027t prove (or find)\nwhat stopped the device vanishing mid IOCTL_GET_HARD_VERSION. Perhaps a\nUSB wizard could double check that and see if the lock_kernel can go\nentirely.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1160d0765660e14b44dffd931b28a3875d5d9e46",
      "tree": "af822452845bb1335d4b0255976bf00241d32354",
      "parents": [
        "44c389a00ff7229ab2f2aab22ce03ae0c9037df7"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu May 22 22:04:48 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:18 2008 -0700"
      },
      "message": "USB: ftdi_usb: Eliminate ioctl and BKL ioctl use\n\nftdi has one ioctl, which is buggy and for debugging. Kill it off\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "44c389a00ff7229ab2f2aab22ce03ae0c9037df7",
      "tree": "24f9d98e40cf838efadbb4683135018e2a9038d8",
      "parents": [
        "0391c828ce75cc71ae301946699a6f2d515fd99d"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu May 22 22:03:27 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:18 2008 -0700"
      },
      "message": "USB: gadget: Push BKL down into drivers\n\nThis keeps the gadget ioctl method wrapped but pushes the BKL down into\nthe gadget code so we can use unlocked_ioctl().\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0391c828ce75cc71ae301946699a6f2d515fd99d",
      "tree": "c972cb6ce5a75221e046cfbd6b98a2d8abf5d8d1",
      "parents": [
        "19e2068015d4a66f62a0a19be2130d2948ba8024"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:20:11 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:17 2008 -0700"
      },
      "message": "usb ethernet gadget: use composite gadget framework\n\nBuilding on the previous patches which took code from this driver and\npakaged it in more-reusable network \"function\" components, this patch\ngets rid of the original code and uses those components instead.\n\nAs seen with the other gadget driver conversions, the resulting code\nis much easier to understand and (presumably) work with.  In this case\nthat\u0027s especially true, since the Ethernet gadget had grown to handle\nthree (!) different Ethernet-over-USB protocols.  This modularization\nshould make it much easier to add a fourth option for the newish CDC\n\"Ethernet Emulation Model\" (or EEM).\n\nLightly tested, primarily at full speed.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "19e2068015d4a66f62a0a19be2130d2948ba8024",
      "tree": "4ab41b622e137d089e5fed72110a9051829c88fc",
      "parents": [
        "45fe3b8e5342cd1ce307099459c74011d8e01986"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:20:26 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:16 2008 -0700"
      },
      "message": "usb gadget: new \"CDC Composite\" gadget driver\n\nThis is a simple example of a composite gadget, combining two\nCommunications Class Device (CDC) functions:  ECM and ACM.\n\nThis provides a clear example of how the composite gadget framework\nis intended to work.  It\u0027s surprising that MS-Windows (or at least,\nXP and previous) won\u0027t \"just work\" with something this simple...\n\nOne /proc/bus/usb/devices listing looks like:\n\n  T:  Bus\u003d03 Lev\u003d01 Prnt\u003d01 Port\u003d00 Cnt\u003d01 Dev#\u003d 46 Spd\u003d480 MxCh\u003d 0\n  D:  Ver\u003d 2.00 Cls\u003d02(comm.) Sub\u003d00 Prot\u003d00 MxPS\u003d64 #Cfgs\u003d  1\n  P:  Vendor\u003d0525 ProdID\u003da4aa Rev\u003d 3.01\n  S:  Manufacturer\u003dLinux 2.6.26-rc6-pnut with net2280\n  S:  Product\u003dCDC Composite Gadget\n  C:* #Ifs\u003d 4 Cfg#\u003d 1 Atr\u003dc0 MxPwr\u003d  2mA\n  I:* If#\u003d 0 Alt\u003d 0 #EPs\u003d 1 Cls\u003d02(comm.) Sub\u003d06 Prot\u003d00 Driver\u003dcdc_ether\n  E:  Ad\u003d83(I) Atr\u003d03(Int.) MxPS\u003d  16 Ivl\u003d32ms\n  I:  If#\u003d 1 Alt\u003d 0 #EPs\u003d 0 Cls\u003d0a(data ) Sub\u003d00 Prot\u003d00 Driver\u003dcdc_ether\n  I:* If#\u003d 1 Alt\u003d 1 #EPs\u003d 2 Cls\u003d0a(data ) Sub\u003d00 Prot\u003d00 Driver\u003dcdc_ether\n  E:  Ad\u003d81(I) Atr\u003d02(Bulk) MxPS\u003d 512 Ivl\u003d0ms\n  E:  Ad\u003d02(O) Atr\u003d02(Bulk) MxPS\u003d 512 Ivl\u003d0ms\n  I:* If#\u003d 2 Alt\u003d 0 #EPs\u003d 1 Cls\u003d02(comm.) Sub\u003d02 Prot\u003d01 Driver\u003dcdc_acm\n  E:  Ad\u003d86(I) Atr\u003d03(Int.) MxPS\u003d   8 Ivl\u003d32ms\n  I:* If#\u003d 3 Alt\u003d 0 #EPs\u003d 2 Cls\u003d0a(data ) Sub\u003d00 Prot\u003d00 Driver\u003dcdc_acm\n  E:  Ad\u003d84(I) Atr\u003d02(Bulk) MxPS\u003d 512 Ivl\u003d0ms\n  E:  Ad\u003d05(O) Atr\u003d02(Bulk) MxPS\u003d 512 Ivl\u003d0ms\n\nNot all USB peripheral controller hardware can support this driver.\nAll the highspeed-capable peripheral controllers with drivers now in\nthe mainline kernel seem to support this, as does omap_udc.  But\nmany full speed controllers don\u0027t have enough endpoints, or (as with\nthe PXA controllers) don\u0027t support altsettings.\n\nLightly tested.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "45fe3b8e5342cd1ce307099459c74011d8e01986",
      "tree": "7a8c3653592cac85c1da6edb2e86ddb2c70f2224",
      "parents": [
        "da741b8c56d612b5dd26ffa31341911a5fea23ee"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:20:04 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:15 2008 -0700"
      },
      "message": "usb ethernet gadget: split RNDIS function\n\nThis is a RNDIS function driver, extracted from the all-in-one\nEthernet gadget driver.\n\nLightly tested ... there seems to be a pre-existing problem when\ntalking to Windows XP SP2, not quite sure what\u0027s up with that yet.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "da741b8c56d612b5dd26ffa31341911a5fea23ee",
      "tree": "201018abff24086e048a7dbf96ae07e60a82433e",
      "parents": [
        "8a40819e97368f2b6e67fea103348f9fc2f68ceb"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:19:46 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:13 2008 -0700"
      },
      "message": "usb ethernet gadget: split CDC Ethernet function\n\nThis is a \"CDC Ethernet\" (ECM) function driver, extracted from the\nall-in-one Ethernet gadget driver.\n\nThis is a good example of how to implement interface altsettings.\nIn fact it\u0027s currently the only such example in the gadget stack,\npending addition of OBEX support.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8a40819e97368f2b6e67fea103348f9fc2f68ceb",
      "tree": "f1b7b38ecb63adcd5220ff62eb21551fdaa60ed6",
      "parents": [
        "2b3d942c4878084a37991a65e66512c02b8fa2ad"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:19:32 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:13 2008 -0700"
      },
      "message": "usb ethernet gadget: split CDC Subset function\n\nThis is a simple \"CDC Subset\" (and MCCI \"SAFE\") function driver, extracted\nfrom the all-in-one Ethernet gadget driver.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "2b3d942c4878084a37991a65e66512c02b8fa2ad",
      "tree": "d7e70b94b002a08d5a31b56d88dd62b63b686d6a",
      "parents": [
        "15b2d2b529d11449910ac86f6093124bce8f6103"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:19:28 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:12 2008 -0700"
      },
      "message": "usb ethernet gadget: split out network core\n\nAbstract the peripheral side Ethernet-over-USB link layer code from\nthe all-in-one Ethernet gadget driver into a component that can be\ncalled by various functions, so the various flavors can be split\napart and selectively reused.\n\nA notable difference from the approach taken with the serial link\nlayer code (beyond talking to NET not TTY) is that because of the\ninitialization requirements, this only supports one network link.\n(And one set of Ethernet link addresses.)\n\nThat is, each configuration may have only one instance of a network\nfunction.  This doesn\u0027t change behavior; the current code has that\nsame restriction.  If you want multiple logical links, that can\neasily be done using network layer tools.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "15b2d2b529d11449910ac86f6093124bce8f6103",
      "tree": "f8c153f86a19354e789c16af277dff2b68779f94",
      "parents": [
        "7bb5ea54be47584869b9a748696e06788c55e28f"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:19:16 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:10 2008 -0700"
      },
      "message": "usb gadget: RNDIS cleanups\n\nSome cleanup to the RNDIS code:\n\n - Minor bugfix:  rndis_unit() is supposed to put the link into the\n   RNDIS_UNINITIALIZED state, which does not mean \"unused\".  There\u0027s\n   a separate method to stop using the link.  (Bug doesn\u0027t affect\n   anything right now because of how the code is used.)\n\n - Reduce coupling between RNDIS code and its user(s), in preparation\n   for updates in that code:\n\n    * Decouple RNDIS_RESPONSE_AVAILABLE notifications from net_device\n      by passing just a void* handle.  (Also, remove the unused return\n      value of the notification callback.)\n    * When it needs a copy of net_device stats, just ask for it\n\n - Remove unused/untested code backing various never-used OIDs:\n\n    * RNDIS_PM, RNDIS_WAKEUP ... \"should\" get implemented, but the\n      relevant docs were unclear, ambguous, and incomplete.  Someone\n      with access to the Hidden Gospels (maybe in the EU?) might be\n      able to figure out what this should do.\n    * RNDIS_OPTIONAL_STATS ... as the name suggests, optional.  Never\n      implemented in part because not all the semantics were clear.\n    * OID_GEN_RNDIS_CONFIG_PARAMETER, which has been #if 0 forever.\n\n - A few small whitespace fixes\n\nPlus switch the VERBOSE symbol over to the newer VERBOSE_DEBUG style.\n\nThere should be no functional changes because of this patch; it\u0027s a\nnet source code shrink (because of the dead/unused code removal) and\na small object code shrink (a couple hundred bytes on ARMv5).\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7bb5ea54be47584869b9a748696e06788c55e28f",
      "tree": "73bea702ff56832a7853616c60686299b34eecba",
      "parents": [
        "61d8baea5d02f0f00fb789ce5551cbd8f8b77087"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:19:03 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:09 2008 -0700"
      },
      "message": "usb gadget serial: use composite gadget framework\n\nThis switches the serial gadget over to using the new \"function\"\nversions of the serial port interfacing code.  The remaining code\nin the main source file is quite small...\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "61d8baea5d02f0f00fb789ce5551cbd8f8b77087",
      "tree": "90e52cbef05d698cb6b5a361930f19ea9b6fba17",
      "parents": [
        "4d5a73dc39c1e1d8ba5feec5c6234ae920c59161"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:18:50 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:07 2008 -0700"
      },
      "message": "usb gadget serial: split out generic serial function\n\nSplit out the generic serial support into a \"function driver\".  This\nclosely mimics the ACM support, but with a MUCH simpler control model.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4d5a73dc39c1e1d8ba5feec5c6234ae920c59161",
      "tree": "266b131a87231e5905f4ee4d974e9a47467595b1",
      "parents": [
        "097db1d034b0927056f3d9e844dc80b3ba881765"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:18:40 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:06 2008 -0700"
      },
      "message": "usb gadget serial: split out CDC ACM function\n\nSplit out CDC ACM parts of \"gadget serial\" to a \"function driver\".\nSome key structural differences from the previous ACM support, shared\nwith with the generic serial function (next patch):\n\n - As a function driver, it can be combined with other functions.\n   One gadget configuration could offer both serial and network\n   links, as an example.\n\n - One serial port can be exposed in multiple configurations;\n   the /dev/ttyGS0 node could be exposed regardless of which\n   config the host selected.\n\n - One configuration can expose multiple serial ports, such as\n   ttyGS0, ttyGS1, ttyGS2, and ttyGS3.\n\nThis code should be a lot easier to understand than the previous\nall-in-one-big-file version of the driver.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "097db1d034b0927056f3d9e844dc80b3ba881765",
      "tree": "674bab7cb6e94bd90f01e187661a3838ae4b2104",
      "parents": [
        "e5760fdac8c8aeca060d1afc8a233ea3d7a46720"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 18:18:27 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:04 2008 -0700"
      },
      "message": "usb gadget zero: use composite gadget framework\n\nUpdate Gadget Zero to use the more modular versions of the loopback\nand source/sink configuration drivers which build on the new gadget\nframework code.\n\nThe core code is a LOT simpler, and it should be much easier now to\nunderstand how the parts fit together.  The conversion is an overall\nsource shrink in terms of this gadget, since it uses more midlayer\nsupport.  However, it\u0027s an overall increase in object size because\nthere\u0027s less sharing between the two configurations (improves code\nclarity) and because the midlayer is a bit more functional than this\ndriver actually needs.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e5760fdac8c8aeca060d1afc8a233ea3d7a46720",
      "tree": "2845c06bf7415f12cc52aff3ffe41dd28b22a7ec",
      "parents": [
        "a400cadc0774c31f67c419a835d80ba611128c2a"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 17:55:35 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:03 2008 -0700"
      },
      "message": "usb gadget zero: split out loopback config\n\nThis splits the gadget zero \"loopback\" configuration into a standalone\n\"configuration driver\", building on the composite gadget framework code.\nIt doesn\u0027t yet pull the original code out of gadget zero or update how\nthat driver is built.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a400cadc0774c31f67c419a835d80ba611128c2a",
      "tree": "bd28acffcc157e504e397f0eaba76043f2453f7f",
      "parents": [
        "40982be52d8f64c3e10adce17e66ab755a4fa26b"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 17:55:23 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:02 2008 -0700"
      },
      "message": "usb gadget zero: split out source/sink config\n\nThis splits the gadget zero \"source/sink\" configuration into a standalone\n\"configuration driver\", building on the composite gadget framework code.\nIt doesn\u0027t yet pull the original code out of gadget zero or update how\nthat driver is built.\n\nNeither this, nor its sibling \"loopback\" configuration, is a function\ndriver that can be combined with other functions.  (The host \"usbtest\"\ndriver wouldn\u0027t know how to deal with that!)  However the code becomes\nsimpler because of this conversion, so it\u0027s a net win.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "40982be52d8f64c3e10adce17e66ab755a4fa26b",
      "tree": "15abb3e3e99a5e8043648bf6b8b1214a75a43476",
      "parents": [
        "a4c39c41bf3592684e36fa0dbbd4ab1a31f969b9"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 17:52:58 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:01 2008 -0700"
      },
      "message": "usb gadget: composite gadget core\n\nAdd \u003clinux/usb/composite.h\u003e interfaces for composite gadget drivers, and\nbasic implementation support behind it:\n\n  - struct usb_function ... groups one or more interfaces into a function\n    managed as one unit within a configuration, to which it\u0027s added by\n    usb_add_function().\n\n  - struct usb_configuration ... groups one or more such functions into\n    a configuration managed as one unit by a driver, to which it\u0027s added\n    by usb_add_config().  These operate at either high or full/low speeds\n    and at a given bMaxPower.\n\n  - struct usb_composite_driver ... groups one or more such configurations\n    into a gadget driver, which may be registered or unregistered.\n\n  - struct usb_composite_dev ... a usb_composite_driver manages this; it\n    wraps the usb_gadget exposed by the controller driver.\n\nThis also includes some basic kerneldoc.\n\nHow to use it (the short version):  provide a usb_composite_driver with a\nbind() that calls usb_add_config() for each of the needed configurations.\nThe configurations in turn have bind() calls, which will usb_add_function()\nfor each function required.  Each function\u0027s bind() allocates resources\nneeded to perform its tasks, like endpoints; sometimes configurations will\nallocate resources too.\n\nSeparate patches will convert most gadget drivers to this infrastructure.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a4c39c41bf3592684e36fa0dbbd4ab1a31f969b9",
      "tree": "548a902e3dc3999742fba83ff93c7584f995b73a",
      "parents": [
        "a7707adf9ee8de3c5b67e3793b98888f551ad00d"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 17:52:25 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:16:00 2008 -0700"
      },
      "message": "usb gadget: descriptor copying support\n\nDefine three new descriptor manipulation utilities, for use when\nsetting up functions that may have multiple instances:\n\n\tusb_copy_descriptors() to copy a vector of descriptors\n\tusb_free_descriptors() to free the copy\n\tusb_find_endpoint() to find a copied version\n\nThese will be used as follows.  Functions will continue to have static\ntables of descriptors they update, now used as __initdata templates.\n\nWhen a function creates a new instance, it patches those tables with\nrelevant interface and string IDs, plus endpoint assignments.  Then it\ncopies those morphed descriptors, associates the copies with the new\nfunction instance, and records the endpoint descriptors to use when\nactivating the endpoints.  When initialization is done, only the copies\nremain in memory.  The copies are freed on driver removal.\n\nThis ensures that each instance has descriptors which hold the right\ninstance-specific data.  Two instances in the same configuration will\nobviously never share the same interface IDs or use the same endpoints.\nInstances in different configurations won\u0027t do so either, which means\nthis is slightly less memory-efficient in some cases.\n\nThis also includes a bugfix to the epautoconf code that shows up with\nthis usage model.  It must replace the previous endpoint number when\nupdating the template descriptors, not just mask in a few more bits.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a7707adf9ee8de3c5b67e3793b98888f551ad00d",
      "tree": "431137e4c39202f6395f64893966e3bdfa1349d2",
      "parents": [
        "c1dca562be8ada614ef193aa246c6f8705bcd6b9"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 17:52:07 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:59 2008 -0700"
      },
      "message": "usb gadget: use new serial core\n\nTeach \"gadget serial\" to use the new abstracted (and bugfixed) TTY glue,\nand remove all the orignal tangled-up code.  Update the documentation\naccordingly.  This is a net object code shrink and cleanup; it should\nmake it a lot easier to see how the TTY glue should accomodate updates\nto the TTY layer, be bugfixed, etc.\n\nNotable behavior changes include:  it can now support getty even when\nthere\u0027s no USB connection; it fits properly into the mdev/udev world;\nand RX handling is better (throttling works, and low latency).\n\nConfigurations with scripts setting up the /dev/ttygserial device node\n(with \"experimental\" major number) may want to change that to be a\nsymlink pointing to the /dev/ttyGS0 file, as a migration aid; else,\njust switch entirely over to mdev/udev.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c1dca562be8ada614ef193aa246c6f8705bcd6b9",
      "tree": "d1a1946657e1f14756349af5f343ed6366b7c37c",
      "parents": [
        "bb24280ffce6a8bc6b03d29a43ec16ac14e9ec85"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Jun 19 17:51:44 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:59 2008 -0700"
      },
      "message": "usb gadget: split out serial core\n\nThis abstracts the \"gadget serial\" driver TTY glue into a separate\ncomponent, cleaning it up and disentangling it from connection state.\n\nIt also changed some behaviors for the better:\n\n  - Stops using \"experimental\" major #127, and switches over to\n    having the TTY layer allocate the dev_t numbers.\n    \n  - Provides /sys/class/tty/ttyGS* nodes, thus mdev/udev support.\n    (Note \"mdev\" hotplug bug in Busybox v1.7.2: /dev/ttyGS0 will\n    be a *block* device without CONFIG_SYSFS_DEPRECATED_V2.)\n\n  - The tty nodes no longer reject opens when there\u0027s no host.\n    Now they can support normal getty configs in /etc/inttab...\n\n  - Now implements RX throttling.  When the line discipline says\n    it doesn\u0027t want any more data, only packets in flight will be\n    delivered (currently, max 1K/8K at full/high speeds) until it\n    unthrottles the data.\n\n  - Supports low_latency.  This is a good policy for all USB serial\n    adapters, since it eliminates scheduler overhead on RX paths.\n\nThis also includes much cleanup including better comments, fixing\nmemory leaks and other bugs (including some locking fixes), messaging\ncleanup, and an interface audit and tightening.  This added up to a\nsignificant object code shrinkage, on the order of 20% (!) depending\non CPU and compiler.\n\nA separate patch actually kicks in this new code, using the functions\ndeclared in this new header, and removes the previous glue.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "bb24280ffce6a8bc6b03d29a43ec16ac14e9ec85",
      "tree": "c344f66890f16a386429b72245bb4443c5e94906",
      "parents": [
        "e184d5fcaac9676bd83a956a774a04a72bf2b28b"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Tue May 27 19:24:20 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:58 2008 -0700"
      },
      "message": "USB: at91_udc: updated fifo sizes\n\nIt turns out newer versions of the AT91 UDC hardware have increased\nsizes of some of the FIFOs.  Reporting that is a Good Thing.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e184d5fcaac9676bd83a956a774a04a72bf2b28b",
      "tree": "01bdfa94a16acf3f8961a9ca28999d6e8039a5cb",
      "parents": [
        "baad4119a3b5215a040bc221478da57c76389e34"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed May 14 16:25:13 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:57 2008 -0700"
      },
      "message": "USB: rndis: switch to seq_files\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "baad4119a3b5215a040bc221478da57c76389e34",
      "tree": "ee82b73a47b555e13b37d7c9d1a7a660858d206a",
      "parents": [
        "ea05af61a874ffbc158d9cf06df8a9396f299f38"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue May 20 01:00:24 2008 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:55 2008 -0700"
      },
      "message": "USB: remove Documentation/usb/uhci.txt\n\nThe driver was removed before kernel 2.6.0\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "ea05af61a874ffbc158d9cf06df8a9396f299f38",
      "tree": "264a9e3985cab2ac18d5b43ec29b2eb960e346c6",
      "parents": [
        "543f7810fba2a62e412efa9473ad08167b691f09"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue May 20 01:00:46 2008 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:55 2008 -0700"
      },
      "message": "USB: remove CVS keywords\n\nThis patch removes CVS keywords that weren\u0027t updated for a long time\nfrom comments.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "543f7810fba2a62e412efa9473ad08167b691f09",
      "tree": "4e29d5b264b44ed544ea4fa6aec3389c504e9b68",
      "parents": [
        "9da82bd4649334817ef0e752a69eb99051645dad"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Thu May 08 11:55:59 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:54 2008 -0700"
      },
      "message": "usb-storage: implement \"soft\" unbinding\n\nThis patch (as1092) implements \"soft\" unbinding for usb-storage.  When\nthe disconnect routine is called, all commands and reset delays are\nallowed to complete normally until after scsi_remove_host() returns.\nThis means that the commands needed for an orderly shutdown will be\nsent through to the device.\n\nUnlike before, the driver will now execute every command that it\naccepts.  Hence there\u0027s no need for special code to catch unexecuted\ncommands and fail them.\n\nThe new sequence of events when disconnect runs goes as follows:\n\n\tIf the device is truly unplugged, set the DISCONNECTING\n\tflag so we won\u0027t try to access it any more.\n\n\tIf the SCSI-scanning thread hasn\u0027t started up yet, prevent\n\tit from doing anything by setting the new DONT_SCAN flag.\n\tThen wake it up and wait for it to terminate.\n\n\tRemove the SCSI host.  This unbinds the upper-level drivers,\n\tdoing an orderly shutdown.  Commands sent to quiesce the\n\tdevice will be transmitted normally, unless the device is\n\tunplugged.\n\n\tSet the DISCONNECTING flag so that we won\u0027t accept any new\n\tcommands that might get submitted (there aren\u0027t supposed to be\n\tany) and we won\u0027t try to access the device for resets.\n\n\tTell the control thread to exit by waking it up with no\n\tpending command, and wait for it to terminate.\n\n\tGo on to do all the other normal stuff: releasing resources,\n\tfreeing memory, and so on.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9da82bd4649334817ef0e752a69eb99051645dad",
      "tree": "490d3696b4a266e9b41a3624cdce4222057b7549",
      "parents": [
        "473bca94ba432b3c194e6fa315d81d8ac7670a4f"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Thu May 08 11:54:37 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:54 2008 -0700"
      },
      "message": "USB: implement \"soft\" unbinding\n\nThis patch (as1091) changes the way usbcore handles interface\nunbinding.  If the interface\u0027s driver supports \"soft\" unbinding (a new\nflag in the driver structure) then in-flight URBs are not cancelled\nand endpoints are not disabled.  Instead the driver is allowed to\ncontinue communicating with the device (although of course it should\nstop before its disconnect routine returns).\n\nThe purpose of this change is to allow drivers to do a clean shutdown\nwhen they get unbound from a device that is still plugged in.  Killing\nall the URBs and disabling the endpoints before calling the driver\u0027s\ndisconnect method doesn\u0027t give the driver any control over what\nhappens, and it can leave devices in indeterminate states.  For\nexample, when usb-storage unbinds it doesn\u0027t want to stop while in the\nmiddle of transmitting a SCSI command.\n\nThe soft_unbind flag is added because in the past, a number of drivers\nhave experienced problems related to ongoing I/O after their disconnect\nroutine returned.  Hence \"soft\" unbinding is made available only to\ndrivers that claim to support it.\n\nThe patch also replaces \"interface_to_usbdev(intf)\" with \"udev\" in a\ncouple of places, a minor simplification.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "473bca94ba432b3c194e6fa315d81d8ac7670a4f",
      "tree": "65bb05ec5ec9bef5751bab78cb2fdc7d034e441d",
      "parents": [
        "7119e3c37fbf7c27adb5929f344c826ecb8c7859"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon May 05 21:25:33 2008 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:54 2008 -0700"
      },
      "message": "USB: isp1760-hcd.c: make 2 functions static\n\nThis patch makes the following needlessly global functions static:\n- enqueue_an_ATL_packet()\n- enqueue_an_INT_packet()\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Sebastian Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7119e3c37fbf7c27adb5929f344c826ecb8c7859",
      "tree": "7218b937cce2fa4b8a87ae1c682552381c906496",
      "parents": [
        "7e4d6c387994294ac8198b624ee71e75de60dfd2"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Thu May 01 15:36:13 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:53 2008 -0700"
      },
      "message": "usb-storage: change remaining semaphore to completion\n\nThis patch (as1090) converts the one remaining semaphore in\nusb-storage into a completion.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Matthew Dharm \u003cmdharm-usb@one-eyed-alien.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7e4d6c387994294ac8198b624ee71e75de60dfd2",
      "tree": "09c8c519a6284f79c38f49347eb7fdf44d8de13e",
      "parents": [
        "2742fd8899328345d97a3443fb787b051b79ebae"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Thu May 01 15:35:18 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:53 2008 -0700"
      },
      "message": "usb-storage: separate dynamic flags from fixed flags\n\nThis patch (as1089) separates out the dynamic atomic bitflags and the\nstatic bitfields in usb-storage.  Until now the two sorts of flags\nhave been sharing the same word; this has always been awkward.\n\nTo help prevent possible confusion, the two new fields each have a\ndifferent name from the original.  us-\u003efflags contains the fixed\nbitfields (mostly taken from the USB ID table in unusual_devs.h), and\nus-\u003edflags contains the dynamic atomic bitflags (used with set_bit,\ntest_bit, and so on).\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Matthew Dharm \u003cmdharm-usb@one-eyed-alien.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "2742fd8899328345d97a3443fb787b051b79ebae",
      "tree": "d64405d61cbfed5f44e62524089cd45ba52d3aa0",
      "parents": [
        "4330354f7660828d97834598633054b413f6264d"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Apr 29 14:45:15 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:53 2008 -0700"
      },
      "message": "USB: io_ti: FIrst cut at a big clean up\n\nSort out the insane naming like \"OperationalFirmwareVersion\" which seems\n\tdesigned to cause formatting problems and RSI\nMerge various common code together\nClean up the pointlessly complex and spread about MCR handling\n\nThis is really just the low hanging fruit.\n\nNeeds lots of testing before it goes upstream so testers and reports\nappreciated\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4330354f7660828d97834598633054b413f6264d",
      "tree": "807426b75086e3e4e2670ef60577e366f3eed843",
      "parents": [
        "f2835219ed5e29ec959a0e635af4339d6174b2a7"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Apr 28 11:07:31 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:52 2008 -0700"
      },
      "message": "USB: combine hub_quiesce and hub_stop\n\nThis patch (as1083) combines hub_quiesce() and hub_stop() into a\nsingle routine.  There\u0027s no point keeping them separate since they are\nusually called together.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f2835219ed5e29ec959a0e635af4339d6174b2a7",
      "tree": "0963c4ec65eb9b01e03a7193a6ccc30d7a5c4043",
      "parents": [
        "948fea37dcebfef8f0f2faf00930e7ec7e756e07"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Apr 28 11:07:17 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:52 2008 -0700"
      },
      "message": "USB: combine hub_activate and hub_restart\n\nThis patch (as1071) combines hub_activate() and hub_restart() into a\nsingle routine.  There\u0027s no point keeping them separate, since they\nare always called together.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "948fea37dcebfef8f0f2faf00930e7ec7e756e07",
      "tree": "aa75e31943da805bb613f7738276e352ec10cea0",
      "parents": [
        "8808f00c7adfc8dc0b797c34ec03490b237fce4e"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Apr 28 11:07:07 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:52 2008 -0700"
      },
      "message": "USB: optimize port debouncing during hub activation\n\nThis patch (as1082) makes a small optimization to the way the hub\ndriver carries out port debouncing immediately after a hub is\nactivated (i.e., initialized, reset, or resumed).  If any port-change\nstatuses are observed, the code will delay for a minimal debounce\nperiod -- thereby making a good start at debouncing all the ports at\nonce.\n\nIf this wasn\u0027t sufficient then khubd will debounce any port that still\nrequires attention.  But in most cases it should suffice; it\u0027s rare\nfor a device to need more than a minimal debounce delay.  (In the\ncases of hub initialization or reset even that is most likely not\nneeded, since any devices plugged in at such times have probably been\nattached for a while.)\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8808f00c7adfc8dc0b797c34ec03490b237fce4e",
      "tree": "0062a4de8f9957faa51b96bb17351c3ca48c41a1",
      "parents": [
        "6ee0b270c733027b2b716b1c80b9aced41e08d20"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Apr 28 11:06:55 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:51 2008 -0700"
      },
      "message": "USB: try to salvage lost power sessions\n\nThis patch (as1073) adds to khubd a way to recover from power-session\ninterruption caused by transient connect-change or enable-change\nevents.  After the debouncing period, khubd attempts to do a\nUSB-Persist-style reset or reset-resume.  If it works, the connection\nwill remain unscathed.\n\nThe upshot is that we will be more immune to noise caused by EMI.  The\ngrace period is on the order of 100 ms, so this won\u0027t permit recovery\nfrom the \"accidentally knocked the USB cable out of its socket\" type\nof event, but it\u0027s a start.\n\nAs an added bonus, if a device was suspended when the system goes to\nsleep then we no longer need to check for power-session interruptions\nwhen the system wakes up.  Khubd will naturally see the status change\nwhile processing the device\u0027s parent hub and will do the right thing.\n\nThe remote_wakeup() routine is changed; now it expects the caller to\nacquire the device lock rather than acquiring the lock itself.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6ee0b270c733027b2b716b1c80b9aced41e08d20",
      "tree": "8ad1db0a6bb5410a75381e98cf1ecfe390d6322d",
      "parents": [
        "9e5eace734a7b4e96a4ba4cf1f85622446e95e17"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Apr 28 11:06:42 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:50 2008 -0700"
      },
      "message": "USB: simplify hub_restart() logic\n\nThis patch (as1081) straightens out the logic of the hub_restart()\nroutine.  Each port of the hub is scanned and the driver makes sure\nthat ports which are supposed to be disabled really _are_ disabled.\nAny ports with a significant change in status are flagged in\nhub-\u003echange_bits, so that khubd can focus on them without the need to\nscan all the ports a second time -- which means the hub-\u003eactivating\nflag is no longer needed.\n\nAlso, it is now recognized explicitly that the only reason for\nresuming a port which was not suspended is to carry out a reset-resume\noperation, which happens only in a non-CONFIG_USB_SUSPEND setting.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9e5eace734a7b4e96a4ba4cf1f85622446e95e17",
      "tree": "e53a657ce7dda2dca72ad4157331f61cba3e0ab5",
      "parents": [
        "24618b0cd42f936cda461bdf6144670a5c925178"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jun 10 14:59:43 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:48 2008 -0700"
      },
      "message": "USB: revert \"don\u0027t use reset-resume if drivers don\u0027t support it\"\n\nThis reverts Linus\u0027s previous patch that is in mainline to make it\neasier for the USB hub.c patches that follow this to apply cleanly.  The\nfunctionality will be added back in a followon patch in this series.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "24618b0cd42f936cda461bdf6144670a5c925178",
      "tree": "dfcc0d831eb24f7466bbb3ebb2a69b3d93622120",
      "parents": [
        "b01b03f3ad82b4293f6ca4da9b2692b6a377c609"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Apr 28 11:06:28 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:47 2008 -0700"
      },
      "message": "USB: debounce before unregistering\n\nThis patch (as1080) makes a significant change to the way khubd\nhandles port connect-change and enable-change events.  Both types of\nevent are now debounced, and the debouncing is carried out _before_ an\nexisting usb_device is unregistered, instead of afterward.\n\nThis means that drivers will have to deal with longer runs of errors\nwhen a device is unplugged, but they are supposed to be prepared for\nthat in any case.\n\nThe advantage is that when an enable-change occurs (caused for example\nby electromagnetic interference), the debouncing period will provide\ntime for the cause of the problem to die away.  A simple port reset\n(added in a forthcoming patch) will then allow us to recover from the\nfault.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b01b03f3ad82b4293f6ca4da9b2692b6a377c609",
      "tree": "9d3ab94600f6fa0491256ab1ac0fd824e55ee880",
      "parents": [
        "bd2c784595e3dd551c2b3aa4167657bcc802f598"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Apr 28 11:06:11 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:47 2008 -0700"
      },
      "message": "USB: add new routine for checking port-resume type\n\nThis patch (as1070) creates a new subroutine to check whether a device\ncan be resumed.  This code is needed even when CONFIG_USB_SUSPEND\nisn\u0027t set, because devices do suspend themselves when the root hub\n(and hence the entire bus) is suspended, and power sessions can get\nlost during a system sleep even without individual port suspends.\n\nThe patch also fixes a loose end in USB-Persist reset-resume handling.\nWhen a low- or full-speed device is attached to an EHCI\u0027s companion\ncontroller, the port handoff during resume will cause the companion\nport\u0027s connect-status-change feature to be set.  If that flag isn\u0027t\ncleared, the port-reset code will think it indicates that the device\nhas been unplugged and the reset-resume will fail.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "bd2c784595e3dd551c2b3aa4167657bcc802f598",
      "tree": "0924ab6e5d90922328d4cf71bc6f6509fdf5e29f",
      "parents": [
        "0031a06e2f07ab0d1bc98c31dbb6801f95f4bf01"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Thu May 01 20:52:57 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:47 2008 -0700"
      },
      "message": "USB: use get_unaligned_* helpers for kl5kusb105 driver\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0031a06e2f07ab0d1bc98c31dbb6801f95f4bf01",
      "tree": "4b939fd3ffec09620100eeaa4e33fed373aaf2d5",
      "parents": [
        "7071a3ce0ca058ad2a9e3e8c33f30fb0bce62005"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri May 02 06:02:41 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:47 2008 -0700"
      },
      "message": "USB: usb dev_set_name() instead of dev-\u003ebus_id\n\nThe bus_id field is going away, use the dev_set_name() function\nto set it properly.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7071a3ce0ca058ad2a9e3e8c33f30fb0bce62005",
      "tree": "6e269adae8630b505a69efd0b8351440ef6b69b8",
      "parents": [
        "36aa81172edba8a3a8ecedbd1f56d41774ce2e08"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri May 02 06:02:41 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:46 2008 -0700"
      },
      "message": "USB: usb dev_name() instead of dev-\u003ebus_id\n\nThe bus_id field is going away, use the dev_name() function instead.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "36aa81172edba8a3a8ecedbd1f56d41774ce2e08",
      "tree": "a42c01b85bcd2298a8673c16e6b7f10962c5f46f",
      "parents": [
        "1b26da1510c02a2dac33c0ea48904256dcec4617"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jul 01 10:45:51 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:46 2008 -0700"
      },
      "message": "USB: revert \"don\u0027t lose disconnections during suspend\"\n\nThis reverts Alan\u0027s previous patch so that the recent Hub changes will\napply cleanly.  The above mentioned patch was needed for 2.6.26 to work\nproperly.\n\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Lukas Hejtmanek \u003cxhejtman@ics.muni.cz\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1b26da1510c02a2dac33c0ea48904256dcec4617",
      "tree": "374c8aa6f6283199e51ad83eff6dd239fd543060",
      "parents": [
        "c5e46007e9737b77a79ec79ed95262c0ce996d6a"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jul 02 12:46:22 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:46 2008 -0700"
      },
      "message": "USB: handle pci_name() being const\n\nThis changes usb_create_hcd() to be able to handle the fact that\npci_name() has changed to a constant string.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c5e46007e9737b77a79ec79ed95262c0ce996d6a",
      "tree": "2202abacb8e784ebaacec5e557bc1a2ca97b82fd",
      "parents": [
        "e89970aa93b06d0605a488e74af3b0a2a80e03b5"
      ],
      "author": {
        "name": "Andrew Lunn",
        "email": "andrew@lunn.ch",
        "time": "Thu Apr 24 19:36:39 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 15:15:46 2008 -0700"
      },
      "message": "USB: storage: UNUSUAL_DEVS() for PanDigital Picture frame.\n\nSigned-off-by: Andrew Lunn \u003candrew@lunn.ch\u003e\nSigned-off-by: Matthew Dharm \u003cmdharm-usb@one-eyed-alien.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e89970aa93b06d0605a488e74af3b0a2a80e03b5",
      "tree": "fb00c26656b053281a83f4feb2313173c8faf420",
      "parents": [
        "443bd1c4ddab9d2144f4c9b85e0abccf2d93423f",
        "5547cd0ae8b46db9a084505239294eed9b8c8e2d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 11:29:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 11:29:52 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  netfilter: nf_conntrack_sctp: fix sparse warnings\n  netfilter: nf_nat_sip: c\u003d is optional for session\n  netfilter: xt_TCPMSS: collapse tcpmss_reverse_mtu{4,6} into one function\n  netfilter: nfnetlink_log: send complete hardware header\n  netfilter: xt_time: fix time\u0027s time_mt()\u0027s use of do_div()\n  netfilter: accounting rework: ct_extend + 64bit counters (v4)\n  netlink: add NLA_PUT_BE64 macro\n  netfilter: nf_nat_core: eliminate useless find_appropriate_src for IP_NAT_RANGE_PROTO_RANDOM\n  hdlcdrv: Fix CRC calculation.\n  Revert \"pkt_sched: Make default qdisc nonshared-multiqueue safe.\"\n  net: In __netif_schedule() use WARN_ON instead of BUG_ON\n  net: Improve simple_tx_hash().\n  pkt_sched: Remove unused variable skb in dev_deactivate_queue function.\n  sunhme: Remove stop/wake TX queue calls in set-multicast-list handler.\n  ucc_geth: do not touch net queue in adjust_link phylib callback\n  gianfar: do not touch net queue in adjust_link phylib callback\n  atl1: Do not wake queue before queue has been started.\n"
    },
    {
      "commit": "443bd1c4ddab9d2144f4c9b85e0abccf2d93423f",
      "tree": "fea92f2fffa2d6fb99b224203e2b942a6f297561",
      "parents": [
        "72a73693aac5ae82850cedc69fa5d264ca977c13"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Jul 21 09:27:18 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 10:43:26 2008 -0700"
      },
      "message": "pci kernel-doc fatal error\n\nFix kernel-doc comments so that they don\u0027t produce errors.\nAlso cut some extraneous copy-paste text.\n\nError(linhead//drivers/pci/pci.c:1133): duplicate section name \u0027Description\u0027\nError(linhead//drivers/pci/pci.c:1189): duplicate section name \u0027Description\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "72a73693aac5ae82850cedc69fa5d264ca977c13",
      "tree": "80ab4bad93a2204ff264c0b07b63449a91410585",
      "parents": [
        "b7e6f62fe259187f2578d00960ef1b0e6ff6afd5",
        "2e2dcc7631e331cf2e8396ce452e7f01e35f1182"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 10:34:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 10:34:25 2008 -0700"
      },
      "message": "Merge branch \u0027x86/for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86/for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (160 commits)\n  x86: remove extra calling to get ext cpuid level\n  x86: use setup_clear_cpu_cap() when disabling the lapic\n  KVM: fix exception entry / build bug, on 64-bit\n  x86: add unknown_nmi_panic kernel parameter\n  x86, VisWS: turn into generic arch, eliminate leftover files\n  x86: add -\u003epre_time_init to x86_quirks\n  x86: extend and use x86_quirks to clean up NUMAQ code\n  x86: introduce x86_quirks\n  x86: improve debug printout: add target bootmem range in early_res_to_bootmem()\n  Subject: devmem, x86: fix rename of CONFIG_NONPROMISC_DEVMEM\n  x86: remove arch_get_ram_range\n  x86: Add a debugfs interface to dump PAT memtype\n  x86: Add a arch directory for x86 under debugfs\n  x86: i386: reduce boot fixmap space\n  i386/xen: add proper unwind annotations to xen_sysenter_target\n  x86: reduce force_mwait visibility\n  x86: reduce forbid_dac\u0027s visibility\n  x86: fix two modpost warnings\n  x86: check function status in EDD boot code\n  x86_64: ia32_signal.c: remove signal number conversion\n  ...\n"
    },
    {
      "commit": "b7e6f62fe259187f2578d00960ef1b0e6ff6afd5",
      "tree": "796fd3c878a2f8d8d55ea1e52ef236742a48c3dd",
      "parents": [
        "8a392625b665c676a77c62f8608d10ff430bcb83",
        "d41e26b901111f4e540aa2c27ec7a1681c782be9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 10:30:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 10:30:10 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm:\n  dm crypt: add merge\n  dm table: remove merge_bvec sector restriction\n  dm: linear add merge\n  dm: introduce merge_bvec_fn\n  dm snapshot: use per device mempools\n  dm snapshot: fix race during exception creation\n  dm snapshot: track snapshot reads\n  dm mpath: fix test for reinstate_path\n  dm mpath: return parameter error\n  dm io: remove struct padding\n  dm log: make dm_dirty_log init and exit static\n  dm mpath: free path selector on invalid args\n"
    },
    {
      "commit": "8a392625b665c676a77c62f8608d10ff430bcb83",
      "tree": "4000a65d61baed73200e47f91dea5263ed16edd0",
      "parents": [
        "519f0141f1c42e2b8b59c7dea005cbf6095358e8",
        "4b80991c6cb9efa607bc4fd6f3ecdf5511c31bb0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 10:29:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 10:29:12 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://neil.brown.name/md\n\n* \u0027for-linus\u0027 of git://neil.brown.name/md: (52 commits)\n  md: Protect access to mddev-\u003edisks list using RCU\n  md: only count actual openers as access which prevent a \u0027stop\u0027\n  md: linear: Make array_size sector-based and rename it to array_sectors.\n  md: Make mddev-\u003earray_size sector-based.\n  md: Make super_type-\u003erdev_size_change() take sector-based sizes.\n  md: Fix check for overlapping devices.\n  md: Tidy up rdev_size_store a bit:\n  md: Remove some unused macros.\n  md: Turn rdev-\u003esb_offset into a sector-based quantity.\n  md: Make calc_dev_sboffset() return a sector count.\n  md: Replace calc_dev_size() by calc_num_sectors().\n  md: Make update_size() take the number of sectors.\n  md: Better control of when do_md_stop is allowed to stop the array.\n  md: get_disk_info(): Don\u0027t convert between signed and unsigned and back.\n  md: Simplify restart_array().\n  md: alloc_disk_sb(): Return proper error value.\n  md: Simplify sb_equal().\n  md: Simplify uuid_equal().\n  md: sb_equal(): Fix misleading printk.\n  md: Fix a typo in the comment to cmd_match().\n  ...\n"
    },
    {
      "commit": "519f0141f1c42e2b8b59c7dea005cbf6095358e8",
      "tree": "980e39f30a8b8677916a9bddee675ed0d0123d81",
      "parents": [
        "f8b71a3a92d69cb1c9c2162f9235d3dd550e4aa0",
        "908cf4b925e419bc74f3297b2f0e51d6f8a81da2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 10:27:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 10:27:31 2008 -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: (48 commits)\n  Input: add switch for dock events\n  Input: add microphone insert switch definition\n  Input: i8042 - add Arima-Rioworks HDAMB board to noloop list\n  Input: sgi_btns - add support for SGI Indy volume buttons\n  Input: add option to disable HP SDC driver\n  Input: serio - trivial documentation fix\n  Input: add new serio driver for Xilinx XPS PS2 IP\n  Input: add driver for Tabletkiosk Sahara TouchIT-213 touchscreen\n  Input: new driver for SGI O2 volume buttons\n  Input: yealink - reliably kill urbs\n  Input: q40kbd - make q40kbd_lock static\n  Input: gtco - eliminate early return\n  Input: i8042 - add Dritek quirk for Acer Aspire 5720\n  Input: usbtouchscreen - ignore eGalax screens supporting HID protocol\n  Input: i8042 - add Medion NAM 2070 to noloop blacklist\n  Input: i8042 - add Gericom Bellagio to nomux blacklist\n  Input: i8042 - add Acer Aspire 1360 to nomux blacklist\n  Input: hp_sdc_mlc.c - make a struct static\n  Input: hil_mlc.c - make code static\n  Input: wistron - generate normal key event if bluetooth or wifi not present\n  ...\n"
    },
    {
      "commit": "5547cd0ae8b46db9a084505239294eed9b8c8e2d",
      "tree": "0ce92a2050c5b6bd8dfe50f6942fbd79da9cbc32",
      "parents": [
        "c71529e42ce39c167dc53430cb8f3d5634af77df"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Jul 21 10:03:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:11:02 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_sctp: fix sparse warnings\n\nIntroduced by a258860e (netfilter: ctnetlink: add full support for SCTP to ctnetlink):\n\nnet/netfilter/nf_conntrack_proto_sctp.c:483:2: warning: cast from restricted type\nnet/netfilter/nf_conntrack_proto_sctp.c:483:2: warning: incorrect type in argument 1 (different base types)\nnet/netfilter/nf_conntrack_proto_sctp.c:483:2:    expected unsigned int [unsigned] [usertype] x\nnet/netfilter/nf_conntrack_proto_sctp.c:483:2:    got restricted unsigned int const \u003cnoident\u003e\nnet/netfilter/nf_conntrack_proto_sctp.c:483:2: warning: cast from restricted type\nnet/netfilter/nf_conntrack_proto_sctp.c:483:2: warning: cast from restricted type\nnet/netfilter/nf_conntrack_proto_sctp.c:483:2: warning: cast from restricted type\nnet/netfilter/nf_conntrack_proto_sctp.c:483:2: warning: cast from restricted type\nnet/netfilter/nf_conntrack_proto_sctp.c:487:2: warning: cast from restricted type\nnet/netfilter/nf_conntrack_proto_sctp.c:487:2: warning: incorrect type in argument 1 (different base types)\nnet/netfilter/nf_conntrack_proto_sctp.c:487:2:    expected unsigned int [unsigned] [usertype] x\nnet/netfilter/nf_conntrack_proto_sctp.c:487:2:    got restricted unsigned int const \u003cnoident\u003e\nnet/netfilter/nf_conntrack_proto_sctp.c:487:2: warning: cast from restricted type\nnet/netfilter/nf_conntrack_proto_sctp.c:487:2: warning: cast from restricted type\nnet/netfilter/nf_conntrack_proto_sctp.c:487:2: warning: cast from restricted type\nnet/netfilter/nf_conntrack_proto_sctp.c:487:2: warning: cast from restricted type\nnet/netfilter/nf_conntrack_proto_sctp.c:532:42: warning: incorrect type in assignment (different base types)\nnet/netfilter/nf_conntrack_proto_sctp.c:532:42:    expected restricted unsigned int \u003cnoident\u003e\nnet/netfilter/nf_conntrack_proto_sctp.c:532:42:    got unsigned int\nnet/netfilter/nf_conntrack_proto_sctp.c:534:39: warning: incorrect type in assignment (different base types)\nnet/netfilter/nf_conntrack_proto_sctp.c:534:39:    expected restricted unsigned int \u003cnoident\u003e\nnet/netfilter/nf_conntrack_proto_sctp.c:534:39:    got unsigned int\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c71529e42ce39c167dc53430cb8f3d5634af77df",
      "tree": "4d7d97e2f35b72ee5da618ffdf60eb53e58350d8",
      "parents": [
        "db1a75bdcc1766dc7e1fae9201ae287dcbcb6c66"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Jul 21 10:03:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:11:02 2008 -0700"
      },
      "message": "netfilter: nf_nat_sip: c\u003d is optional for session\n\nAccording to RFC2327, the connection information is optional\nin the session description since it can be specified in the\nmedia description instead.\n\nMy provider does exactly that and does not provide any connection\ninformation in the session description.  As a result the new\nkernel drops all invite responses.\n\nThis patch makes it optional as documented.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "db1a75bdcc1766dc7e1fae9201ae287dcbcb6c66",
      "tree": "6cc8bd2324d762a177e6e31d1cda7f28ddcc1a5f",
      "parents": [
        "72961ecf84d67d6359a1b30f9b2a8427f13e1e71"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Mon Jul 21 10:02:59 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:11:01 2008 -0700"
      },
      "message": "netfilter: xt_TCPMSS: collapse tcpmss_reverse_mtu{4,6} into one function\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72961ecf84d67d6359a1b30f9b2a8427f13e1e71",
      "tree": "531aeb470c069d4ecd91a4080dc820308d84fc9d",
      "parents": [
        "280763c053fee297d95b474f2c145990670371e6"
      ],
      "author": {
        "name": "Eric Leblond",
        "email": "eric@inl.fr",
        "time": "Mon Jul 21 10:02:35 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:11:00 2008 -0700"
      },
      "message": "netfilter: nfnetlink_log: send complete hardware header\n\nThis patch adds some fields to NFLOG to be able to send the complete\nhardware header with all necessary informations.\nIt sends to userspace:\n * the type of hardware link\n * the lenght of hardware header\n * the hardware header\n\nSigned-off-by: Eric Leblond \u003ceric@inl.fr\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "280763c053fee297d95b474f2c145990670371e6",
      "tree": "daa5d6b0107318e1fb0fe4c7184c77ab0d40b6ff",
      "parents": [
        "584015727a3b88b46602b20077b46cd04f8b4ab3"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Jul 21 10:02:12 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:10:59 2008 -0700"
      },
      "message": "netfilter: xt_time: fix time\u0027s time_mt()\u0027s use of do_div()\n\nFix netfilter xt_time\u0027s time_mt()\u0027s use of do_div() on an s64 by using\ndiv_s64() instead.\n\nThis was introduced by patch ee4411a1b1e0b679c99686629b5eab5a072ce49f\n(\"[NETFILTER]: x_tables: add xt_time match\").\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "584015727a3b88b46602b20077b46cd04f8b4ab3",
      "tree": "a9b4ec18e2181e03ee24b59b30f7408bcbcf140c",
      "parents": [
        "07a7c1070ed382ad4562e3a0d453fd2001d92f7b"
      ],
      "author": {
        "name": "Krzysztof Piotr Oledzki",
        "email": "ole@ans.pl",
        "time": "Mon Jul 21 10:01:34 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:10:58 2008 -0700"
      },
      "message": "netfilter: accounting rework: ct_extend + 64bit counters (v4)\n\nInitially netfilter has had 64bit counters for conntrack-based accounting, but\nit was changed in 2.6.14 to save memory. Unfortunately in-kernel 64bit counters are\nstill required, for example for \"connbytes\" extension. However, 64bit counters\nwaste a lot of memory and it was not possible to enable/disable it runtime.\n\nThis patch:\n - reimplements accounting with respect to the extension infrastructure,\n - makes one global version of seq_print_acct() instead of two seq_print_counters(),\n - makes it possible to enable it at boot time (for CONFIG_SYSCTL/CONFIG_SYSFS\u003dn),\n - makes it possible to enable/disable it at runtime by sysctl or sysfs,\n - extends counters from 32bit to 64bit,\n - renames ip_conntrack_counter -\u003e nf_conn_counter,\n - enables accounting code unconditionally (no longer depends on CONFIG_NF_CT_ACCT),\n - set initial accounting enable state based on CONFIG_NF_CT_ACCT\n - removes buggy IPCT_COUNTER_FILLING event handling.\n\nIf accounting is enabled newly created connections get additional acct extend.\nOld connections are not changed as it is not possible to add a ct_extend area\nto confirmed conntrack. Accounting is performed for all connections with\nacct extend regardless of a current state of \"net.netfilter.nf_conntrack_acct\".\n\nSigned-off-by: Krzysztof Piotr Oledzki \u003cole@ans.pl\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "07a7c1070ed382ad4562e3a0d453fd2001d92f7b",
      "tree": "0caf21395d1adf879888a355ffcb22c60a7545ae",
      "parents": [
        "0dbff689c2f299e8f63911247925f2728d087688"
      ],
      "author": {
        "name": "Krzysztof Piotr Oledzki",
        "email": "ole@ans.pl",
        "time": "Mon Jul 21 10:01:14 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:10:58 2008 -0700"
      },
      "message": "netlink: add NLA_PUT_BE64 macro\n\nAdd NLA_PUT_BE64 macro required for 64bit counters in netfilter\n\nSigned-off-by: Krzysztof Piotr Oledzki \u003cole@ans.pl\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0dbff689c2f299e8f63911247925f2728d087688",
      "tree": "77a0b4db11d438315e2ef97ce117bbe532774600",
      "parents": [
        "ae6134bdf3197206fba95563d755d2fa50d90ddd"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Mon Jul 21 10:00:51 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:10:57 2008 -0700"
      },
      "message": "netfilter: nf_nat_core: eliminate useless find_appropriate_src for IP_NAT_RANGE_PROTO_RANDOM\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ae6134bdf3197206fba95563d755d2fa50d90ddd",
      "tree": "0d161e5c7fdcef4a3b924be0a6fd1eaec2a81b50",
      "parents": [
        "d3678b463df73f5060d7420915080e19baeb379b"
      ],
      "author": {
        "name": "Micah Dowty",
        "email": "micah@navi.cx",
        "time": "Mon Jul 21 09:59:09 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:10:56 2008 -0700"
      },
      "message": "hdlcdrv: Fix CRC calculation.\n\nThis is a trivial patch against the hdlcdrv module that fixes its CRC\ncalculation. The finished CRC was overwriting the first two bytes of\neach packet rather than being appended to the end.\n\nI\u0027ve tested this with 2.6.8 and 2.6.10-rc1, but hdlcdrv hasn\u0027t changed\nmuch recently so it should work with many other kernel versions.\n\nSigned-off-by: Micah Dowty \u003cmicah@navi.cx\u003e\nAcked-by: Thomas Sailer \u003ct.sailer@alumni.ethz.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d3678b463df73f5060d7420915080e19baeb379b",
      "tree": "4f4fc3e49bb0a9d21b9280f1c1a990eb03651564",
      "parents": [
        "867d79fb9a4d5929ad8335c896fcfe11c3b2ef14"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 09:56:13 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:10:50 2008 -0700"
      },
      "message": "Revert \"pkt_sched: Make default qdisc nonshared-multiqueue safe.\"\n\nThis reverts commit a0c80b80e0fb48129e4e9d6a9ede914f9ff1850d.\n\nAfter discussions with Jamal and Herbert on netdev, we should\nprovide at least minimal prioritization at the qdisc level\neven in multiqueue situations.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "867d79fb9a4d5929ad8335c896fcfe11c3b2ef14",
      "tree": "b33fe42bfc1e73b9e0f65baf9f02ddc437e6dc83",
      "parents": [
        "b6b2fed1f4802b8fcc9d7548a8f785225d38f9a3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 09:54:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:10:49 2008 -0700"
      },
      "message": "net: In __netif_schedule() use WARN_ON instead of BUG_ON\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b6b2fed1f4802b8fcc9d7548a8f785225d38f9a3",
      "tree": "eebdc34112d617524b762c585b79b2eaab3386ae",
      "parents": [
        "c3ee84163e5bc0dc2e1ccf1d3fc412debca73bab"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 09:48:06 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 10:10:48 2008 -0700"
      },
      "message": "net: Improve simple_tx_hash().\n\nBased upon feedback from Eric Dumazet and Andi Kleen.\n\nCure several deficiencies in simple_tx_hash() by using\njhash + reciprocol multiply.\n\n1) Eliminates expensive modulus operation.\n\n2) Makes hash less attackable by using random seed.\n\n3) Eliminates endianness hash distribution issues.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f8b71a3a92d69cb1c9c2162f9235d3dd550e4aa0",
      "tree": "d0853186f33314a6e45903876d0e94d1619fcca9",
      "parents": [
        "42a77a1b8fe4fd78cf8d8fccbaac918bbe888192",
        "e4f25060b87a627f5cda84b8134911d43c919458"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 09:40:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 09:40:26 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: (44 commits)\n  sparc: Remove Sparc\u0027s asm-offsets for sclow.S\n  sparc64: Update defconfig.\n  sparc64: Add Niagara2 RNG driver.\n  sparc64: Add missing hypervisor service group numbers.\n  sparc64: Remove 4MB and 512K base page size options.\n  sparc64: Convert to generic helpers for IPI function calls.\n  sparc: Use new \u0027%pS\u0027 infrastructure to print symbols.\n  sparc32: fix init.c allnoconfig build error\n  sparc64: Config category \"Processor type and features\" absent\n  sparc: arch/sparc/kernel/apc.c to unlocked_ioctl\n  sparc: join the remaining header files\n  sparc: merge header files with trivial differences\n  sparc: when header files are equal use asm-sparc version\n  sparc: copy sparc64 specific files to asm-sparc\n  sparc: Merge asm-sparc{,64}/asi.h\n  sparc: export openprom.h to userspace\n  sparc: Merge asm-sparc{,64}/types.h\n  sparc: Merge asm-sparc{,64}/termios.h\n  sparc: Merge asm-sparc{,64}/termbits.h\n  sparc: Merge asm-sparc{,64}/setup.h\n  ...\n"
    },
    {
      "commit": "42a77a1b8fe4fd78cf8d8fccbaac918bbe888192",
      "tree": "ab5d01e1c9dbb4612321c03c0482563f4fb68687",
      "parents": [
        "14b395e35d1afdd8019d11b92e28041fad591b71"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Mon Jul 21 17:48:59 2008 +0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 21 09:39:15 2008 -0700"
      },
      "message": "Fix istallion build failure\n\nCommits b02f5ad6a3ff5a1ee2a7b8ec6eee338de553b060 (\"istallion: use\ntty_port\") and a352def21a642133758b868c71bee12ab34ad5c5 (\"tty: Ldisc\nrevamp\") broke the istallion driver.\n\nFix the compile error and silence a warning.\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c3ee84163e5bc0dc2e1ccf1d3fc412debca73bab",
      "tree": "9b6319d2abab9ab6e4692dfd71ff4c38dfe7f997",
      "parents": [
        "fd24c4af6e82231391fa09875ae6378fa1399f0f"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Mon Jul 21 09:18:07 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 09:18:07 2008 -0700"
      },
      "message": "pkt_sched: Remove unused variable skb in dev_deactivate_queue function.\n\nRemoved unused variable \u0027skb\u0027 in the dev_deactivate_queue function\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd24c4af6e82231391fa09875ae6378fa1399f0f",
      "tree": "0fddd1b5b1fe7e13013e61e0e050d2751b8f1168",
      "parents": [
        "ebbdbd7c02f4f8dea84e2956aa942bd18e1ddf93"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 08:34:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 08:34:49 2008 -0700"
      },
      "message": "sunhme: Remove stop/wake TX queue calls in set-multicast-list handler.\n\nBased upon a bug report by Alexander Beregalov and commentary\nfrom Ben Hutchings.\n\nThese are totally unnecessary, in particular because this\ndriver\u0027s -\u003ehard_start_xmit() handler takes the same driver\nspinlock that the set-multicast-list handler uses.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebbdbd7c02f4f8dea84e2956aa942bd18e1ddf93",
      "tree": "b44dad848bb2c88d7f88cb071d5a36cf7c0f8bdc",
      "parents": [
        "afc079465e991ffb7fe197d1ad80eb8140e2c341"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Jul 21 08:30:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 08:30:36 2008 -0700"
      },
      "message": "ucc_geth: do not touch net queue in adjust_link phylib callback\n\nIf the net queue has not been started, we\u0027ll get this nice oops\nand non-working ethernet:\n\n------------[ cut here ]------------\nKernel BUG at c01f4648 [verbose debug info unavailable]\nOops: Exception in kernel mode, sig: 5 [#1]\nMPC836x RDK\nModules linked in:\nNIP: c01f4648 LR: c01c0a10 CTR: c01c08e4\nREGS: cf839e40 TRAP: 0700   Not tainted  (2.6.26-05254-gc7b9969)\nMSR: 00021032 \u003cME,IR,DR\u003e  CR: 22042044  XER: 00000000\nTASK \u003d cf828c30[4] \u0027events/0\u0027 THREAD: cf838000\nGPR00: c01c0a10 cf839ef0 cf828c30 c035ceb0 cf8469a0 00000064 00000000 00000000\nGPR08: c035ceb0 00000001 00000001 cf99c280 22044044 7ca81020 0fffc000 00000000\nGPR16: 0fff2544 0fff63c0 00000000 0fff78e0 0ffa5580 00000004 00000000 00000000\nGPR24: 02082000 cf9d0000 d1068000 00009032 cf846800 cf846b80 00000001 00000014\nNIP [c01f4648] __netif_schedule+0x28/0x8c\nLR [c01c0a10] adjust_link+0x12c/0x1e4\nCall Trace:\n[cf839ef0] [c0380f50] 0xc0380f50 (unreliable)\n[cf839f10] [c01c0a10] adjust_link+0x12c/0x1e4\n[cf839f40] [c01c2628] phy_state_machine+0x2e0/0x448\n[cf839f60] [c00425e8] run_workqueue+0xc8/0x168\n[cf839f90] [c0042c6c] worker_thread+0x70/0xd0\n[cf839fd0] [c0046954] kthread+0x48/0x84\n[cf839ff0] [c0012488] kernel_thread+0x44/0x60\nInstruction dump:\n7c0803a6 4e800020 3d20c036 9421ffe0 7c0802a6 7c681b78 3929ceb0 7c694a78\n7d290034 90010024 bfa10014 5529d97e \u003c0f090000\u003e 39600002 38030024 7d200028\n---[ end trace a57d367843bd2904 ]---\n\nSince the driver is using phylib (which is doing netif_carrier_on/off()),\nwe should simply remove netif_tx_schedule_all() from adjust_link().\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "afc079465e991ffb7fe197d1ad80eb8140e2c341",
      "tree": "19f6cfd98c123e921f0a6b3328a92521b103467f",
      "parents": [
        "39d48157ac1a0ff3ec81212e5451bfd1bf5f50db"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Mon Jul 21 08:29:54 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 08:29:54 2008 -0700"
      },
      "message": "gianfar: do not touch net queue in adjust_link phylib callback\n\nIf the net queue has not been started, we\u0027ll get this nice oops\nand non-working ethernet:\n\nPHY: 0:01 - Link is Up - 1000/Full\n------------[ cut here ]------------\nkernel BUG at net/core/dev.c:1328!\nOops: Exception in kernel mode, sig: 5 [#1]\nMPC837x RDB\nModules linked in:\nNIP: c02544a0 LR: c01a17d0 CTR: c01a16ac\nREGS: cf837e40 TRAP: 0700   Not tainted  (2.6.26-05253-g14b395e)\nMSR: 00021032 \u003cME,IR,DR\u003e  CR: 22042044  XER: 00000000\nTASK \u003d cf819400[5] \u0027events/0\u0027 THREAD: cf836000\nGPR00: c01a17d0 cf837ef0 cf819400 c03d8d08 cf8469a0 00000064 00000000 00000000\nGPR08: c03d8d08 00000001 00000001 cf899ba0 22044044 00000000 0fffd000 00000000\nGPR16: 0fff3028 0fff6cf0 00000000 0fff8390 0ff494a0 00000004 00000000 00000000\nGPR24: c0361a00 00001058 cf9f6600 00009032 cf846800 cf846b80 00000001 00000014\nNIP [c02544a0] __netif_schedule+0x28/0x8c\nLR [c01a17d0] adjust_link+0x124/0x1cc\nCall Trace:\n[cf837ef0] [c03fb3a0] 0xc03fb3a0 (unreliable)\n[cf837f10] [c01a17d0] adjust_link+0x124/0x1cc\n[cf837f40] [c01a8e28] phy_state_machine+0x2e0/0x448\n[cf837f60] [c0040254] run_workqueue+0xc8/0x168\n[cf837f90] [c00408d8] worker_thread+0x70/0xd0\n[cf837fd0] [c0044630] kthread+0x48/0x84\n[cf837ff0] [c0012610] kernel_thread+0x44/0x60\nInstruction dump:\n7c0803a6 4e800020 3d20c03e 9421ffe0 7c0802a6 7c681b78 39298d08 7c694a78\n7d290034 90010024 bfa10014 5529d97e \u003c0f090000\u003e 39600002 38030024 7d200028\n---[ end trace 13dfd73ee42d0c30 ]---\n\nSince the driver is using phylib (which is doing netif_carrier_on/off()),\nwe should simply remove netif_tx_schedule_all() from adjust_link().\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "39d48157ac1a0ff3ec81212e5451bfd1bf5f50db",
      "tree": "ac792ae73a39e9f0b71346047c230e19aefccb19",
      "parents": [
        "14b395e35d1afdd8019d11b92e28041fad591b71"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 08:28:37 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 21 08:28:37 2008 -0700"
      },
      "message": "atl1: Do not wake queue before queue has been started.\n\nBased upon a bug report by Alexey Dobriyan, the patch is\nalso tested by him and confirmed to fix the problem.\n\nPacket flow during link state events should not be done by\nwaking and stopping the TX queue anyways, that is handled\ntransparently by netif_carrier_{on,off}().\n\nSo, remove the netif_{wake,stop}_queue() calls in the link\ncheck code, and add the necessary netif_start_queue() call\nto atl1_up().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e2dcc7631e331cf2e8396ce452e7f01e35f1182",
      "tree": "5a02c9602db66bc8c8db9660899c0c4455d7464f",
      "parents": [
        "acee709cab689ec7703770e8b8cb5cc3a4abcb31",
        "1c29dd9a9e2f83ffb02e50bb3619c3b9db8fd526"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 16:45:56 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 16:45:56 2008 +0200"
      },
      "message": "Merge branch \u0027x86/paravirt-spinlocks\u0027 into x86/for-linus\n"
    },
    {
      "commit": "acee709cab689ec7703770e8b8cb5cc3a4abcb31",
      "tree": "258729f7d7bc385e08d471ade34bd3ce1e8ea280",
      "parents": [
        "33a37eb411d193851c334060780ab834ba534292",
        "5ff4789d045cdaec7629e027e4f8ff8e34308b81",
        "35b680557f95564f70f21a8d3f5c72e101fab260",
        "c4dc59ae7af8c1c116d2cb4dffba337f032a6bee",
        "7edf8891ad7aef5f4e97991fed6fb0e605e96ea0",
        "9781f39fd209cd93ab98b669814191acc67f32fd",
        "48fe4a76e27dc64b47f3d2a2af2b6bbf2b2f5b6b",
        "be54f9d1c8df93c4998e134a306652caaa58f67f",
        "77e442461c74068217b59b356cf18992c78ed896",
        "caadbdce240c43e3e46c82fce6c00eb7f01e1beb",
        "5e5a29bf2624a5984e1c36c3a2481ee91249ec9c",
        "e3a61b0a8c0e342e700a61cd554b01050f333a36",
        "fec0962e0bed407927b9ff54bb0596a3ab7e4b61",
        "fab3b58d3b242b5903f78d60d86803a8aecdf6de",
        "f2ba93929fdb91fd806be20e959a50f7db82790e",
        "48ae74443403ab25876959e84785f61bf421ccef",
        "3cabf37f6167125cb5185db05f5061650f685ab7",
        "7019cc2dd6fafcdc6b104005482dc910dcdbb797",
        "2ddf9b7b3e6660199269e34cfa27148440ddc3bf",
        "e66d90fb4abd0a27ee96f57a32fb561221c4d6ae"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 16:37:17 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 16:37:17 2008 +0200"
      },
      "message": "Merge branches \u0027x86/urgent\u0027, \u0027x86/amd-iommu\u0027, \u0027x86/apic\u0027, \u0027x86/cleanups\u0027, \u0027x86/core\u0027, \u0027x86/cpu\u0027, \u0027x86/fixmap\u0027, \u0027x86/gart\u0027, \u0027x86/kprobes\u0027, \u0027x86/memtest\u0027, \u0027x86/modules\u0027, \u0027x86/nmi\u0027, \u0027x86/pat\u0027, \u0027x86/reboot\u0027, \u0027x86/setup\u0027, \u0027x86/step\u0027, \u0027x86/unify-pci\u0027, \u0027x86/uv\u0027, \u0027x86/xen\u0027 and \u0027xen-64bit\u0027 into x86/for-linus\n"
    },
    {
      "commit": "e66d90fb4abd0a27ee96f57a32fb561221c4d6ae",
      "tree": "3337cba94c7444b06fdb0e8b487287d07b71f4a0",
      "parents": [
        "55ca089e2579de90f048aca2a3030b8b2f864813",
        "14b395e35d1afdd8019d11b92e28041fad591b71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 15:06:09 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 15:06:09 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into xen-64bit\n"
    },
    {
      "commit": "1c29dd9a9e2f83ffb02e50bb3619c3b9db8fd526",
      "tree": "b5691dd5aa48ac32fdbaef44afcbcc92f01592d3",
      "parents": [
        "32172561889868c0ea422ea8570f0413963a815f",
        "14b395e35d1afdd8019d11b92e28041fad591b71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 15:05:58 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 15:05:58 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/paravirt-spinlocks\n"
    },
    {
      "commit": "7edf8891ad7aef5f4e97991fed6fb0e605e96ea0",
      "tree": "d03891438436dd82ce426611c3882e319f07ce6f",
      "parents": [
        "9175fc06aee79c349790672178d3fd7507d75c86"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Mon Jul 21 01:39:03 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 13:03:13 2008 +0200"
      },
      "message": "x86: remove extra calling to get ext cpuid level\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9175fc06aee79c349790672178d3fd7507d75c86",
      "tree": "4b83a2ef781af89040a41b2432e32c6a3ec27689",
      "parents": [
        "6ac8d51f01d345af5ea4209004a9ea29b2f20891"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Mon Jul 21 01:38:14 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 13:03:12 2008 +0200"
      },
      "message": "x86: use setup_clear_cpu_cap() when disabling the lapic\n\n... so don\u0027t need to call clear_cpu_cap again in early_identify_cpu,\nand could use cleared_cpu_caps like other places.\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d41e26b901111f4e540aa2c27ec7a1681c782be9",
      "tree": "7f05c209b92c0dfc2a96daeac3a4812f34b70b10",
      "parents": [
        "9980c638a666ecd88acaf0a7ab91043d4a3f44d1"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Mon Jul 21 12:00:40 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:40 2008 +0100"
      },
      "message": "dm crypt: add merge\n\nThis patch implements biovec merge function for crypt target.\n\nIf the underlying device has merge function defined, call it.\nIf not, keep precomputed value.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "9980c638a666ecd88acaf0a7ab91043d4a3f44d1",
      "tree": "89434f8d20d4e330400d8663dcc53188a9956f8c",
      "parents": [
        "7bc3447b692185c5ea78bee93d0ef1dee2fd7ce7"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Mon Jul 21 12:00:39 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:39 2008 +0100"
      },
      "message": "dm table: remove merge_bvec sector restriction\n\nRemove max_sector restriction - merge function replaced it.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "7bc3447b692185c5ea78bee93d0ef1dee2fd7ce7",
      "tree": "f30ddd021bcbb333f12b1a57a6969e0d52b7cdab",
      "parents": [
        "f6fccb1213ba3d661baeb2a5eee0a9701dc03e1b"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Mon Jul 21 12:00:38 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:38 2008 +0100"
      },
      "message": "dm: linear add merge\n\nThis patch implements biovec merge function for linear target.\n\nIf the underlying device has merge function defined, call it.\nIf not, keep precomputed value.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "f6fccb1213ba3d661baeb2a5eee0a9701dc03e1b",
      "tree": "456671e791f8a61b40e0d622591b902ca1351ae7",
      "parents": [
        "92e868122edf08b9fc06b112e7e0c80ab94c1f93"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Mon Jul 21 12:00:37 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:37 2008 +0100"
      },
      "message": "dm: introduce merge_bvec_fn\n\nIntroduce a bvec merge function for device mapper devices\nfor dynamic size restrictions.\n\nThis code ensures the requested biovec lies within a single\ntarget and then calls a target-specific function to check\nagainst any constraints imposed by underlying devices.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "92e868122edf08b9fc06b112e7e0c80ab94c1f93",
      "tree": "9cd2e5e2f15adcaf1b8d3f8f55d5a676ad40bfd6",
      "parents": [
        "a8d41b59f3f5a7ac19452ef442a7fc1b5fa17366"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Mon Jul 21 12:00:35 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:35 2008 +0100"
      },
      "message": "dm snapshot: use per device mempools\n\nChange snapshot per-module mempool to per-device mempool.\n\nPer-module mempools could cause a deadlock if multiple\nsnapshot devices are stacked above each other.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "a8d41b59f3f5a7ac19452ef442a7fc1b5fa17366",
      "tree": "f9435bed2d582e4cd3e91e4d6fb18a18f62aa019",
      "parents": [
        "cd45daffd1f7b53aac0835b23e97f814ec3f10dc"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Mon Jul 21 12:00:34 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:34 2008 +0100"
      },
      "message": "dm snapshot: fix race during exception creation\n\nFix a race condition that returns incorrect data when a write causes an\nexception to be allocated whilst a read is still in flight.\n\nThe race condition happens as follows:\n* A read to non-reallocated sector in the snapshot is submitted so that the\n  read is routed to the original device.\n* A write to the original device is submitted. The write causes an exception\n  that reallocates the block.  The write proceeds.\n* The original read is dequeued and reads the wrong data.\n\nThis race can be triggered with CFQ scheduler and one thread writing and\nmultiple threads reading simultaneously.\n\n(This patch relies upon the earlier dm-kcopyd-per-device.patch to avoid a\ndeadlock.)\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "cd45daffd1f7b53aac0835b23e97f814ec3f10dc",
      "tree": "17d35682a8a97f3a73f513531f08ba7e0c8cd718",
      "parents": [
        "def052d21c4e77975bb75cf212f018ec913f8e2f"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Mon Jul 21 12:00:32 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:32 2008 +0100"
      },
      "message": "dm snapshot: track snapshot reads\n\nWhenever a snapshot read gets mapped through to the origin, track it in\na per-snapshot hash table indexed by chunk number, using memory allocated\nfrom a new per-snapshot mempool.\n\nWe need to track these reads to avoid race conditions which will be fixed\nby patches that follow.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "def052d21c4e77975bb75cf212f018ec913f8e2f",
      "tree": "88a7bcd180f23d33b0e4f7728476b7b241df1f34",
      "parents": [
        "148acff615b403168cdf39e55bfcfaa6e4a7d233"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:31 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:31 2008 +0100"
      },
      "message": "dm mpath: fix test for reinstate_path\n\nFix test for reinstate_path method before attempting to use it.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\n"
    },
    {
      "commit": "148acff615b403168cdf39e55bfcfaa6e4a7d233",
      "tree": "e9879aecb1403f89ec1a6d37d2608dd9bf51e2ef",
      "parents": [
        "6ae2fa6718c398290be29ef740873640d25058b6"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Mon Jul 21 12:00:30 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:30 2008 +0100"
      },
      "message": "dm mpath: return parameter error\n\nReturn a specific error message if there are an invalid number of multipath\narguments.\n\nThis invalid command returns an \"Unknown error\" because the ti-\u003eerror field is\nnot set\n\ndmsetup create --table \u00270 2 multipath 0 0 1 1 round-robin 0 1 1 /dev/sdh\u0027 mpath0\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "6ae2fa6718c398290be29ef740873640d25058b6",
      "tree": "057e8601891ed77fecbdb968033cc9dc06f8b788",
      "parents": [
        "c8da2f8dd86d70559ec4e50251f6a755b42bd5b4"
      ],
      "author": {
        "name": "Richard Kennedy",
        "email": "richard@rsk.demon.co.uk",
        "time": "Mon Jul 21 12:00:28 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:28 2008 +0100"
      },
      "message": "dm io: remove struct padding\n\nRearrange struct dm_io.\nShrinks size from 40 -\u003e 32 allowing more objects/slab.\n\nSigned-off-by: Richard Kennedy \u003crichard@rsk.demon.co.uk\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "c8da2f8dd86d70559ec4e50251f6a755b42bd5b4",
      "tree": "1991d27441d08a727160d75d7b2723b5514b19e1",
      "parents": [
        "371b2e348b7731a548b0a7432ca2ba32e90dd16f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Jul 21 12:00:27 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:27 2008 +0100"
      },
      "message": "dm log: make dm_dirty_log init and exit static\n\ndm_dirty_log_{init,exit}() can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "371b2e348b7731a548b0a7432ca2ba32e90dd16f",
      "tree": "d7adce2fcaf95bfbbdfd4779d0e03e2980308b65",
      "parents": [
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Mon Jul 21 12:00:24 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:24 2008 +0100"
      },
      "message": "dm mpath: free path selector on invalid args\n\nFree path selector if the arguments are invalid.\n\nThis command (note that it is invalid) causes reference leak on module\n\"dm_round_robin\" and prevents the module from being removed.\n\ndmsetup create --table \u00270 2 multipath 0 0 1 1 round-robin /dev/sdh\u0027 mpath0\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "33a37eb411d193851c334060780ab834ba534292",
      "tree": "15eff4d19335ec69ef2c222c800a0073cf10b924",
      "parents": [
        "e27772b48df91a954a74b1411b57d83b945a58c7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 10:57:15 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 11:03:32 2008 +0200"
      },
      "message": "KVM: fix exception entry / build bug, on 64-bit\n\n-tip testing found this build bug:\n\n arch/x86/kvm/built-in.o:(.text.fixup+0x1): relocation truncated to fit: R_X86_64_32 against `.text\u0027\n arch/x86/kvm/built-in.o:(.text.fixup+0xb): relocation truncated to fit: R_X86_64_32 against `.text\u0027\n arch/x86/kvm/built-in.o:(.text.fixup+0x15): relocation truncated to fit: R_X86_64_32 against `.text\u0027\n arch/x86/kvm/built-in.o:(.text.fixup+0x1f): relocation truncated to fit: R_X86_64_32 against `.text\u0027\n arch/x86/kvm/built-in.o:(.text.fixup+0x29): relocation truncated to fit: R_X86_64_32 against `.text\u0027\n\nIntroduced by commit 4ecac3fd. The problem is that \u0027push\u0027 will default\nto 32-bit, which is not wide enough as a fixup address. (and which would\ncrash on any real fixup event even if it was wide enough)\n\nIntroduce KVM_EX_PUSH to get the proper address push width on 64-bit too.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e27772b48df91a954a74b1411b57d83b945a58c7",
      "tree": "ebd4a434d9e3cbd0844109e4469f91daac581b59",
      "parents": [
        "d092633bff3b19faffc480fe9810805e7792a029",
        "14b395e35d1afdd8019d11b92e28041fad591b71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 11:02:45 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 21 11:02:45 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/urgent\n"
    },
    {
      "commit": "4b80991c6cb9efa607bc4fd6f3ecdf5511c31bb0",
      "tree": "5e2ba7d509af245c29bdf04b00960cc367972c44",
      "parents": [
        "f2ea68cf42aafdd93393b6b8b20fc3c2b5f4390c"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 21 17:05:25 2008 +1000"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 21 17:05:25 2008 +1000"
      },
      "message": "md: Protect access to mddev-\u003edisks list using RCU\n\nAll modifications and most access to the mddev-\u003edisks list are made\nunder the reconfig_mutex lock.  However there are three places where\nthe list is walked without any locking.  If a reconfig happens at this\ntime, havoc (and oops) can ensue.\n\nSo use RCU to protect these accesses:\n  - wrap them in rcu_read_{,un}lock()\n  - use list_for_each_entry_rcu\n  - add to the list with list_add_rcu\n  - delete from the list with list_del_rcu\n  - delay the \u0027free\u0027 with call_rcu rather than schedule_work\n\nNote that export_rdev did a list_del_init on this list.  In almost all\ncases the entry was not in the list anymore so it was a no-op and so\nsafe.  It is no longer safe as after list_del_rcu we may not touch\nthe list_head.\nAn audit shows that export_rdev is called:\n  - after unbind_rdev_from_array, in which case the delete has\n     already been done,\n  - after bind_rdev_to_array fails, in which case the delete isn\u0027t needed.\n  - before the device has been put on a list at all (e.g. in\n      add_new_disk where reading the superblock fails).\n  - and in autorun devices after a failure when the device is on a\n      different list.\n\nSo remove the list_del_init call from export_rdev, and add it back\nimmediately before the called to export_rdev for that last case.\n\nNote also that -\u003esame_set is sometimes used for lists other than\nmddev-\u003elist (e.g. candidates).  In these cases rcu is not needed.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "f2ea68cf42aafdd93393b6b8b20fc3c2b5f4390c",
      "tree": "00b025b91898ff32dba742b5075dd290fec4dc91",
      "parents": [
        "d6e2215052810678bc9782fd980b52706fc71f50"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 21 17:05:25 2008 +1000"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 21 17:05:25 2008 +1000"
      },
      "message": "md: only count actual openers as access which prevent a \u0027stop\u0027\n\nOpen isn\u0027t the only thing that increments -\u003eactive.  e.g. reading\n/proc/mdstat will increment it briefly.  So to avoid false positives\nin testing for concurrent access, introduce a new counter that counts\njust the number of times the md device it open.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "d6e2215052810678bc9782fd980b52706fc71f50",
      "tree": "63f355d1e072b6c4c48913e114c0154a5b08d792",
      "parents": [
        "f233ea5c9e0d8b95e4283bf6a3436b88f6fd3586"
      ],
      "author": {
        "name": "Andre Noll",
        "email": "maan@systemlinux.org",
        "time": "Mon Jul 21 17:05:25 2008 +1000"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 21 17:05:25 2008 +1000"
      },
      "message": "md: linear: Make array_size sector-based and rename it to array_sectors.\n\nSigned-off-by: Andre Noll \u003cmaan@systemlinux.org\u003e\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "f233ea5c9e0d8b95e4283bf6a3436b88f6fd3586",
      "tree": "8a36b621de46da23f3957c6e3ea4d653c2937544",
      "parents": [
        "15f4a5fdf3aa07b53f6a7969664741db5882e485"
      ],
      "author": {
        "name": "Andre Noll",
        "email": "maan@systemlinux.org",
        "time": "Mon Jul 21 17:05:22 2008 +1000"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 21 17:05:22 2008 +1000"
      },
      "message": "md: Make mddev-\u003earray_size sector-based.\n\nThis patch renames the array_size field of struct mddev_s to array_sectors\nand converts all instances to use units of 512 byte sectors instead of 1k\nblocks.\n\nSigned-off-by: Andre Noll \u003cmaan@systemlinux.org\u003e\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    }
  ],
  "next": "908cf4b925e419bc74f3297b2f0e51d6f8a81da2"
}
