)]}'
{
  "log": [
    {
      "commit": "2eda013f4894bc200124f791a56c4defb613a0cc",
      "tree": "a186229c34e0629b72d64ed767076257edcdea94",
      "parents": [
        "b5763accd3b5fc131ee06e26ce56e63ae0322c9b"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sat Jan 21 11:02:51 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 08:44:53 2012 -0800"
      },
      "message": "kernel-doc: fix new warnings in device.h\n\nFix new kernel-doc warnings:\n\nWarning(include/linux/device.h:299): No description found for parameter \u0027name\u0027\nWarning(include/linux/device.h:299): No description found for parameter \u0027subsys\u0027\nWarning(include/linux/device.h:299): No description found for parameter \u0027node\u0027\nWarning(include/linux/device.h:299): No description found for parameter \u0027add_dev\u0027\nWarning(include/linux/device.h:299): No description found for parameter \u0027remove_dev\u0027\nWarning(include/linux/device.h:685): No description found for parameter \u0027id\u0027\nWarning(include/linux/device.h:1009): No description found for parameter \u0027__driver\u0027\nWarning(include/linux/device.h:1009): No description found for parameter \u0027__register\u0027\nWarning(include/linux/device.h:1009): No description found for parameter \u0027__unregister\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "972b2c719990f91eb3b2310d44ef8a2d38955a14",
      "tree": "b25a250ec5bec4b7b6355d214642d8b57c5cab32",
      "parents": [
        "02550d61f49266930e674286379d3601006b2893",
        "c3aa077648e147783a7a53b409578234647db853"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 12:19:57 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 12:19:57 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\n* \u0027for-linus2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (165 commits)\n  reiserfs: Properly display mount options in /proc/mounts\n  vfs: prevent remount read-only if pending removes\n  vfs: count unlinked inodes\n  vfs: protect remounting superblock read-only\n  vfs: keep list of mounts for each superblock\n  vfs: switch -\u003eshow_options() to struct dentry *\n  vfs: switch -\u003eshow_path() to struct dentry *\n  vfs: switch -\u003eshow_devname() to struct dentry *\n  vfs: switch -\u003eshow_stats to struct dentry *\n  switch security_path_chmod() to struct path *\n  vfs: prefer -\u003edentry-\u003ed_sb to -\u003emnt-\u003emnt_sb\n  vfs: trim includes a bit\n  switch mnt_namespace -\u003eroot to struct mount\n  vfs: take /proc/*/mounts and friends to fs/proc_namespace.c\n  vfs: opencode mntget() mnt_set_mountpoint()\n  vfs: spread struct mount - remaining argument of next_mnt()\n  vfs: move fsnotify junk to struct mount\n  vfs: move mnt_devname\n  vfs: move mnt_list to struct mount\n  vfs: switch pnode.h macros to struct mount *\n  ...\n"
    },
    {
      "commit": "ff4b8a57f0aaa2882d444ca44b2b9b333d22a4df",
      "tree": "d851c923f85566572112d4c0f884cff388a3cc05",
      "parents": [
        "805a6af8dba5dfdd35ec35dc52ec0122400b2610",
        "ea04018e6bc5ddb2f0466c0e5b986bd4901b7e8e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 11:42:52 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 11:42:52 2012 -0800"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 into Linux 3.2\n\nThis resolves the conflict in the arch/arm/mach-s3c64xx/s3c6400.c file,\nand it fixes the build error in the arch/x86/kernel/microcode_core.c\nfile, that the merge did not catch.\n\nThe microcode_core.c patch was provided by Stephen Rothwell\n\u003csfr@canb.auug.org.au\u003e who was invaluable in the merge issues involved\nwith the large sysdev removal process in the driver-core tree.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b9d4e714a86a4e88c2f530c76597f7025e5851d6",
      "tree": "bd6636d2105de4f849160a7a435fff232d6b76d3",
      "parents": [
        "3b85e4ab2ec1dea29374f16205917b1b5589bc81"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jan 04 15:05:10 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jan 04 15:05:10 2012 -0800"
      },
      "message": "driver core: remove __must_check from device_create_file\n\nWith the conversion of the sysdev to a real struct device, more drivers\nare calling device_create_file, and some of them don\u0027t check the return\nvalue, which isn\u0027t wise.\n\nBut as they happen to be in parts of the kernel where a warning is\nconsidered an error (i.e. powerpc), this breaks the build.  So for now,\nremove the marking on the function, which fixes the build problems.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "2c9ede55ecec58099b72e4bb8eab719f32f72c31",
      "tree": "8498a8c940fea97931b469fc73eb1a5022a2b28c",
      "parents": [
        "7d54fa6472609f2b0f2ea27e51ec2cf1fb27bd57"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 20:24:48 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:54:55 2012 -0500"
      },
      "message": "switch device_get_devnode() and -\u003edevnode() to umode_t *\n\nboth callers of device_get_devnode() are only interested in lower 16bits\nand nobody tries to return anything wider than 16bit anyway.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ca22e56debc57b47c422b749c93217ba62644be2",
      "tree": "bb2da058ddc05f8cde1161a60f7fdce9620c63ff",
      "parents": [
        "6261ddee70174372d6a75601f40719b7a5392f3f"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Dec 14 14:29:38 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 14 14:29:38 2011 -0800"
      },
      "message": "driver-core: implement \u0027sysdev\u0027 functionality for regular devices and buses\n\nAll sysdev classes and sysdev devices will converted to regular devices\nand buses to properly hook userspace into the event processing.\n\nThere is no interesting difference between a \u0027sysdev\u0027 and \u0027device\u0027 which\nwould justify to roll an entire own subsystem with different userspace\nexport semantics. Userspace relies on events and generic sysfs subsystem\ninfrastructure from sysdev devices, which are currently not properly\navailable.\n\nEvery converted sysdev class will create a regular device with the class\nname in /sys/devices/system and all registered devices will becom a children\nof theses devices.\n\nFor compatibility reasons, the sysdev class-wide attributes are created\nat this parent device. (Do not copy that logic for anything new, subsystem-\nwide properties belong to the subsystem, not to some fake parent device\ncreated in /sys/devices.)\n\nEvery sysdev driver is implemented as a simple subsystem interface now,\nand no longer called a driver.\n\nAfter all sysdev classes are ported to regular driver core entities, the\nsysdev implementation will be entirely removed from the kernel.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "0cda56962b883cd5e7aa036350e5a0283a88c590",
      "tree": "acb54a8550f3d768a45ad297761f8f6cba90d19e",
      "parents": [
        "b0d81664a0092d8f6df7742b5aee6fcfd326b36c",
        "91a13c281d7d4648c0b32dede11a0144c4e7984c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 21 20:36:26 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 21 20:36:26 2011 -0800"
      },
      "message": "Merge branch \u0027driver-core-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\n* \u0027driver-core-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:\n  drivers/base/node.c: fix compilation error with older versions of gcc\n  uio: documentation fixups\n  device.h: Fix struct member documentation\n"
    },
    {
      "commit": "8b258cc8ac229aa7d5dcb7cc34cb35d9124498ac",
      "tree": "9615636b05b04035af0c8eb11ee9711aa2b868a6",
      "parents": [
        "af8db1508f2c9f3b6e633e2d2d906c6557c617f9"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Nov 17 21:39:33 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Nov 17 21:39:33 2011 +0100"
      },
      "message": "PM Sleep: Do not extend wakeup paths to devices with ignore_children set\n\nCommit 4ca46ff3e0d8c234cb40ebb6457653b59584426c (PM / Sleep: Mark\ndevices involved in wakeup signaling during suspend) introduced\nthe power.wakeup_path field in struct dev_pm_info to mark devices\nwhose children are enabled to wake up the system from sleep states,\nso that power domains containing the parents that provide their\nchildren with wakeup power and/or relay their wakeup signals are not\nturned off.  Unfortunately, that introduced a PM regression on SH7372\nwhose power consumption in the system \"memory sleep\" state increased\nas a result of it, because it prevented the power domain containing\nthe I2C controller from being turned off when some children of that\ncontroller were enabled to wake up the system, although the\ncontroller was not necessary for them to signal wakeup.\n\nTo fix this issue use the observation that devices whose\npower.ignore_children flag is set for runtime PM should be treated\nanalogously during system suspend.  Namely, they shouldn\u0027t be\nincluded in wakeup paths going through their children.  Since the\nSH7372 I2C controller\u0027s power.ignore_children flag is set, doing so\nwill restore the previous behavior of that SOC.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "907d0ed1c84114d4e8dafd66af982515d3739c90",
      "tree": "faf964abead72d572d686e25945ec237c9e635d2",
      "parents": [
        "377195c438fc5e9e4ca59e69382c10771d817d6a"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Wed Nov 16 10:13:35 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 17 12:05:00 2011 -0800"
      },
      "message": "drivercore: Generalize module_platform_driver\n\nThis patch generalizes the module_platform_driver macro and introduces a new\nmodule_driver macro. The module_driver macro takes a driver name, a register\nand a unregister function for this driver type. Using these it construct the\nmodule init and exit sections which register and unregister the driver. Since\nsuch init/exit sections are commonly found in drivers this macro can be used\nto eliminate a lot of boilerplate code.\n\nThe macro is not intended to be used by driver modules directly, instead it\nshould be used to generate bus specific macros for registering drivers like\nthe module_platform_driver macro.\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Jonathan Cameron \u003cjic23@kernel.org\u003e\nAcked-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "72f8c0bfa0de64c68ee59f40eb9b2683bffffbb0",
      "tree": "44fa0c66dbb41d9154e170d4d97455e5665a5f12",
      "parents": [
        "571806a9f70fc4a4c575ab796555dfb401c2dfc1"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Tue Oct 25 15:16:47 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Nov 15 16:07:39 2011 -0800"
      },
      "message": "lib: devres: add convenience function to remap a resource\n\nAlmost every platform_driver does the three steps get_resource,\nrequest_mem_region, ioremap. This does not only lead to a lot of code\nduplication, but also a huge number of similar error strings and\ninconsistent error codes on failure. So, introduce a helper function\nwhich simplifies remapping a resource and make it hard to do something\nwrong and add documentation for it.\n\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "7b08fae8fbf0c14f003be8e039ed37bcbae4415a",
      "tree": "22c86f2338b96f85584916a844dcabc921ec73c1",
      "parents": [
        "1ea6b8f48918282bdca0b32a34095504ee65bab5"
      ],
      "author": {
        "name": "Marcos Paulo de Souza",
        "email": "marcos.mage@gmail.com",
        "time": "Tue Nov 01 11:15:40 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Nov 15 11:14:01 2011 -0800"
      },
      "message": "device.h: Fix struct member documentation\n\nFix warning of make xmldocs of documention of the struct member iommu_ops from struct bus_type.\n\nSigned-off-by: Marcos Paulo de Souza \u003cmarcos.mage@gmail.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "32aaeffbd4a7457bf2f7448b33b5946ff2a960eb",
      "tree": "faf7ad871d87176423ff9ed1d1ba4d9c688fc23f",
      "parents": [
        "208bca0860406d16398145ddd950036a737c3c9d",
        "67b84999b1a8b1af5625b1eabe92146c5eb42932"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "message": "Merge branch \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\n* \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)\n  Revert \"tracing: Include module.h in define_trace.h\"\n  irq: don\u0027t put module.h into irq.h for tracking irqgen modules.\n  bluetooth: macroize two small inlines to avoid module.h\n  ip_vs.h: fix implicit use of module_get/module_put from module.h\n  nf_conntrack.h: fix up fallout from implicit moduleparam.h presence\n  include: replace linux/module.h with \"struct module\" wherever possible\n  include: convert various register fcns to macros to avoid include chaining\n  crypto.h: remove unused crypto_tfm_alg_modname() inline\n  uwb.h: fix implicit use of asm/page.h for PAGE_SIZE\n  pm_runtime.h: explicitly requires notifier.h\n  linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h\n  miscdevice.h: fix up implicit use of lists and types\n  stop_machine.h: fix implicit use of smp.h for smp_processor_id\n  of: fix implicit use of errno.h in include/linux/of.h\n  of_platform.h: delete needless include \u003clinux/module.h\u003e\n  acpi: remove module.h include from platform/aclinux.h\n  miscdevice.h: delete unnecessary inclusion of module.h\n  device_cgroup.h: delete needless include \u003clinux/module.h\u003e\n  net: sch_generic remove redundant use of \u003clinux/module.h\u003e\n  net: inet_timewait_sock doesnt need \u003clinux/module.h\u003e\n  ...\n\nFix up trivial conflicts (other header files, and  removal of the ab3550 mfd driver) in\n - drivers/media/dvb/frontends/dibx000_common.c\n - drivers/media/video/{mt9m111.c,ov6650.c}\n - drivers/mfd/ab3550-core.c\n - include/linux/dmaengine.h\n"
    },
    {
      "commit": "b9075fa968a0a4347aef35e235e2995c0e57dddd",
      "tree": "cf9f9716784e790d8a43339653256d9cf9178ff3",
      "parents": [
        "ae29bc92da01a2e9d278a9a58c3b307d41cc0254"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Oct 31 17:11:33 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 31 17:30:54 2011 -0700"
      },
      "message": "treewide: use __printf not __attribute__((format(printf,...)))\n\nStandardize the style for compiler based printf format verification.\nStandardized the location of __printf too.\n\nDone via script and a little typing.\n\n$ grep -rPl --include\u003d*.[ch] -w \"__attribute__\" * | \\\n  grep -vP \"^(tools|scripts|include/linux/compiler-gcc.h)\" | \\\n  xargs perl -n -i -e \u0027local $/; while (\u003c\u003e) { s/\\b__attribute__\\s*\\(\\s*\\(\\s*format\\s*\\(\\s*printf\\s*,\\s*(.+)\\s*,\\s*(.+)\\s*\\)\\s*\\)\\s*\\)/__printf($1, $2)/g ; print; }\u0027\n\n[akpm@linux-foundation.org: revert arch bits]\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: \"Kirill A. Shutemov\" \u003ckirill@shutemov.name\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de47725421ad5627a5c905f4e40bb844ebc06d29",
      "tree": "bc23b0405d4a79dcc866a8b2877f128ee0ea9ffc",
      "parents": [
        "eb5589a8f0dab7e29021344228856339e6a1249c"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu May 26 13:46:22 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:32:32 2011 -0400"
      },
      "message": "include: replace linux/module.h with \"struct module\" wherever possible\n\nThe \u003clinux/module.h\u003e pretty much brings in the kitchen sink along\nwith it, so it should be avoided wherever reasonably possible in\nterms of being included from other commonly used \u003clinux/something.h\u003e\nfiles, as it results in a measureable increase on compile times.\n\nThe worst culprit was probably device.h since it is used everywhere.\nThis file also had an implicit dependency/usage of mutex.h which was\nmasked by module.h, and is also fixed here at the same time.\n\nThere are over a dozen other headers that simply declare the\nstruct instead of pulling in the whole file, so follow their lead\nand simply make it a few more.\n\nMost of the implicit dependencies on module.h being present by\nthese headers pulling it in have been now weeded out, so we can\nfinally make this change with hopefully minimal breakage.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "eb5589a8f0dab7e29021344228856339e6a1249c",
      "tree": "d83790e5ac7feacba5b1832fbe7f8d2a39d76f65",
      "parents": [
        "7c926402a7e8c9b279968fd94efec8700ba3859e"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri May 27 09:02:11 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:32:32 2011 -0400"
      },
      "message": "include: convert various register fcns to macros to avoid include chaining\n\nThe original implementations reference THIS_MODULE in an inline.\nWe could include \u003clinux/export.h\u003e, but it is better to avoid chaining.\n\nFortunately someone else already thought of this, and made a similar\ninline into a #define in \u003clinux/device.h\u003e for device_schedule_callback(),\n[see commit 523ded71de0] so follow that precedent here.\n\nAlso bubble up any __must_check that were used on the prev. wrapper inline\nfunctions up one to the real __register functions, to preserve any prev.\nsanity checks that were used in those instances.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "0cfdc724390fb9370f27bb9a133eadf69114dd21",
      "tree": "2abfb0112c46c837c6b42007eadfc389293b7710",
      "parents": [
        "b48aeab65e9fc4b0c9757c5fbc1d722544eb8786",
        "1abb4ba596a91a839f82e0c9c837b777d574e83d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 30 15:46:19 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 30 15:46:19 2011 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (33 commits)\n  iommu/core: Remove global iommu_ops and register_iommu\n  iommu/msm: Use bus_set_iommu instead of register_iommu\n  iommu/omap: Use bus_set_iommu instead of register_iommu\n  iommu/vt-d: Use bus_set_iommu instead of register_iommu\n  iommu/amd: Use bus_set_iommu instead of register_iommu\n  iommu/core: Use bus-\u003eiommu_ops in the iommu-api\n  iommu/core: Convert iommu_found to iommu_present\n  iommu/core: Add bus_type parameter to iommu_domain_alloc\n  Driver core: Add iommu_ops to bus_type\n  iommu/core: Define iommu_ops and register_iommu only with CONFIG_IOMMU_API\n  iommu/amd: Fix wrong shift direction\n  iommu/omap: always provide iommu debug code\n  iommu/core: let drivers know if an iommu fault handler isn\u0027t installed\n  iommu/core: export iommu_set_fault_handler()\n  iommu/omap: Fix build error with !IOMMU_SUPPORT\n  iommu/omap: Migrate to the generic fault report mechanism\n  iommu/core: Add fault reporting mechanism\n  iommu/core: Use PAGE_SIZE instead of hard-coded value\n  iommu/core: use the existing IS_ALIGNED macro\n  iommu/msm: -\u003eunmap() should return order of unmapped page\n  ...\n\nFixup trivial conflicts in drivers/iommu/Makefile: \"move omap iommu to\ndedicated iommu folder\" vs \"Rename the DMAR and INTR_REMAP config\noptions\" just happened to touch lines next to each other.\n"
    },
    {
      "commit": "7e0bb71e75020348bee523720a0c2f04cc72f540",
      "tree": "1a22d65bbce34e8cc0f82c543c9486ffb58332f7",
      "parents": [
        "b9e2780d576a010d4aba1e69f247170bf3718d6b",
        "0ab1e79b825a5cd8aeb3b34d89c9a89dea900056"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 15:18:39 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 15:18:39 2011 +0200"
      },
      "message": "Merge branch \u0027pm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\n* \u0027pm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (63 commits)\n  PM / Clocks: Remove redundant NULL checks before kfree()\n  PM / Documentation: Update docs about suspend and CPU hotplug\n  ACPI / PM: Add Sony VGN-FW21E to nonvs blacklist.\n  ARM: mach-shmobile: sh7372 A4R support (v4)\n  ARM: mach-shmobile: sh7372 A3SP support (v4)\n  PM / Sleep: Mark devices involved in wakeup signaling during suspend\n  PM / Hibernate: Improve performance of LZO/plain hibernation, checksum image\n  PM / Hibernate: Do not initialize static and extern variables to 0\n  PM / Freezer: Make fake_signal_wake_up() wake TASK_KILLABLE tasks too\n  PM / Hibernate: Add resumedelay kernel param in addition to resumewait\n  MAINTAINERS: Update linux-pm list address\n  PM / ACPI: Blacklist Vaio VGN-FW520F machine known to require acpi_sleep\u003dnonvs\n  PM / ACPI: Blacklist Sony Vaio known to require acpi_sleep\u003dnonvs\n  PM / Hibernate: Add resumewait param to support MMC-like devices as resume file\n  PM / Hibernate: Fix typo in a kerneldoc comment\n  PM / Hibernate: Freeze kernel threads after preallocating memory\n  PM: Update the policy on default wakeup settings\n  PM / VT: Cleanup #if defined uglyness and fix compile error\n  PM / Suspend: Off by one in pm_suspend()\n  PM / Hibernate: Include storage keys in hibernation image on s390\n  ...\n"
    },
    {
      "commit": "8a9ea3237e7eb5c25f09e429ad242ae5a3d5ea22",
      "tree": "a0a63398a9983667d52cbbbf4e2405b4f22b1d83",
      "parents": [
        "1be025d3cb40cd295123af2c394f7229ef9b30ca",
        "8b3408f8ee994973869d8ba32c5bf482bc4ddca4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 13:25:22 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 13:25:22 2011 +0200"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1745 commits)\n  dp83640: free packet queues on remove\n  dp83640: use proper function to free transmit time stamping packets\n  ipv6: Do not use routes from locally generated RAs\n  |PATCH net-next] tg3: add tx_dropped counter\n  be2net: don\u0027t create multiple RX/TX rings in multi channel mode\n  be2net: don\u0027t create multiple TXQs in BE2\n  be2net: refactor VF setup/teardown code into be_vf_setup/clear()\n  be2net: add vlan/rx-mode/flow-control config to be_setup()\n  net_sched: cls_flow: use skb_header_pointer()\n  ipv4: avoid useless call of the function check_peer_pmtu\n  TCP: remove TCP_DEBUG\n  net: Fix driver name for mdio-gpio.c\n  ipv4: tcp: fix TOS value in ACK messages sent from TIME_WAIT\n  rtnetlink: Add missing manual netlink notification in dev_change_net_namespaces\n  ipv4: fix ipsec forward performance regression\n  jme: fix irq storm after suspend/resume\n  route: fix ICMP redirect validation\n  net: hold sock reference while processing tx timestamps\n  tcp: md5: add more const attributes\n  Add ethtool -g support to virtio_net\n  ...\n\nFix up conflicts in:\n - drivers/net/Kconfig:\n\tThe split-up generated a trivial conflict with removal of a\n\tstale reference to Documentation/networking/net-modules.txt.\n\tRemove it from the new location instead.\n - fs/sysfs/dir.c:\n\tFairly nasty conflicts with the sysfs rb-tree usage, conflicting\n\twith Eric Biederman\u0027s changes for tagged directories.\n"
    },
    {
      "commit": "ff21776d12ff7993a6b236b8273ef62777d25dfb",
      "tree": "e4775ee5c1f5f5e7e6975c0887766a3b886c1258",
      "parents": [
        "39d4ebb95925046863dc0ef2698dfcf2c1f1dcbe"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Aug 26 16:48:26 2011 +0200"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Oct 21 14:37:19 2011 +0200"
      },
      "message": "Driver core: Add iommu_ops to bus_type\n\nThis is the starting point to make the iommu_ops used for\nthe iommu-api a per-bus-type structure. It is required to\neasily implement bus-specific setup in the iommu-layer.\nThe first user will be the iommu-group attribute in sysfs.\n\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "672d82c18d222e51b40ff47e660fc54ec3e3e0a9",
      "tree": "4b16b21bc0bcf0c7f9b21c7389e551cbd83e06a7",
      "parents": [
        "487505c257021fc06a7d05753cf27b011487f1dc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Oct 12 21:55:08 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 19:24:15 2011 -0400"
      },
      "message": "class: Implement support for class attrs in tagged sysfs directories.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c095a0e0d600d5a5a4207eaadabd18db46395ce",
      "tree": "18163d773234898e71c22d83b265a1eccfba11d9",
      "parents": [
        "111058c3ff29a6a25216b31789046c2a330baa7d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Aug 25 15:33:50 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Aug 25 15:33:50 2011 +0200"
      },
      "message": "PM: Introduce struct pm_subsys_data\n\nIntroduce struct pm_subsys_data that may be subclassed by subsystems\nto store subsystem-specific information related to the device.  Move\nthe clock management fields accessed through the power.subsys_data\npointer in struct device to the new strucutre.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "cbc4663552ee476f57933920d782222d94878e7e",
      "tree": "7fa60ec28e53114d239137b7cea65c66da15040c",
      "parents": [
        "25b8a88c10770e8c3f14bf2e222691dc6e79de78"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Thu Aug 11 14:36:21 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 22 18:23:04 2011 -0700"
      },
      "message": "dynamic_debug: Add __dynamic_dev_dbg\n\nUnlike dynamic_pr_debug, dynamic uses of dev_dbg can not\ncurrently add task_pid/KBUILD_MODNAME/__func__/__LINE__\nto selected debug output.\n\nAdd a new function similar to dynamic_pr_debug to\noptionally emit these prefixes.\n\nCc: Aloisio Almeida \u003caloisio.almeida@openbossa.org\u003e\nNoticed-by: Aloisio Almeida \u003caloisio.almeida@openbossa.org\u003e\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "60063497a95e716c9a689af3be2687d261f115b4",
      "tree": "6ce0d68db76982c53df46aee5f29f944ebf2c320",
      "parents": [
        "148817ba092f9f6edd35bad3c6c6b8e8f90fe2ed"
      ],
      "author": {
        "name": "Arun Sharma",
        "email": "asharma@fb.com",
        "time": "Tue Jul 26 16:09:06 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 26 16:49:47 2011 -0700"
      },
      "message": "atomic: use \u003clinux/atomic.h\u003e\n\nThis allows us to move duplicated code in \u003casm/atomic.h\u003e\n(atomic_inc_not_zero() for now) to \u003clinux/atomic.h\u003e\n\nSigned-off-by: Arun Sharma \u003casharma@fb.com\u003e\nReviewed-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "564b905ab10d17fb42f86aa8b7b9b796276d1336",
      "tree": "b191c000e55ae1a354bd67876ca6945d2ad87c93",
      "parents": [
        "f5da24dbed213d103f00aa9ef26e010b50d2db24"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jun 23 01:52:55 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jul 02 14:29:54 2011 +0200"
      },
      "message": "PM / Domains: Rename struct dev_power_domain to struct dev_pm_domain\n\nThe naming convention used by commit 7538e3db6e015e890825fbd9f86599b\n(PM: Add support for device power domains), which introduced the\nstruct dev_power_domain type for representing device power domains,\nevidently confuses some developers who tend to think that objects\nof this type must correspond to \"power domains\" as defined by\nhardware, which is not the case.  Namely, at the kernel level, a\nstruct dev_power_domain object can represent arbitrary set of devices\nthat are mutually dependent power management-wise and need not belong\nto one hardware power domain.  To avoid that confusion, rename struct\ndev_power_domain to struct dev_pm_domain and rename the related\npointers in struct device and struct pm_clk_notifier_block from\npwr_domain to pm_domain.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Kevin Hilman \u003ckhilman@ti.com\u003e\n"
    },
    {
      "commit": "4d258b25d947521c8b913154db61ec55198243f8",
      "tree": "4f74f744797e92a0555705dc121ac8aaa041e750",
      "parents": [
        "a64227b0855c42b5c037011afa80580ca3228527"
      ],
      "author": {
        "name": "Vitaliy Ivanov",
        "email": "vitalivanov@gmail.com",
        "time": "Mon Jun 27 19:07:08 2011 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 27 16:06:19 2011 -0700"
      },
      "message": "Fix some kernel-doc warnings\n\nFix \u0027make htmldocs\u0027 warnings:\n\n  Warning(/include/linux/hrtimer.h:153): No description found for parameter \u0027clockid\u0027\n  Warning(/include/linux/device.h:604): Excess struct/union/enum/typedef member \u0027of_match\u0027 description in \u0027device\u0027\n  Warning(/include/net/sock.h:349): Excess struct/union/enum/typedef member \u0027sk_rmem_alloc\u0027 description in \u0027sock\u0027\n\nSigned-off-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f76b168b6f117a49d36307053e1acbe30580ea5b",
      "tree": "2aa0cc19b27764d8eb55ce85eaf226a60ce27756",
      "parents": [
        "78420884e680da8fbc3240de2d3106437042381e"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Sat Jun 18 20:22:23 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jun 21 23:19:50 2011 +0200"
      },
      "message": "PM: Rename dev_pm_info.in_suspend to is_prepared\n\nThis patch (as1473) renames the \"in_suspend\" field in struct\ndev_pm_info to \"is_prepared\", in preparation for an upcoming change.\nThe new name is more descriptive of what the field really means.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "39ab05c8e0b519ff0a04a869f065746e6e8c3d95",
      "tree": "e73f0ba74c4ea7a80dff9b2dd9445a3a74190e28",
      "parents": [
        "1477fcc290b3d5c2614bde98bf3b1154c538860d",
        "c42d2237143fcf35cff642cefe2bcf7786aae312"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:24:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:24:11 2011 -0700"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (44 commits)\n  debugfs: Silence DEBUG_STRICT_USER_COPY_CHECKS\u003dy warning\n  sysfs: remove \"last sysfs file:\" line from the oops messages\n  drivers/base/memory.c: fix warning due to \"memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION\"\n  memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION\n  SYSFS: Fix erroneous comments for sysfs_update_group().\n  driver core: remove the driver-model structures from the documentation\n  driver core: Add the device driver-model structures to kerneldoc\n  Translated Documentation/email-clients.txt\n  RAW driver: Remove call to kobject_put().\n  reboot: disable usermodehelper to prevent fs access\n  efivars: prevent oops on unload when efi is not enabled\n  Allow setting of number of raw devices as a module parameter\n  Introduce CONFIG_GOOGLE_FIRMWARE\n  driver: Google Memory Console\n  driver: Google EFI SMI\n  x86: Better comments for get_bios_ebda()\n  x86: get_bios_ebda_length()\n  misc: fix ti-st build issues\n  params.c: Use new strtobool function to process boolean inputs\n  debugfs: move to new strtobool\n  ...\n\nFix up trivial conflicts in fs/debugfs/file.c due to the same patch\nbeing applied twice, and an unrelated cleanup nearby.\n"
    },
    {
      "commit": "51509a283a908d73b20371addc67ee3ae7189934",
      "tree": "bb920f09799cc47d496f26f7deb78a315351150d",
      "parents": [
        "75f5076b12924f53340209d2cde73b98ed3b3095",
        "6538df80194e305f1b78cafb556f4bb442f808b3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 16:46:07 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 16:46:07 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (34 commits)\n  PM: Introduce generic prepare and complete callbacks for subsystems\n  PM: Allow drivers to allocate memory from .prepare() callbacks safely\n  PM: Remove CONFIG_PM_VERBOSE\n  Revert \"PM / Hibernate: Reduce autotuned default image size\"\n  PM / Hibernate: Add sysfs knob to control size of memory for drivers\n  PM / Wakeup: Remove useless synchronize_rcu() call\n  kmod: always provide usermodehelper_disable()\n  PM / ACPI: Remove acpi_sleep\u003ds4_nonvs\n  PM / Wakeup: Fix build warning related to the \"wakeup\" sysfs file\n  PM: Print a warning if firmware is requested when tasks are frozen\n  PM / Runtime: Rework runtime PM handling during driver removal\n  Freezer: Use SMP barriers\n  PM / Suspend: Do not ignore error codes returned by suspend_enter()\n  PM: Fix build issue in clock_ops.c for CONFIG_PM_RUNTIME unset\n  PM: Revert \"driver core: platform_bus: allow runtime override of dev_pm_ops\"\n  OMAP1 / PM: Use generic clock manipulation routines for runtime PM\n  PM: Remove sysdev suspend, resume and shutdown operations\n  PM / PowerPC: Use struct syscore_ops instead of sysdevs for PM\n  PM / UNICORE32: Use struct syscore_ops instead of sysdevs for PM\n  PM / AVR32: Use struct syscore_ops instead of sysdevs for PM\n  ...\n"
    },
    {
      "commit": "b1608d69cb804e414d0887140ba08a9398e4e638",
      "tree": "8999cd827e7fb4138ff83f7829d8fdcf44ee653d",
      "parents": [
        "01294d82622d6d9d64bde8e4530c7e2c6dbb6ee6"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed May 18 11:19:24 2011 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed May 18 12:32:23 2011 -0600"
      },
      "message": "drivercore: revert addition of of_match to struct device\n\nCommit b826291c, \"drivercore/dt: add a match table pointer to struct\ndevice\" added an of_match pointer to struct device to cache the\nof_match_table entry discovered at driver match time.  This was unsafe\nbecause matching is not an atomic operation with probing a driver.  If\ntwo or more drivers are attempted to be matched to a driver at the\nsame time, then the cached matching entry pointer could get\noverwritten.\n\nThis patch reverts the of_match cache pointer and reworks all users to\ncall of_match_device() directly instead.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "2e711c04dbbf7a7732a3f7073b1fc285d12b369d",
      "tree": "dbc06a3fff744144d7937a205a91fd8ce71585d4",
      "parents": [
        "f5a592f7d74e38c5007876c731e6bf5580072e63"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Apr 26 19:15:07 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 11 21:37:15 2011 +0200"
      },
      "message": "PM: Remove sysdev suspend, resume and shutdown operations\n\nSince suspend, resume and shutdown operations in struct sysdev_class\nand struct sysdev_driver are not used any more, remove them.  Also\ndrop sysdev_suspend(), sysdev_resume() and sysdev_shutdown() used\nfor executing those operations and modify all of their users\naccordingly.  This reduces kernel code size quite a bit and reduces\nits complexity.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "880ffb5c6c5c8c8c6efd9efe9355317322b4603b",
      "tree": "14dcec29fec290e480adec042bfcbb4ede12b005",
      "parents": [
        "3ccff540070b5adde7eec443676cfee1dd6b89fd"
      ],
      "author": {
        "name": "Wanlong Gao",
        "email": "wanlong.gao@gmail.com",
        "time": "Thu May 05 07:55:36 2011 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 06 18:01:05 2011 -0700"
      },
      "message": "driver core: Add the device driver-model structures to kerneldoc\n\nAdd the comments to the structure bus_type, device_driver, device,\nclass to device.h for generating the driver-model kerneldoc. With another patch\nthese all removed from the files in Documentation/driver-model/ since\nthey are out of date. That will keep things up to date and provide a better way\nto document this stuff.\n\nSigned-off-by: Wanlong Gao \u003cwanlong.gao@gmail.com\u003e\nAcked-by: Harry Wei \u003charryxiyou@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "c8705082404823a5bb3e02a32ba0764399b9e6f2",
      "tree": "1853345f3c0ca963365ff9a07fd2d92e09454799",
      "parents": [
        "4a03d6f7c863a039b937649a93341615f531358e"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Wed Apr 20 09:44:46 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Apr 22 17:09:13 2011 -0700"
      },
      "message": "driver core: let dev_set_drvdata return int instead of void as it can fail\n\nBefore commit\n\n\tb402843 (Driver core: move dev_get/set_drvdata to drivers/base/dd.c)\n\ncalling dev_set_drvdata with dev\u003dNULL was an unchecked error. After some\ndiscussion about what to return in this case removing the check (and so\nproducing a null pointer exception) seems fine.\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "aed65af1cc2f6fc9ded5a8158f1405a02cf6d2ff",
      "tree": "fd7051c0d25a6f463db9593a981ca3e558d17b4f",
      "parents": [
        "695cca8763078c743417886e80af8ccb78bec9f2"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Mar 28 09:12:52 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Apr 19 16:45:51 2011 -0700"
      },
      "message": "drivers: make device_type const\n\nThe device_type structure does not contain data that changes\nduring usage and should be const. This allows devices to declare\nthe struct const.\n\nI have patches to change all the subsystems, but need the infra\nstructure change first.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "bcdd323b893ad3c9b7ef26b5e4a0bef974238501",
      "tree": "3a107018f470ec4d7e021d1421ba3688770f473f",
      "parents": [
        "f0e615c3cb72b42191b558c130409335812621d8"
      ],
      "author": {
        "name": "Felipe Balbi",
        "email": "balbi@ti.com",
        "time": "Wed Mar 16 15:59:35 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Apr 19 16:45:50 2011 -0700"
      },
      "message": "device: add dev_WARN_ONCE\n\nit\u0027s quite useful to print the device name\non the stack dump caused by WARN(), but\nthere are other cases where we might want\nto use WARN_ONCE.\n\nIntroduce a helper similar to dev_WARN() for\nthat case too.\n\nSigned-off-by: Felipe Balbi \u003cbalbi@ti.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "d47d81c0e9abdc3c88653fabff5beae82c949b09",
      "tree": "1745f3316996e3cb0a02dcd7af90b88d836b6d17",
      "parents": [
        "e00e56dfd3cf1d209ce630a2b440c91e4a30bbd3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 23 22:16:41 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 23 22:16:41 2011 +0100"
      },
      "message": "Introduce ARCH_NO_SYSDEV_OPS config option (v2)\n\nIntroduce Kconfig option allowing architectures where sysdev\noperations used during system suspend, resume and shutdown have been\ncompletely replaced with struct sycore_ops operations to avoid\nbuilding sysdev code that will never be used.\n\nMake callbacks in struct sys_device and struct sysdev_driver depend\non ARCH_NO_SYSDEV_OPS to allows us to verify if all of the references\nhave been actually removed from the code the given architecture\ndepends on.\n\nMake x86 select ARCH_NO_SYSDEV_OPS.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "4c5811bf463b0ef82fabbd1708f8bb2d753aeb18",
      "tree": "ff37d31217c3804ca05de21a55a9b5ca1ca818b2",
      "parents": [
        "f74b9444192c60603020c61d7915b72893137edc",
        "9f15444fefdb33509132ff5c9be60cb315c44cb2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 17:28:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 17:28:10 2011 -0700"
      },
      "message": "Merge branch \u0027devicetree/next\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027devicetree/next\u0027 of git://git.secretlab.ca/git/linux-2.6: (21 commits)\n  tty: serial: altera_jtaguart: Add device tree support\n  tty: serial: altera_uart: Add devicetree support\n  dt: eliminate of_platform_driver shim code\n  dt: Eliminate of_platform_{,un}register_driver\n  dt/serial: Eliminate users of of_platform_{,un}register_driver\n  dt/usb: Eliminate users of of_platform_{,un}register_driver\n  dt/video: Eliminate users of of_platform_{,un}register_driver\n  dt/net: Eliminate users of of_platform_{,un}register_driver\n  dt/sound: Eliminate users of of_platform_{,un}register_driver\n  dt/spi: Eliminate users of of_platform_{,un}register_driver\n  dt: uartlite: merge platform and of_platform driver bindings\n  dt: xilinx_hwicap: merge platform and of_platform driver bindings\n  ipmi: convert OF driver to platform driver\n  leds/leds-gpio: merge platform_driver with of_platform_driver\n  dt/sparc: Eliminate users of of_platform_{,un}register_driver\n  dt/powerpc: Eliminate users of of_platform_{,un}register_driver\n  dt/powerpc: move of_bus_type infrastructure to ibmebus\n  drivercore/dt: add a match table pointer to struct device\n  dt: Typo fix.\n  altera_ps2: Add devicetree support\n  ...\n"
    },
    {
      "commit": "fc82e1d59a24cbac01c49d4eb3b28d6abc26a5f4",
      "tree": "5e01479d69e69dbbe483044b39afd2aa99d4f2b2",
      "parents": [
        "48d5f6731837f0ec9a0e19ca763aa17d58385a98",
        "bea3864fb627d110933cfb8babe048b63c4fc76e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 09:24:44 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 09:24:44 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (21 commits)\n  PM / Hibernate: Reduce autotuned default image size\n  PM / Core: Introduce struct syscore_ops for core subsystems PM\n  PM QoS: Make pm_qos settings readable\n  PM / OPP: opp_find_freq_exact() documentation fix\n  PM: Documentation/power/states.txt: fix repetition\n  PM: Make system-wide PM and runtime PM treat subsystems consistently\n  PM: Simplify kernel/power/Kconfig\n  PM: Add support for device power domains\n  PM: Drop pm_flags that is not necessary\n  PM: Allow pm_runtime_suspend() to succeed during system suspend\n  PM: Clean up PM_TRACE dependencies and drop unnecessary Kconfig option\n  PM: Remove CONFIG_PM_OPS\n  PM: Reorder power management Kconfig options\n  PM: Make CONFIG_PM depend on (CONFIG_PM_SLEEP || CONFIG_PM_RUNTIME)\n  PM / ACPI: Remove references to pm_flags from bus.c\n  PM: Do not create wakeup sysfs files for devices that cannot wake up\n  USB / Hub: Do not call device_set_wakeup_capable() under spinlock\n  PM: Use appropriate printk() priority level in trace.c\n  PM / Wakeup: Don\u0027t update events_check_enabled in pm_get_wakeup_count()\n  PM / Wakeup: Make pm_save_wakeup_count() work as documented\n  ...\n"
    },
    {
      "commit": "7538e3db6e015e890825fbd9f8659952896ddd5b",
      "tree": "01a6d8c97599474d9c5fc1ed0eb6f0addaec5652",
      "parents": [
        "6831c6edc7b272a08dd2a6c71bb183a48fe98ae6"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Feb 16 21:53:17 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Mar 15 00:43:16 2011 +0100"
      },
      "message": "PM: Add support for device power domains\n\nThe platform bus type is often used to handle Systems-on-a-Chip (SoC)\nwhere all devices are represented by objects of type struct\nplatform_device.  In those cases the same \"platform\" device driver\nmay be used with multiple different system configurations, but the\nactions needed to put the devices it handles into a low-power state\nand back into the full-power state may depend on the design of the\ngiven SoC.  The driver, however, cannot possibly include all the\ninformation necessary for the power management of its device on all\nthe systems it is used with.  Moreover, the device hierarchy in its\ncurrent form also is not suitable for representing this kind of\ninformation.\n\nThe patch below attempts to address this problem by introducing\nobjects of type struct dev_power_domain that can be used for\nrepresenting power domains within a SoC.  Every struct\ndev_power_domain object provides a sets of device power\nmanagement callbacks that can be used to perform what\u0027s needed for\ndevice power management in addition to the operations carried out by\nthe device\u0027s driver and subsystem.\n\nNamely, if a struct dev_power_domain object is pointed to by the\npwr_domain field in a struct device, the callbacks provided by its\nops member will be executed in addition to the corresponding\ncallbacks provided by the device\u0027s subsystem and driver during all\npower transitions.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nTested-and-acked-by: Kevin Hilman \u003ckhilman@ti.com\u003e\n"
    },
    {
      "commit": "b826291c14c396e7aa5d84523aafac117f430902",
      "tree": "ebabdbe338cfef0d31fc3f5d77c23f264215eede",
      "parents": [
        "3d6b88282751a3329d7b041a8d18db87641db9e8"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Feb 17 02:37:15 2011 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Feb 28 01:36:38 2011 -0700"
      },
      "message": "drivercore/dt: add a match table pointer to struct device\n\nAdd a new .of_match field to struct device which points at the\nmatching device driver .of_match_table entry when a device is probed\nvia the device tree\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "c9e358dfc4a8cb2227172ef77908c2e0ee17bcb9",
      "tree": "0bba0d79151fc7fab5feb6f9507ec9748b2ba587",
      "parents": [
        "c56eb8fb6dccb83d9fe62fd4dc00c834de9bc470"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Jan 21 09:24:48 2011 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri Jan 21 09:24:48 2011 -0700"
      },
      "message": "driver-core: remove conditionals around devicetree pointers\n\nHaving conditional around the of_match_table and the of_node pointers\nturns out to make driver code use ugly #ifdef blocks.  Drop the\nconditionals and remove the #ifdef blocks from the affected drivers.\n\nAlso tidy up minor whitespace issues within the same hunks.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e54be894eae10eca9892e965cc9532f5d5a11767",
      "tree": "27ace4446e42058ef4813a34bf63b55a870e7a12",
      "parents": [
        "949f6711b83d2809d1ccb9d830155a65fdacdff9",
        "c6c0ac664c86ff6408fadbed4913938c8a732e26"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 10 16:10:33 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 10 16:10:33 2011 -0800"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:\n  driver core: Document that device_rename() is only for networking\n  sysfs: remove useless test from sysfs_merge_group\n  driver-core: merge private parts of class and bus\n  driver core: fix whitespace in class_attr_string\n"
    },
    {
      "commit": "facc7a96d443d84060a8679c3fcc51d20d4981c3",
      "tree": "e2d633b07766609aedac0708adcde2bc2e37e68a",
      "parents": [
        "c8940eca75e6d1ea57f6c491a30bd1023c64c9ad",
        "4ead36407b41eae942c8c9f70ef963cd369c90e2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 10 08:15:37 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 10 08:15:37 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (34 commits)\n  HID: roccat: Update sysfs attribute doc\n  HID: roccat: don\u0027t use #pragma pack\n  HID: roccat: Add support for Roccat Kone[+] v2\n  HID: roccat: reduce number of functions in kone and pyra drivers\n  HID: roccat: declare meaning of pack pragma usage in driver headers\n  HID: roccat: use class for char device for sysfs attribute creation\n  sysfs: Introducing binary attributes for struct class\n  HID: hidraw: add compatibility ioctl() for 32-bit applications.\n  HID: hid-picolcd: Fix memory leak in picolcd_debug_out_report()\n  HID: picolcd: fix misuse of logical operation in place of bitop\n  HID: usbhid: base runtime PM on modern API\n  HID: replace offsets values with their corresponding BTN_* defines\n  HID: hid-mosart: support suspend/resume\n  HID: hid-mosart: ignore buttons report\n  HID: hid-picolcd: don\u0027t use flush_scheduled_work()\n  HID: simplify an index check in hid_lookup_collection\n  HID: Hoist assigns from ifs\n  HID: Remove superfluous __inline__\n  HID: Use vzalloc for vmalloc/memset(,0...)\n  HID: Add and use hid_\u003clevel\u003e: dev_\u003clevel\u003e equivalents\n  ...\n"
    },
    {
      "commit": "c97415a72521071c235e0879f9a600014afd87b1",
      "tree": "4b71de5a0074f93daf4ddea07888c70c3bcc0eaf",
      "parents": [
        "a7153258b70ccbe3922fcee9ca4271d4f4c2bc55"
      ],
      "author": {
        "name": "Stefan Achatz",
        "email": "erazor_de@users.sourceforge.net",
        "time": "Fri Nov 26 19:57:29 2010 +0000"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Sat Jan 08 01:09:21 2011 +0100"
      },
      "message": "sysfs: Introducing binary attributes for struct class\n\nAdded dev_bin_attrs to struct class similar to existing dev_attrs.\n\nSigned-off-by: Stefan Achatz \u003cerazor_de@users.sourceforge.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "b8c76f6aed0ab7df73a6410f3f82de2c831bb144",
      "tree": "1194ded4c23f62ab253a2e0712cfdd436aa2365b",
      "parents": [
        "5b219a51fdceaf76e0e18da57c7efb9e5586e567"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 16 00:51:21 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Dec 24 15:02:44 2010 +0100"
      },
      "message": "PM: Replace the device power.status field with a bit field\n\nThe device power.status field is too complicated for its purpose\n(storing the information about whether or not the device is in the\n\"active\" state from the PM core\u0027s point of view), so replace it with\na bit field and modify all of its users accordingly.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "6b6e39a6a8da7234c538d14c43d3583da8875f9c",
      "tree": "cef5d25998665559ecc0cad2bcdb947cfa401b67",
      "parents": [
        "14c05aa399e30f343f25158c9adfc44631378a96"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Mon Nov 15 23:13:18 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Nov 17 14:21:08 2010 -0800"
      },
      "message": "driver-core: merge private parts of class and bus\n\nAs classes and busses are pretty much the same thing, and we want to\nmerge them together into a \u0027subsystem\u0027 in the future, let us share the\nsame private data parts to make that merge easier.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e52eec13cd6b7f30ab19081b387813e03e592ae5",
      "tree": "7b327e0b9283c578fb10922edcf6e10b3b8fd943",
      "parents": [
        "39aba963d937edb20db7d9d93e6dda5d2adfdcdd"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Sep 08 16:54:17 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 22 10:16:43 2010 -0700"
      },
      "message": "SYSFS: Allow boot time switching between deprecated and modern sysfs layout\n\nI have some systems which need legacy sysfs due to old tools that are\nmaking assumptions that a directory can never be a symlink to another\ndirectory, and it\u0027s a big hazzle to compile separate kernels for them.\n\nThis patch turns CONFIG_SYSFS_DEPRECATED into a run time option\nthat can be switched on/off the kernel command line. This way\nthe same binary can be used in both cases with just a option\non the command line.\n\nThe old CONFIG_SYSFS_DEPRECATED_V2 option is still there to set\nthe default. I kept the weird name to not break existing\nconfig files.\n\nAlso the compat code can be still completely disabled by undefining\nCONFIG_SYSFS_DEPRECATED_SWITCH -- just the optimizer takes\ncare of this now instead of lots of ifdefs. This makes the code\nlook nicer.\n\nv2: This is an updated version on top of Kay\u0027s patch to only\nhandle the block devices. I tested it on my old systems\nand that seems to work.\n\nCc: axboe@kernel.dk\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6937e8f8c0135f2325194c372ada6dc655499992",
      "tree": "436ede36f95f1cb40d5b9bd8f6711ca26faf0045",
      "parents": [
        "6fd69dc578fa0b1bbc3aad70ae3af9a137211707"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Aug 05 17:38:18 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:35 2010 -0700"
      },
      "message": "driver core: device_rename\u0027s new_name can be const\n\nThe new_name argument to device_rename() can be\nconst as kobject_rename\u0027s new_name argument is.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "45daef0fdcc44f6af86fdebc4fc7eb7c79375398",
      "tree": "95005210c9d1c726b5d2d36689b218be0255ce5c",
      "parents": [
        "600c20f34f645adf7884277302b10601583aa7d5"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@opensource.se",
        "time": "Fri Jul 23 19:56:18 2010 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:35 2010 -0700"
      },
      "message": "Driver core: Add BUS_NOTIFY_BIND_DRIVER\n\nAdd BUS_NOTIFY_BIND_DRIVER as a bus notifier event.\n\nFor driver binding/unbinding we with this in\nplace have the following bus notifier events:\n - BUS_NOTIFY_BIND_DRIVER - before -\u003eprobe()\n - BUS_NOTIFY_BOUND_DRIVER - after -\u003eprobe()\n - BUS_NOTIFY_UNBIND_DRIVER - before -\u003eremove()\n - BUS_NOTIFY_UNBOUND_DRIVER - after -\u003eremove()\n\nThe event BUS_NOTIFY_BIND_DRIVER allows bus code\nto be notified that -\u003eprobe() is about to be called.\n\nUseful for bus code that needs to setup hardware before\nthe driver gets to run. With this in place platform\ndrivers can be loaded and unloaded as modules and the\nnew BIND event allows bus code to control for instance\ndevice clocks that must be enabled before the driver\ncan be executed.\n\nWithout this patch there is no way for the bus code to\nget notified that a modular driver is about to be probed.\n\nSigned-off-by: Magnus Damm \u003cdamm@opensource.se\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "cc7447a5fa92759b0856d6a83ba2539c6a94e67e",
      "tree": "18539a44c9767e90eea18f532509b8222b0a750d",
      "parents": [
        "ed1d218c95c6846416ddb39085b20a5b3c0872e4"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Wed Jun 16 11:44:18 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:33 2010 -0700"
      },
      "message": "Driver core: Drop __must_check from bus_for_each_drv()\n\nThere is little rationale for marking bus_for_each_drv() __must_check.\nIt is more of an iteration helper than a real function. You don\u0027t know\nin advance which callback it will be used on, so you have no clue how\nimportant it can be to check the returned value. In practice, this\nhelper function can be used for best-effort tasks.\n\nAs a matter of fact, bus_for_each_dev() is not marked __must_check.\nSo remove it from bus_for_each_drv() as well. This is the same that\nwas done back in October 2006 by Russell King for\ndevice_for_each_child(), for exactly the same reasons.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "99bcf217183e02ebae46373896fba7f12d588001",
      "tree": "03210a8c57e33b2b5073f80f9a7f818c84f4c83a",
      "parents": [
        "7db6f5fb65a82af03229eef104dc9899c5eecf33"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Jun 27 01:02:34 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 04 10:40:17 2010 -0700"
      },
      "message": "device.h drivers/base/core.c Convert dev_\u003clevel\u003e logging macros to functions\n\nReduces an x86 defconfig text and data ~55k, .6% smaller.\n\n$ size vmlinux*\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n7205273\t 716016\t1366288\t9287577\t 8db799\tvmlinux\n7258890\t 719768\t1366288\t9344946\t 8e97b2\tvmlinux.master\n\nUses %pV and struct va_format\nFormat arguments are verified before printk\n\nThe dev_info macro is converted to _dev_info because there are\nexisting uses of variables named dev_info in the kernel tree\nlike drivers/net/pcmcia/pcnet_cs.c\n\nA dev_info macro is created to call _dev_info\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf9b59e9d3e008591d1f54830f570982bb307a0d",
      "tree": "113478ce8fd8c832ba726ffdf59b82cb46356476",
      "parents": [
        "44504b2bebf8b5823c59484e73096a7d6574471d",
        "f4b87dee923342505e1ddba8d34ce9de33e75050"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat May 22 00:36:56 2010 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat May 22 00:36:56 2010 -0600"
      },
      "message": "Merge remote branch \u0027origin\u0027 into secretlab/next-devicetree\n\nMerging in current state of Linus\u0027 tree to deal with merge conflicts and\nbuild failures in vio.c after merge.\n\nConflicts:\n\tdrivers/i2c/busses/i2c-cpm.c\n\tdrivers/i2c/busses/i2c-mpc.c\n\tdrivers/net/gianfar.c\n\nAlso fixed up one line in arch/powerpc/kernel/vio.c to use the\ncorrect node pointer.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "597b9d1e44e9ba69f2454a5318bbe7a6d5e6930a",
      "tree": "373f1f1387143b0ea8811ca6e2a6812f0a86d933",
      "parents": [
        "173b3a7a059a6998a6c0733710818c473cc0de4c"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Apr 13 16:13:01 2010 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat May 22 00:10:40 2010 -0600"
      },
      "message": "drivercore: Add of_match_table to the common device drivers\n\nOF-style matching can be available to any device, on any type of bus.\nThis patch allows any driver to provide an OF match table when CONFIG_OF\nis enabled so that drivers can be bound against devices described in\nthe device tree.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "bc451f2058238013e1cdf4acd443c01734d332f0",
      "tree": "16a1ca2f762edcfbda8f2a4afb6763ba7b090271",
      "parents": [
        "ba514a57f5c38d9d79ea15e75059e07f49238726"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Mar 30 11:31:25 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:31 2010 -0700"
      },
      "message": "kobj: Add basic infrastructure for dealing with namespaces.\n\nMove complete knowledge of namespaces into the kobject layer\nso we can use that information when reporting kobjects to\nuserspace.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3142788b7967ccfd2f1813ee9e11aeb1e1cf7de2",
      "tree": "292a6e3a21e237789c91a8d0ccd021321990a265",
      "parents": [
        "190e8370b8033f746db5289e9324174564a6f5a7"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jan 29 20:39:02 2010 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:30 2010 -0700"
      },
      "message": "drivers/base: Convert dev-\u003esem to mutex\n\nThe semaphore is semantically a mutex. Convert it to a real mutex and\nfix up a few places where code was relying on semaphore.h to be included\nby device.h, as well as the users of the trylock function, as that value\nis now reversed.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d706c1b050274b3bf97d7cb0542c0d070c9ccb8b",
      "tree": "9104c28f9028589cc4b95d8846dfc3288dcbf289",
      "parents": [
        "efb2e014fc4f2675011b802e1a84bf9a58756004"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Apr 13 16:12:28 2010 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Apr 28 18:20:57 2010 -0600"
      },
      "message": "driver-core: Add device node pointer to struct device\n\nCurrently, platforms using CONFIG_OF add a \u0027struct device_node *of_node\u0027\nto dev-\u003earchdata.  However, with CONFIG_OF becoming generic for all\narchitectures, it makes sense for commonality to move it out of archdata\nand into struct device proper.\n\nThis patch adds a struct device_node *of_node member to struct device\nand updates all locations which currently write the device_node pointer\ninto archdata to also update dev-\u003eof_node.  Subsequent patches will\nmodify callers to use the archdata location and ultimately remove\nthe archdata member entirely.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCC: Michal Simek \u003cmonstr@monstr.eu\u003e\nCC: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCC: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCC: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCC: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCC: Jeremy Kerr \u003cjeremy.kerr@canonical.com\u003e\nCC: microblaze-uclinux@itee.uq.edu.au\nCC: linux-kernel@vger.kernel.org\nCC: linuxppc-dev@ozlabs.org\nCC: sparclinux@vger.kernel.org\n"
    },
    {
      "commit": "a636ee7fb35b731ba2b331f6294e809bb6be09c8",
      "tree": "cff3b2505cb6dcee3a8babbb6347dfab13f185cc",
      "parents": [
        "57d54889cd00db2752994b389ba714138652e60c"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Mar 09 06:57:53 2010 +0000"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Wed Mar 10 13:08:32 2010 +0900"
      },
      "message": "driver core: Early dev_name() support.\n\nPresently early platform devices suffer from the fact they are unable to\nuse dev_xxx() calls early on due to dev_name() and others being\nunavailable at the time -\u003eprobe() is called.\n\nThis implements early init_name construction from the matched name/id\npair following the semantics of the late device/driver match. As a\nresult, matched IDs (inclusive of requested ones) are preserved when the\nhandoff from the early platform code happens at kobject initialization\ntime.\n\nSince we still require kmalloc slabs to be available at this point, using\nkstrdup() for establishing the init_name works fine. This subsequently\nneeds to be tested from dev_name() prior to the init_name being cleared\nby the driver core. We don\u0027t kfree() since others will already have a\nhandle on the string long before the kobject initialization takes place.\n\nThis is also needed to permit drivers to use the clock framework early,\nwithout having to manually construct their own device IDs from the match\nid/name pair locally (needed by the early console and timer code on sh\nand arm).\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "8e9394ce2412254ec69fd2a4f3e44a66eade2297",
      "tree": "355f25148b4ce3f5cfebeaf0939d71cb6beaf88b",
      "parents": [
        "62e877b893e6350c900d381f353aa62ed48dcc97"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Feb 17 10:57:05 2010 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:52 2010 -0800"
      },
      "message": "Driver core: create lock/unlock functions for struct device\n\nIn the future, we are going to be changing the lock type for struct\ndevice (once we get the lockdep infrastructure properly worked out)  To\nmake that changeover easier, and to possibly burry the lock in a\ndifferent part of struct device, let\u0027s create some functions to lock and\nunlock a device so that no out-of-core code needs to be changed in the\nfuture.\n\nThis patch creates the device_lock/unlock/trylock() functions, and\nconverts all in-tree users to them.\n\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Dave Young \u003chidave.darkstar@gmail.com\u003e\nCc: Ming Lei \u003ctom.leiming@gmail.com\u003e\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCc: Phil Carmody \u003cext-phil.2.carmody@nokia.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Magnus Damm \u003cdamm@igel.co.jp\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Alex Chiang \u003cachiang@hp.com\u003e\nCc: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Andrew Patterson \u003candrew.patterson@hp.com\u003e\nCc: Yu Zhao \u003cyu.zhao@intel.com\u003e\nCc: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nCc: Samuel Ortiz \u003csameo@linux.intel.com\u003e\nCc: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nCc: CHENG Renquan \u003crqcheng@smu.edu.sg\u003e\nCc: Oliver Neukum \u003coliver@neukum.org\u003e\nCc: Frans Pop \u003celendil@planet.nl\u003e\nCc: David Vrabel \u003cdavid.vrabel@csr.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "869dfc875e32fd832385fd52ce54525a10401ed6",
      "tree": "39885759145d7f7c5137fd5e5259181c064ba34c",
      "parents": [
        "28812fe11a21826ba4c97c6c7971a619987cd912"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:48:08 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:48 2010 -0800"
      },
      "message": "driver core: Add class_attr_string for simple read-only string\n\nSeveral drivers just export a static string as class attributes.\n\nUse the new extensible attribute support to define a simple\nCLASS_ATTR_STRING() macro for this.\n\nThis will allow to remove code from drivers in followon patches.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "28812fe11a21826ba4c97c6c7971a619987cd912",
      "tree": "c78daefd595989bbc660ea48d8bc2dc5750321d3",
      "parents": [
        "5fbcae57db69128c14080a7a5a42d0626bfe155c"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:48:07 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:48 2010 -0800"
      },
      "message": "driver-core: Add attribute argument to class_attribute show/store\n\nPassing the attribute to the low level IO functions allows all kinds\nof cleanups, by sharing low level IO code without requiring\nan own function for every piece of data.\n\nAlso drivers can extend the attributes with own data fields\nand use that in the low level function.\n\nThis makes the class attributes the same as sysdev_class attributes\nand plain attributes.\n\nThis will allow further cleanups in drivers.\n\nFull tree sweep converting all users.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "5a2eb8585f3b38e01e30aacaa8b985a1520a993d",
      "tree": "471b33cc48cf48ed491e8b3f2934bfb3fa9e81e1",
      "parents": [
        "0e06b4a891c6a108412fe24b4500f499da2cf8a1"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 23 22:25:23 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Feb 26 20:39:10 2010 +0100"
      },
      "message": "PM: Add facility for advanced testing of async suspend/resume\n\nAdd configuration switch CONFIG_PM_ADVANCED_DEBUG for compiling in\nextra PM debugging/testing code allowing one to access some\nPM-related attributes of devices from the user space via sysfs.\n\nIf CONFIG_PM_ADVANCED_DEBUG is set, add sysfs attribute power/async\nfor every device allowing the user space to access the device\u0027s\npower.async_suspend flag and modify it, if desired.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "5af84b82701a96be4b033aaa51d86c72e2ded061",
      "tree": "ac5751c7d2e9c17bf41dabdbeba964a05f09af18",
      "parents": [
        "8cc6b39ff36b4bbce2d7471da088df122b0e9033"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 23 22:23:32 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Feb 26 20:39:09 2010 +0100"
      },
      "message": "PM: Asynchronous suspend and resume of devices\n\nTheoretically, the total time of system sleep transitions (suspend\nto RAM, hibernation) can be reduced by running suspend and resume\ncallbacks of device drivers in parallel with each other.  However,\nthere are dependencies between devices such that we\u0027re not allowed\nto suspend the parent of a device before suspending the device\nitself.  Analogously, we\u0027re not allowed to resume a device before\nresuming its parent.\n\nThe most straightforward way to take these dependencies into accout\nis to start the async threads used for suspending and resuming\ndevices at the core level, so that async_schedule() is called for\neach suspend and resume callback supposed to be executed\nasynchronously.\n\nFor this purpose, introduce a new device flag, power.async_suspend,\nused to mark the devices whose suspend and resume callbacks are to be\nexecuted asynchronously (ie. in parallel with the main suspend/resume\nthread and possibly in parallel with each other) and helper function\ndevice_enable_async_suspend() allowing one to set power.async_suspend\nfor given device (power.async_suspend is unset by default for all\ndevices).  For each device with the power.async_suspend flag set the\nPM core will use async_schedule() to execute its suspend and resume\ncallbacks.\n\nThe async threads started for different devices as a result of\ncalling async_schedule() are synchronized with each other and with\nthe main suspend/resume thread with the help of completions, in the\nfollowing way:\n(1) There is a completion, power.completion, for each device object.\n(2) Each device\u0027s completion is reset before calling async_schedule()\n    for the device or, in the case of devices with the\n    power.async_suspend flags unset, before executing the device\u0027s\n    suspend and resume callbacks.\n(3) During suspend, right before running the bus type, device type\n    and device class suspend callbacks for the device, the PM core\n    waits for the completions of all the device\u0027s children to be\n    completed.\n(4) During resume, right before running the bus type, device type and\n    device class resume callbacks for the device, the PM core waits\n    for the completion of the device\u0027s parent to be completed.\n(5) The PM core completes power.completion for each device right\n    after the bus type, device type and device class suspend (or\n    resume) callbacks executed for the device have returned.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "099c2f21d8cf0724b85abb2c589d6276953781b7",
      "tree": "7f84a98f4b3658871408794a59d04995d5ced254",
      "parents": [
        "66ecb92be9eb579df93add22d19843e7869f168e"
      ],
      "author": {
        "name": "Phil Carmody",
        "email": "ext-phil.2.carmody@nokia.com",
        "time": "Fri Dec 18 15:34:21 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 23 11:23:43 2009 -0800"
      },
      "message": "Driver core: driver_attribute parameters can often be const*\n\nMany struct driver_attribute descriptors are purely read-only\nstructures, and there\u0027s no need to change them. Therefore make\nthe promise not to, which will let those descriptors be put in\na ro section.\n\nSigned-off-by: Phil Carmody \u003cext-phil.2.carmody@nokia.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "66ecb92be9eb579df93add22d19843e7869f168e",
      "tree": "60a8c4ecfd1ccb0743a137ecfbd972888dbd34ce",
      "parents": [
        "26579ab70aa0e0ea434e6e100279d2f67c094431"
      ],
      "author": {
        "name": "Phil Carmody",
        "email": "ext-phil.2.carmody@nokia.com",
        "time": "Fri Dec 18 15:34:20 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 23 11:23:43 2009 -0800"
      },
      "message": "Driver core: bin_attribute parameters can often be const*\n\nMany struct bin_attribute descriptors are purely read-only\nstructures, and there\u0027s no need to change them. Therefore\nmake the promise not to, which will let those descriptors\nbe put in a ro section.\n\nSigned-off-by: Phil Carmody \u003cext-phil.2.carmody@nokia.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "26579ab70aa0e0ea434e6e100279d2f67c094431",
      "tree": "1c9dfd6ed6209ecee088e3e6b600ebd7fba24acc",
      "parents": [
        "8e9b9362266dd16255473c080d846b13e27247bf"
      ],
      "author": {
        "name": "Phil Carmody",
        "email": "ext-phil.2.carmody@nokia.com",
        "time": "Fri Dec 18 15:34:19 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 23 11:23:43 2009 -0800"
      },
      "message": "Driver core: device_attribute parameters can often be const*\n\nMost device_attributes are const, and are begging to be\nput in a ro section. However, the create and remove\nfile interfaces were failing to propagate the const promise\nwhich the only functions they call offer.\n\nSigned-off-by: Phil Carmody \u003cext-phil.2.carmody@nokia.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "073120cc28ad9f6003452c8bb9d15a87b1820201",
      "tree": "e4c523586ad6d77069004d7f51d4ea65a7c507b2",
      "parents": [
        "ed413ae6e7813d3227eef43bc6d84ca4f4fe6b21"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Oct 28 19:51:17 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 11 11:24:51 2009 -0800"
      },
      "message": "Driver Core: devtmpfs: use sys_mount()\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1a6f2a7512021ceae3c4201c7aab07f032e9ce91",
      "tree": "03fdca9848003b3a6fda57113b3e750ec1e22a55",
      "parents": [
        "39acbc12affcaa23ef1d887ba3d197baca8e6e47"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Mon Oct 12 20:17:41 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 30 14:59:51 2009 -0700"
      },
      "message": "Driver core: allow certain drivers prohibit bind/unbind via sysfs\n\nPlatform drivers registered via platform_driver_probe() can be bound\nto devices only once, upon registration, because discard their probe()\nroutines to save memory. Unbinding the driver through sysfs \u0027unbind\u0027\nleaves the device stranded and confuses users so let\u0027s not create\nbind and unbind attributes for such drivers.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nCc: Éric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e454cea20bdcff10ee698d11b8882662a0153a47",
      "tree": "f44581fe57787aef0a4f4dc00993a90ea8e688f6",
      "parents": [
        "78f28b7c555359c67c2a0d23f7436e915329421e"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Sep 18 23:01:12 2009 +0200"
      },
      "committer": {
        "name": "Live-CD User",
        "email": "linux@linux.site",
        "time": "Sat Sep 19 12:50:38 2009 -0700"
      },
      "message": "Driver-Core: extend devnode callbacks to provide permissions\n\nThis allows subsytems to provide devtmpfs with non-default permissions\nfor the device node. Instead of the default mode of 0600, null, zero,\nrandom, urandom, full, tty, ptmx now have a mode of 0666, which allows\nnon-privileged processes to access standard device nodes in case no\nother userspace process applies the expected permissions.\n\nThis also fixes a wrong assignment in pktcdvd and a checkpatch.pl complain.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "2b2af54a5bb6f7e80ccf78f20084b93c398c3a8b",
      "tree": "bb27e3b16a2a8fadeea869033a406f0a19b63e29",
      "parents": [
        "ea5ffff57dce2f4c85ab056f4b0a202f71db2bdf"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Apr 30 15:23:42 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:49 2009 -0700"
      },
      "message": "Driver Core: devtmpfs - kernel-maintained tmpfs-based /dev\n\nDevtmpfs lets the kernel create a tmpfs instance called devtmpfs\nvery early at kernel initialization, before any driver-core device\nis registered. Every device with a major/minor will provide a\ndevice node in devtmpfs.\n\nDevtmpfs can be changed and altered by userspace at any time,\nand in any way needed - just like today\u0027s udev-mounted tmpfs.\nUnmodified udev versions will run just fine on top of it, and will\nrecognize an already existing kernel-created device node and use it.\nThe default node permissions are root:root 0600. Proper permissions\nand user/group ownership, meaningful symlinks, all other policy still\nneeds to be applied by userspace.\n\nIf a node is created by devtmps, devtmpfs will remove the device node\nwhen the device goes away. If the device node was created by\nuserspace, or the devtmpfs created node was replaced by userspace, it\nwill no longer be removed by devtmpfs.\n\nIf it is requested to auto-mount it, it makes init\u003d/bin/sh work\nwithout any further userspace support. /dev will be fully populated\nand dynamic, and always reflect the current device state of the kernel.\nWith the commonly used dynamic device numbers, it solves the problem\nwhere static devices nodes may point to the wrong devices.\n\nIt is intended to make the initial bootup logic simpler and more robust,\nby de-coupling the creation of the inital environment, to reliably run\nuserspace processes, from a complex userspace bootstrap logic to provide\na working /dev.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nTested-By: Harald Hoyer \u003charald@redhat.com\u003e\nTested-By: Scott James Remnant \u003cscott@ubuntu.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4622709445705c1e423d2addcfd8ccae052fe0ba",
      "tree": "c9032374e8f99a5bb9b8b8e012e0a6de4c9c3846",
      "parents": [
        "ccb86a6907c9ba7b5be5f521362fc308e80bed34"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Tue Aug 04 12:55:34 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:48 2009 -0700"
      },
      "message": "Driver core: Add support for compatibility classes\n\nWhen turning class devices into bus devices, we may need to\ntemporarily add links in sysfs so that user-space applications\nare not confused. This is done by adding the following API:\n\n* Functions to register and unregister compatibility classes.\n  These appear in sysfs at the same location as regular classes, but\n  instead of class devices, they contain links to bus devices.\n* Functions to create and delete such links. Additionally, the caller\n  can optionally pass a target device to which a \"device\" link should\n  point (typically that would be the device\u0027s parent), to fully emulate\n  the original class device.\n\nThe i2c subsystem will be the first user of this API, as i2c adapters\nare being converted from class devices to bus devices.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\n\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": "a5b8b1ada6dd76503884f5492b995cd29eefae0f",
      "tree": "5fce8cc942c686fb1ce73a4c714581c389606258",
      "parents": [
        "b4028437876866aba4747a655ede00f892089e14"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jul 17 15:06:08 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:47 2009 -0700"
      },
      "message": "Driver core: Add accessor for device platform data\n\nFor consistency with driver data provide a dev_get_platdata() accessor\nfor reading the platform data from a device.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b4028437876866aba4747a655ede00f892089e14",
      "tree": "f6c34315c3e6d2899a894f028bd6f9899e80cd01",
      "parents": [
        "2023c610dc54a4f4130b0494309a9bd668ca3df8"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon May 11 14:16:57 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:47 2009 -0700"
      },
      "message": "Driver core: move dev_get/set_drvdata to drivers/base/dd.c\n\nNo one should directly access the driver_data field, so remove the field\nand make it private.  We dynamically create the private field now if it\nis needed, to handle drivers that call get/set before they are\nregistered with the driver core.\n\nAlso update the copyright notices on these files while we are there.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8150f32b90f630ad3e460f026ce338cb81685bc9",
      "tree": "691fb27f26e783e39f01d2effb9e35f7f461964f",
      "parents": [
        "11a79260916b00bcfe1bcfbd7a994321ee25b880"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Fri Jul 24 22:11:32 2009 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Fri Jul 24 22:11:32 2009 -0700"
      },
      "message": "Driver Core: Make PM operations a const pointer\n\nThey are not supposed to be modified by drivers, so make them const.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "4ead0a2b6b3aa0b527871ec978c3ef12aafb6bfb",
      "tree": "d1ffedf68fa4c6c5437bd457fa4b561b1b5805f3",
      "parents": [
        "08f42877aff6b966a386c47e0aeb98e7645db2a9"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Jul 02 23:25:44 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Jul 12 13:02:10 2009 -0700"
      },
      "message": "Driver Core: remove BUS_ID_SIZE\n\nThe name size limit is gone from the driver-core, this is\nthe removal of the last left-over.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6fcf53acccf85b4b0d0260e66c692a341760f464",
      "tree": "445f725558bde27492095f8d05cc645315f8c1c1",
      "parents": [
        "acc0e90fbccbc6e4d48184cba0983ea044e131af"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Apr 30 15:23:42 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:25 2009 -0700"
      },
      "message": "Driver Core: add nodename callbacks\n\nThis adds the nodename callback for struct class, struct device_type and\nstruct device, to allow drivers to send userspace hints on the device\nname and subdirectory that should be used for it.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "309b7d60a345f402bec3cf9caadb53de4028e2aa",
      "tree": "1e3a493c6c042155af67e062ac3f722b2cc4c6bd",
      "parents": [
        "6acf70f078ca42a63397b8b84bf6383b01303009"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Apr 24 14:57:00 2009 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:24 2009 -0700"
      },
      "message": "driver core: add BUS_NOTIFY_UNBOUND_DRIVER event\n\nThis patch adds a new bus notifier event which is emitted _after_ a\ndevice is removed from its driver. This event will be used by the\ndma-api debug code to check if a driver has released all dma allocations\nfor that device.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "00725787511e20dbd1fdc1fb233606120ae5c8cf",
      "tree": "82fa3c48aca074a993a122751a2333000e1668a3",
      "parents": [
        "fe419535d82724314bbf1244a0e740e4ea1bd3ae"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Thu Jun 04 22:13:25 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:32 2009 +0200"
      },
      "message": "PM: Remove device_type suspend()/resume()\n\nThis patch removes the legacy callbacks -\u003esuspend() and\n-\u003eresume() from struct device_type. These callbacks seem\nunused, and new code should instead make use of struct\ndev_pm_ops.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "e240b58c79144708530138e05f17c6d0d8d744a8",
      "tree": "c42553ae8ffb034a767cebb0b4876db3528a2e11",
      "parents": [
        "d161630297a20802d01c55847bfcba85d2118a9f"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Sun May 24 22:05:54 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:31 2009 +0200"
      },
      "message": "PM: Remove bus_type suspend_late()/resume_early() V2\n\nRemove the -\u003esuspend_late() and -\u003eresume_early() callbacks\nfrom struct bus_type V2. These callbacks are legacy stuff\nat this point and since there seem to be no in-tree users\nwe may as well remove them. New users should use dev_pm_ops.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "e67c85626cd02e306da1b4195bfaf68d61050796",
      "tree": "c7cccc5780599f668a36f18caa622b1c7469a08a",
      "parents": [
        "bee86321b7b2312fbb62f4cb903eba1cca45e8ad"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 08 23:13:32 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 08 19:22:21 2009 -0700"
      },
      "message": "Revert driver core: move platform_data into platform_device\n\nThis reverts commit 006f4571a15fae3a0575f2a0f9e9b63b3d1012f8:\n\n\tThis patch moves platform_data from struct device into\n\tstruct platform_device, based on the two ideas:\n\n\t1. Now all platform_driver is registered by platform_driver_register,\n\t   which makes probe()/release()/... of platform_driver passed parameter\n\t   of platform_device *, so platform driver can get platform_data from\n\t   platform_device;\n\n\t2. Other kind of devices do not need to use platform_data, we can\n\t   decrease size of device if moving it to platform_device.\n\n\tTaking into consideration of thousands of files to be fixed and they\n\tcan\u0027t be finished in one night(maybe it will take a long time), so we\n\tkeep platform_data in device to allow two kind of cases coexist until\n\tall platform devices pass its platfrom data from\n\tplatform_device-\u003eplatform_data.\n\n\tAll patches to do this kind of conversion are welcome.\n\nAs we don\u0027t really want to do it, it was a bad idea.\n\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "d4d5291c8cd499b1b590336059d5cc3e24c1ced6",
      "tree": "bb4c2ea559001e066bf3355c1e4d82b36cb916d6",
      "parents": [
        "5dd559f020c98a2a4b3e063f09c0e4bc771ed838"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Tue Apr 21 13:32:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 21 19:40:00 2009 -0700"
      },
      "message": "driver synchronization: make scsi_wait_scan more advanced\n\nThere is currently only one way for userspace to say \"wait for my storage\ndevice to get ready for the modules I just loaded\": to load the\nscsi_wait_scan module. Expectations of userspace are that once this\nmodule is loaded, all the (storage) devices for which the drivers\nwere loaded before the module load are present.\n\nNow, there are some issues with the implementation, and the async\nstuff got caught in the middle of this: The existing code only\nwaits for the scsy async probing to finish, but it did not take\ninto account at all that probing might not have begun yet.\n(Russell ran into this problem on his computer and the fix works for him)\n\nThis patch fixes this more thoroughly than the previous \"fix\", which\nhad some bad side effects (namely, for kernel code that wanted to wait for\nthe scsi scan it would also do an async sync, which would deadlock if you did\nit from async context already.. there\u0027s a report about that on lkml):\nThe patch makes the module first wait for all device driver probes, and then it\nwill wait for the scsi parallel scan to finish.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nTested-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e9d376f0fa66bd630fe27403669c6ae6c22a868f",
      "tree": "6eadef32eb421647ae98d88341b9aceb259aaf22",
      "parents": [
        "095160aee954688a9bad225952c4bee546541e19"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Feb 05 11:51:38 2009 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:26 2009 -0700"
      },
      "message": "dynamic debug: combine dprintk and dynamic printk\n\nThis patch combines Greg Bank\u0027s dprintk() work with the existing dynamic\nprintk patchset, we are now calling it \u0027dynamic debug\u0027.\n\nThe new feature of this patchset is a richer /debugfs control file interface,\n(an example output from my system is at the bottom), which allows fined grained\ncontrol over the the debug output. The output can be controlled by function,\nfile, module, format string, and line number.\n\nfor example, enabled all debug messages in module \u0027nf_conntrack\u0027:\n\necho -n \u0027module nf_conntrack +p\u0027 \u003e /mnt/debugfs/dynamic_debug/control\n\nto disable them:\n\necho -n \u0027module nf_conntrack -p\u0027 \u003e /mnt/debugfs/dynamic_debug/control\n\nA further explanation can be found in the documentation patch.\n\nSigned-off-by: Greg Banks \u003cgnb@sgi.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ffa6a7054d172a2f57248dff2de600ca795c5656",
      "tree": "f93c6234bb90295c52fcef09e367ed77ff6c3645",
      "parents": [
        "60530afe1ee8a5532cb09d0ab5bc3f1a6495b780"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Wed Mar 04 12:44:00 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:26 2009 -0700"
      },
      "message": "Driver core: Fix device_move() vs. dpm list ordering, v2\n\ndpm_list currently relies on the fact that child devices will\nbe registered after their parents to get a correct suspend\norder. Using device_move() however destroys this assumption, as\nan already registered device may be moved under a newly registered\none.\n\nThis patch adds a new argument to device_move(), allowing callers\nto specify how dpm_list should be adapted.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f67f129e519fa87f8ebd236b6336fe43f31ee141",
      "tree": "e2832f6d012044f5d05c6130416832235c7d2730",
      "parents": [
        "4995f8ef9d3aac72745e12419d7fbaa8d01b1d81"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Sun Mar 01 21:10:49 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:26 2009 -0700"
      },
      "message": "Driver core: implement uevent suppress in kobject\n\nThis patch implements uevent suppress in kobject and removes it\nfrom struct device, based on the following ideas:\n\n1,Uevent sending should be one attribute of kobject, so suppressing it\nin kobject layer is more natural than in device layer. By this way,\nwe can do it for other objects embedded with kobject.\n\n2,It may save several bytes for each instance of struct device.(On my\nomap3(32bit ARM) based box, can save 8bytes per device object)\n\nThis patch also introduces dev_set|get_uevent_suppress() helpers to\nset and query uevent_suppress attribute in case to help kobject\nas private part of struct device in future.\n\n[This version is against the latest driver-core patch set of Greg,please\nignore the last version.]\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "006f4571a15fae3a0575f2a0f9e9b63b3d1012f8",
      "tree": "22c2e30f830b0440032c1347b13bf96734a76022",
      "parents": [
        "e0edd3c65aa5b53e20280565a7ce11675eb7ed6b"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Sun Mar 08 23:13:32 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:26 2009 -0700"
      },
      "message": "driver core: move platform_data into platform_device\n\nThis patch moves platform_data from struct device into\nstruct platform_device, based on the two ideas:\n\n1. Now all platform_driver is registered by platform_driver_register,\n   which makes probe()/release()/... of platform_driver passed parameter\n   of platform_device *, so platform driver can get platform_data from\n   platform_device;\n\n2. Other kind of devices do not need to use platform_data, we can\n   decrease size of device if moving it to platform_device.\n\nTaking into consideration of thousands of files to be fixed and they\ncan\u0027t be finished in one night(maybe it will take a long time), so we\nkeep platform_data in device to allow two kind of cases coexist until\nall platform devices pass its platfrom data from\nplatform_device-\u003eplatform_data.\n\nAll patches to do this kind of conversion are welcome.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ae1b41715ee2aae356fbcca032838b71d70b855f",
      "tree": "d053c68c0d15a219d58298ebb020b8b6bcfcff8b",
      "parents": [
        "8940b4f312dced51b45004819b776ec3aa7fcd5d"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Dec 16 12:26:21 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:25 2009 -0700"
      },
      "message": "driver core: move knode_bus into private structure\n\nNothing outside of the driver core should ever touch knode_bus, so\nmove it out of the public eye.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8940b4f312dced51b45004819b776ec3aa7fcd5d",
      "tree": "f994df6952a12ad5a3b46762e8a53eaa99f215b6",
      "parents": [
        "f791b8c836307b58cbf62133a6a772ed1a92fb33"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Dec 16 12:25:49 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:25 2009 -0700"
      },
      "message": "driver core: move knode_driver into private structure\n\nNothing outside of the driver core should ever touch knode_driver, so\nmove it out of the public eye.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f791b8c836307b58cbf62133a6a772ed1a92fb33",
      "tree": "db4e3eb6c7f90e43f4aa73009a14e285014b349a",
      "parents": [
        "fb069a5d132fb926ed17af3211a114ac7cf27d7a"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Dec 16 12:24:56 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:25 2009 -0700"
      },
      "message": "driver core: move klist_children into private structure\n\nNothing outside of the driver core should ever touch klist_children, or\nknode_parent, so move them out of the public eye.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "fb069a5d132fb926ed17af3211a114ac7cf27d7a",
      "tree": "c104d9df7c83c27e3785265fb7412fd9332bc10a",
      "parents": [
        "b23530ebc339c4092ae2c9f37341a5398fea8b89"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Dec 16 12:23:36 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:25 2009 -0700"
      },
      "message": "driver core: create a private portion of struct device\n\nThis is to be used to move things out of struct device that no code\noutside of the driver core should ever touch.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b23530ebc339c4092ae2c9f37341a5398fea8b89",
      "tree": "c8f45452c649273271ac292715d4a76baa5e9148",
      "parents": [
        "04256b4a8fc73f54cd14f20867882c299728a446"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Sat Feb 21 16:45:07 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:25 2009 -0700"
      },
      "message": "driver core: remove polling for driver_probe_done(v5)\n\nThis patch removes 100ms polling for driver_probe_done in\nwait_for_device_probe(), and uses wait_event() instead.\nRemoving polling in fs initialization may lead to\na faster boot.\n\nThis patch also changes the return type of wait_for_device_done()\nfrom int to void.\n\nThis patch is against Arjan\u0027s patch in linux-next tree.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nAcked-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nReviewed-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1fa5ae857bb14f6046205171d98506d8112dd74e",
      "tree": "218821345d2c9394bd6184bdb0cd0cb2f1f30d4c",
      "parents": [
        "6866ac9db02ac1ec71f2aa720a1019581f69a725"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Sun Jan 25 15:17:37 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:23 2009 -0700"
      },
      "message": "driver core: get rid of struct device\u0027s bus_id string array\n\nNow that all users of bus_id is gone, we can remove it from struct\ndevice.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "216773a787c3c46ef26bf1742c1fdba37d26be45",
      "tree": "aac387553fd53cb0c06b5cc2ee86329ce793bed6",
      "parents": [
        "d2f8d7ee1a9b4650b4e43325b321801264f7c37a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Feb 14 01:59:06 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:17 2009 -0800"
      },
      "message": "Consolidate driver_probe_done() loops into one place\n\nthere\u0027s a few places that currently loop over driver_probe_done(), and\nI\u0027m about to add another one. This patch abstracts it into a helper\nto reduce duplication.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nAcked-by: Greg KH \u003cgregkh@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "926beadb3dfaddccb3348a5b9e6c2a1f8290a220",
      "tree": "97e2005e61e33635315eb7cfc991a8952a4d38f0",
      "parents": [
        "e2d4077678c7ec7661003c268120582adc544897"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 09 15:06:12 2009 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 09 15:06:12 2009 -0800"
      },
      "message": "Revert \"driver core: create a private portion of struct device\"\n\nThis reverts commit 2831fe6f9cc4e16c103504ee09a47a084297c0f3.\n\nTurns out that device_initialize shouldn\u0027t fail silently.\nThis series needs to be reworked in order to get into proper\nshape.\n\nReported-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e2d4077678c7ec7661003c268120582adc544897",
      "tree": "73397637de1d8274ae3f908a9534634afc9ea903",
      "parents": [
        "cda5e83fdea476dce9c0a9b1152cd6ca46832cc4"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 09 14:55:37 2009 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 09 14:55:37 2009 -0800"
      },
      "message": "Revert \"driver core: move klist_children into private structure\"\n\nThis reverts commit 11c3b5c3e08f4d855cbef52883c266b9ab9df879.\n\nTurns out that device_initialize shouldn\u0027t fail silently.\nThis series needs to be reworked in order to get into proper\nshape.\n\nReported-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "cda5e83fdea476dce9c0a9b1152cd6ca46832cc4",
      "tree": "38095e8b88c8c163cb8b61e8f071d444752fad6b",
      "parents": [
        "4db8e282f2d1dfa43d51ce2a4817901312c9134d"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 09 14:44:18 2009 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 09 14:44:18 2009 -0800"
      },
      "message": "Revert \"driver core: move knode_driver into private structure\"\n\nThis reverts commit 93e746db183b3bdbbda67900f79b5835f9cb388f.\n\nTurns out that device_initialize shouldn\u0027t fail silently.\nThis series needs to be reworked in order to get into proper\nshape.\n\nReported-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "4db8e282f2d1dfa43d51ce2a4817901312c9134d",
      "tree": "c2d2ee15e5d74186ad79220035b222df7c8330c5",
      "parents": [
        "73d59314e6ed268d6f322ae1bdd723b23fa5a4ed"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 09 14:32:46 2009 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 09 14:32:46 2009 -0800"
      },
      "message": "Revert \"driver core: move knode_bus into private structure\"\n\nThis reverts commit b9daa99ee533578e3f88231e7a16784dcb44ec42.\n\nTurns out that device_initialize shouldn\u0027t fail silently.\nThis series needs to be reworked in order to get into proper\nshape.\n\nReported-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "0aa0dc41bfd993491c2344870eee7a3b218551fb",
      "tree": "bf0896c7e0bb9f5b7e6253fc15c8846b6f188d08",
      "parents": [
        "7232800ba8aca1c070d43a81cc49991f230b5da1"
      ],
      "author": {
        "name": "Mark McLoughlin",
        "email": "markmc@redhat.com",
        "time": "Mon Dec 15 12:58:26 2008 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 06 10:44:33 2009 -0800"
      },
      "message": "driver core: add root_device_register()\n\nAdd support for allocating root device objects which group\ndevice objects under /sys/devices directories.\n\nAlso add a sysfs \u0027module\u0027 symlink which points to the owner\nof the root device object. This symlink will be used in virtio\nto allow userspace to determine which virtio bus implementation\na given device is associated with.\n\n[Includes suggestions from Cornelia Huck]\n\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d0d85ff989222f08dd1fa66321fef5567bbc4a7b",
      "tree": "77af68b3dcd51d95c231025dcb3e4dd3bd21b285",
      "parents": [
        "b9daa99ee533578e3f88231e7a16784dcb44ec42"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Dec 04 16:55:47 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 06 10:44:33 2009 -0800"
      },
      "message": "Make DEBUG take precedence over DYNAMIC_PRINTK_DEBUG\n\nStatically defined DEBUG should take precedence over\ndynamically enabled debugging; otherwise adding DEBUG\n(like, for example, via CONFIG_DEBUG_KOBJECT) does not\nhave the expected result of printing pr_debug() and dev_dbg()\nmessages unconditionally.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b9daa99ee533578e3f88231e7a16784dcb44ec42",
      "tree": "10f572ac695927866ec8293efdf4b937c11c4597",
      "parents": [
        "93e746db183b3bdbbda67900f79b5835f9cb388f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Dec 16 12:26:21 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 06 10:44:33 2009 -0800"
      },
      "message": "driver core: move knode_bus into private structure\n\nNothing outside of the driver core should ever touch knode_bus, so\nmove it out of the public eye.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "93e746db183b3bdbbda67900f79b5835f9cb388f",
      "tree": "658cb2c8cac313b7e2cc94f914dac52996432c93",
      "parents": [
        "11c3b5c3e08f4d855cbef52883c266b9ab9df879"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Dec 16 12:25:49 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 06 10:44:32 2009 -0800"
      },
      "message": "driver core: move knode_driver into private structure\n\nNothing outside of the driver core should ever touch knode_driver, so\nmove it out of the public eye.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "11c3b5c3e08f4d855cbef52883c266b9ab9df879",
      "tree": "43278db9cb198f3800eaa73c3c051d875c92709d",
      "parents": [
        "2831fe6f9cc4e16c103504ee09a47a084297c0f3"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Dec 16 12:24:56 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 06 10:44:32 2009 -0800"
      },
      "message": "driver core: move klist_children into private structure\n\nNothing outside of the driver core should ever touch klist_children, or\nknode_parent, so move them out of the public eye.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    }
  ],
  "next": "2831fe6f9cc4e16c103504ee09a47a084297c0f3"
}
