)]}'
{
  "log": [
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "a4dbd6740df0872cdf0a86841f75beec8381964d",
      "tree": "1093687845d89f8397d61e7df1ad8546a5a25225",
      "parents": [
        "5b2ea2f10dbb2fa91d8033993000f8664309395f"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Wed Jun 24 10:06:31 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:47 2009 -0700"
      },
      "message": "driver model: constify attribute groups\n\nLet attribute group vectors be declared \"const\".  We\u0027d\nlike to let most attribute metadata live in read-only\nsections... this is a start.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6ff4dd36d6386f6fb3e1e4eac56f0d22d59a1d5c",
      "tree": "d1dbb3a55247803454378879c3b915474ffcf05e",
      "parents": [
        "c682b17060788ace1abaeb080358ef7b62b1f541"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Tue Jan 06 10:44:42 2009 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 06 10:44:42 2009 -0800"
      },
      "message": "dmi: struct device - replace bus_id with dev_name(), dev_set_name()\n\nCC: Lennart Poettering \u003cmzxreary@0pointer.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "911f21501f50b16ce77f37b01e90b5b73c8c80bf",
      "tree": "b8a237b56d8361170f91f95b9072a0b5ea91f056",
      "parents": [
        "4e701482d1d7b90c358e2bd244bb71623f767120"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Wed Feb 06 01:36:15 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:00 2008 -0800"
      },
      "message": "Remove inclusions of \u003clinux/autoconf.h\u003e\n\nNothing should ever include this file.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: \"Mike Frysinger\" \u003cvapier.adi@gmail.com\u003e\nAcked-by: \"Bryan Wu\" \u003ccooloney.lkml@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "81b4e1f6269cea345f17d3aa349ec9beb31a8cd3",
      "tree": "1f5575297b166e51399eaf5fef680d02d30c060f",
      "parents": [
        "667984d9e481e43a930a478c588dced98cb61fea"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 16 17:20:37 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 23 21:22:21 2008 -0500"
      },
      "message": "DMI: move dmi_available declaration to linux/dmi.h\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "ce8c628abadaf16a44953301c68b9f54cf6898cc",
      "tree": "2b5f560365aa156e984da78be6dc51a0aaac2547",
      "parents": [
        "83a08e7c6ed533a47631794e7f618a98094b4129"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Tue Jan 08 15:33:08 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jan 08 16:10:36 2008 -0800"
      },
      "message": "dmi-id: fix for __you_cannot_kmalloc_that_much failure\n\ngcc 3.2 has a hard time coping with the code in dmi_id_init():\n\ndrivers/built-in.o(.init.text+0x789e): In function `dmi_id_init\u0027:\n: undefined reference to `__you_cannot_kmalloc_that_much\u0027\nmake: *** [.tmp_vmlinux1] Error 1\n\nMoving half of the code to a separate function seems to help.  This is a\nno-op for gcc 4.1 which will successfully inline the code anyway.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nTested-by: Kamalesh Babulal \u003ckamalesh@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34b51f39e23bc9e529830ddf6108381d4bab95a6",
      "tree": "8b10bea6023d1c49d18ce1748b9448c3451b3871",
      "parents": [
        "6374475661172d508a9b93a2740a3fdc9d899756"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Mon Aug 13 11:26:26 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 12 14:51:04 2007 -0700"
      },
      "message": "dmi-id: Possible cleanup\n\nThe DEFINE_DMI_ATTR macro has a single user left so we can expand it\nfor slightly shorter/simpler code.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nAcked-by: Lennart Poettering \u003cmzxreary@0pointer.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6374475661172d508a9b93a2740a3fdc9d899756",
      "tree": "81a53e300e8b3066c44abccac8c2d2e9ac6a1f67",
      "parents": [
        "990e53f880be9ff93072b4cce590ec2826cee0b6"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Mon Aug 13 11:24:33 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 12 14:51:04 2007 -0700"
      },
      "message": "dmi-id: Use dynamic sysfs attributes\n\nWe can use sysfs attributes with an extra parameter for dmi id\nattributes. This makes it possible to use the same callback function\nfor all attributes, reducing the binary size significantly (-18% on\nx86_64.)\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nAcked-by: Lennart Poettering \u003cmzxreary@0pointer.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7eff2e7a8b65c25920207324e56611150eb1cd9a",
      "tree": "02a0eeba9d25d996233e30c18f258dfae0ae2139",
      "parents": [
        "8380770c842faef3001e44662953d64ad9a93663"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Tue Aug 14 15:15:12 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 12 14:51:01 2007 -0700"
      },
      "message": "Driver core: change add_uevent_var to use a struct\n\nThis changes the uevent buffer functions to use a struct instead of a\nlong list of parameters. It does no longer require the caller to do the\nproper buffer termination and size accounting, which is currently wrong\nin some places. It fixes a known bug where parts of the uevent\nenvironment are overwritten because of wrong index calculations.\n\nMany thanks to Mathieu Desnoyers for finding bugs and improving the\nerror handling.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "4f5c791a850e5305a5b1b48d0e4b4de248dc96f9",
      "tree": "3059bba718b9f8d5c07081221b1ab23845638935",
      "parents": [
        "cfc94cdf8e0f14e692a5a40ef3cc10f464b2511b"
      ],
      "author": {
        "name": "Lennart Poettering",
        "email": "mzxreary@0pointer.de",
        "time": "Tue May 08 22:07:02 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jul 11 16:09:00 2007 -0700"
      },
      "message": "DMI-based module autoloading\n\nThe patch below adds DMI/SMBIOS based module autoloading to the Linux\nkernel. The idea is to load laptop drivers automatically (and other\ndrivers which cannot be autoloaded otherwise), based on the DMI system\nidentification information of the BIOS.\n\nRight now most distros manually try to load all available laptop\ndrivers on bootup in the hope that at least one of them loads\nsuccessfully. This patch does away with all that, and uses udev to\nautomatically load matching drivers on the right machines.\n\nBasically the patch just exports the DMI information that has been\nparsed by the kernel anyway to userspace via a sysfs device\n/sys/class/dmi/id and makes sure that proper modalias attributes are\navailable. Besides adding the \"modalias\" attribute it also adds\nattributes for a few other DMI fields which might be useful for\nwriting udev rules.\n\nThis patch is not an attempt to export the entire DMI/SMBIOS data to\nuserspace. We already have \"dmidecode\" which parses the complete DMI\ninfo from userspace. The purpose of this patch is machine model\nidentification and good udev integration.\n\nTo take advantage of DMI based module autoloading, a driver should\nexport one or more MODULE_ALIAS fields similar to these:\n\nMODULE_ALIAS(\"dmi:*:svnMICRO-STARINT\u0027LCO.,LTD:pnMS-1013:pvr0131*:cvnMICRO-STARINT\u0027LCO.,LTD:ct10:*\");\nMODULE_ALIAS(\"dmi:*:svnMicro-StarInternational:pnMS-1058:pvr0581:rvnMSI:rnMS-1058:*:ct10:*\");\nMODULE_ALIAS(\"dmi:*:svnMicro-StarInternational:pnMS-1412:*:rvnMSI:rnMS-1412:*:cvnMICRO-STARINT\u0027LCO.,LTD:ct10:*\");\nMODULE_ALIAS(\"dmi:*:svnNOTEBOOK:pnSAM2000:pvr0131*:cvnMICRO-STARINT\u0027LCO.,LTD:ct10:*\");\n\nThese lines are specific to my msi-laptop.c driver. They are basically\njust a concatenation of a few carefully selected DMI fields with all\npotentially bad characters stripped.\n\nBesides laptop drivers, modules like \"hdaps\", the i2c modules\nand the hwmon modules are good candidates for \"dmi:\" MODULE_ALIAS\nlines.\n\nBesides merely exporting the DMI data via sysfs the patch adds\nsupport for a few more DMI fields. Especially the CHASSIS fields are\nvery useful to identify different laptop modules. The patch also adds\nworking MODULE_ALIAS lines to my msi-laptop.c driver.\n\nI\u0027d like to thank Kay Sievers for helping me to clean up this patch\nfor posting it on lkml.\n\nPatch is against Linus\u0027 current GIT HEAD. Should probably apply to\nolder kernels as well without modification.\n\n\nSigned-off-by: Lennart Poettering \u003cmzxreary@0pointer.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n\n"
    }
  ]
}
