)]}'
{
  "log": [
    {
      "commit": "7ee92255470daa0edb93866aec6e27534cd9a177",
      "tree": "07dd62d172fc6c174ae5bbe697851a36b2a1e43d",
      "parents": [
        "9a5b489b870def9a93f5e89dac03ebe136f901db"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:50 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "drivers/base/node.c: reduce stack usage of node_read_meminfo()\n\n\tdrivers/base/node.c: In function \u0027node_read_meminfo\u0027:\n\tdrivers/base/node.c:139: warning: the frame size of 848 bytes is\n\tlarger than 512 bytes\n\nFix it by splitting the sprintf() into three parts.  It has no functional\nchange.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ab69bcd66fb4be64edfc767365cb9eb084961246",
      "tree": "f7623585aee58978fc7814460fff517ec39138f2",
      "parents": [
        "c513b67e68787eceafeede32bcd0edbee45c0006",
        "6937e8f8c0135f2325194c372ada6dc655499992"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 11:36:30 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 11:36:30 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (28 commits)\n  driver core: device_rename\u0027s new_name can be const\n  sysfs: Remove owner field from sysfs struct attribute\n  powerpc/pci: Remove owner field from attribute initialization in PCI bridge init\n  regulator: Remove owner field from attribute initialization in regulator core driver\n  leds: Remove owner field from attribute initialization in bd2802 driver\n  scsi: Remove owner field from attribute initialization in ARCMSR driver\n  scsi: Remove owner field from attribute initialization in LPFC driver\n  cgroupfs: create /sys/fs/cgroup to mount cgroupfs on\n  Driver core: Add BUS_NOTIFY_BIND_DRIVER\n  driver core: fix memory leak on one error path in bus_register()\n  debugfs: no longer needs to depend on SYSFS\n  sysfs: Fix one more signature discrepancy between sysfs implementation and docs.\n  sysfs: fix discrepancies between implementation and documentation\n  dcdbas: remove a redundant smi_data_buf_free in dcdbas_exit\n  dmi-id: fix a memory leak in dmi_id_init error path\n  sysfs: sysfs_chmod_file\u0027s attr can be const\n  firmware: Update hotplug script\n  Driver core: move platform device creation helpers to .init.text (if MODULE\u003dn)\n  Driver core: reduce duplicated code for platform_device creation\n  Driver core: use kmemdup in platform_device_add_resources\n  ...\n"
    },
    {
      "commit": "03c0c29aff7e56b722eb6c47eace222b140d0377",
      "tree": "47267a19b523159cf36a050ef3c35f4dbdb33016",
      "parents": [
        "c60c6a96b7bb0f1f8bb635fdfcf5b592aaf062b4",
        "7fb8f881c54beb05dd4d2c947dada1c636581d87"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 05 15:57:35 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 05 15:57:35 2010 -0700"
      },
      "message": "Merge branch \u0027next-devicetree\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027next-devicetree\u0027 of git://git.secretlab.ca/git/linux-2.6: (63 commits)\n  of/platform: Register of_platform_drivers with an \"of:\" prefix\n  of/address: Clean up function declarations\n  of/spi: call of_register_spi_devices() from spi core code\n  of: Provide default of_node_to_nid() implementation.\n  of/device: Make of_device_make_bus_id() usable by other code.\n  of/irq: Fix endian issues in parsing interrupt specifiers\n  of: Fix phandle endian issues\n  of/flattree: fix of_flat_dt_is_compatible() to match the full compatible string\n  of: remove of_default_bus_ids\n  of: make of_find_device_by_node generic\n  microblaze: remove references to of_device and to_of_device\n  sparc: remove references to of_device and to_of_device\n  powerpc: remove references to of_device and to_of_device\n  of/device: Replace of_device with platform_device in includes and core code\n  of/device: Protect against binding of_platform_drivers to non-OF devices\n  of: remove asm/of_device.h\n  of: remove asm/of_platform.h\n  of/platform: remove all of_bus_type and of_platform_bus_type references\n  of: Merge of_platform_bus_type with platform_bus_type\n  drivercore/of: Add OF style matching to platform bus\n  ...\n\nFix up trivial conflicts in arch/microblaze/kernel/Makefile due to just\nsome obj-y removals by the devicetree branch, while the microblaze\nupdates added a new file.\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": "600c20f34f645adf7884277302b10601583aa7d5",
      "tree": "b37760bb8e867d31240cdaf512b2ab5363bf3c86",
      "parents": [
        "c462e8cd57869a81223c5cad2d5a61b491634229"
      ],
      "author": {
        "name": "Jike Song",
        "email": "albcamus@gmail.com",
        "time": "Thu Jul 15 17:43:54 2010 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:35 2010 -0700"
      },
      "message": "driver core: fix memory leak on one error path in bus_register()\n\nReported-by: huangweibing@gmail.com\nSigned-off-by: Jike Song \u003calbcamus@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "737a3bb9416ce2a7c7a4170852473a4fcc9c67e8",
      "tree": "0d4ede010d0f998ac4fdd7d2558b2481c8bf67ea",
      "parents": [
        "44f28bdea09415d40b4d73a7668db5961362ec53"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Mon Jun 21 16:11:45 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:34 2010 -0700"
      },
      "message": "Driver core: move platform device creation helpers to .init.text (if MODULE\u003dn)\n\nPlatform devices should only be called by init code, so it should be\npossible to move creation helpers to .init.text -- at least if modules\nare disabled.\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\n"
    },
    {
      "commit": "44f28bdea09415d40b4d73a7668db5961362ec53",
      "tree": "7f36eedff7cdfba9d9d0b77f9a4227d3bb0b190f",
      "parents": [
        "3e61dfd8509a52d165726831c57b4c8a015d626c"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Mon Jun 21 16:11:44 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:34 2010 -0700"
      },
      "message": "Driver core: reduce duplicated code for platform_device creation\n\nThis makes the two similar functions platform_device_register_simple\nand platform_device_register_data one line inline functions using a new\ngeneric function platform_device_register_resndata.\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\n"
    },
    {
      "commit": "3e61dfd8509a52d165726831c57b4c8a015d626c",
      "tree": "28ed342eaf40273024bfdf673247127ea5e96456",
      "parents": [
        "f8a4bd3456b988fc73b2c291b9e01b434c8fa940"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Tue Jun 15 10:47:55 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:34 2010 -0700"
      },
      "message": "Driver core: use kmemdup in platform_device_add_resources\n\nThis makes platform_device_add_resources look like\nplatform_device_add_data.\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\n"
    },
    {
      "commit": "f8a4bd3456b988fc73b2c291b9e01b434c8fa940",
      "tree": "9e45a2c9a65fe87632dbcfde479aa456e6cae67a",
      "parents": [
        "0983ca2d0f0ff645bc86899aefb936cffb314839"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Fri Jun 04 00:54:43 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:34 2010 -0700"
      },
      "message": "firmware loader: embed device into firmware_priv structure\n\nBoth these structures have the same lifetime rules so instead of allocating\nand managing them separately embed struct device into struct firmware_priv.\nAlso make sure to delete sysfs attributes ourselves instead of expecting\nsysfs to clean up our mess.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0983ca2d0f0ff645bc86899aefb936cffb314839",
      "tree": "5eb2fbb53da9b869b809893c0834e8c07addb40e",
      "parents": [
        "cc7447a5fa92759b0856d6a83ba2539c6a94e67e"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Fri Jun 04 00:54:37 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:34 2010 -0700"
      },
      "message": "firmware loader: use statically initialized data attribute\n\nThere is no reason why we are using a template for binary attribute\nand copying it into per-firmware data before registering. Using the\noriginal works as well.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ed1d218c95c6846416ddb39085b20a5b3c0872e4",
      "tree": "c5fde1cb1169af6c26f8445708484778b79c1cbb",
      "parents": [
        "94f17cd7887ca681ea88fda1fd9bf65c0ca161f0"
      ],
      "author": {
        "name": "Marin Mitov",
        "email": "mitov@issp.bas.bg",
        "time": "Mon May 31 13:03:04 2010 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 05 13:53:33 2010 -0700"
      },
      "message": "Driver core: internal struct dma_coherent_mem, change type of a member.\n\nstruct dma_coherent_mem in drivers/base/dma-coherent.c\nhas member \u0027device_base\u0027 that is of type u32,\nbut is assigned value of type dma_addr_t, which may be\n64 bits for x86_64. Change the type to dma_addr_t.\n\nSigned-off-by: Marin Mitov \u003cmitov@issp.bas.bg\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6ba74014c1ab0e37af7de6f64b4eccbbae3cb9e7",
      "tree": "8f3892fc44f1e403675a6d7e88fda5c70e56ee4c",
      "parents": [
        "5abd9ccced7a726c817dd6b5b96bc933859138d1",
        "3ff1c25927e3af61c6bf0e4ed959504058ae4565"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 11:47:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 11:47:58 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1443 commits)\n  phy/marvell: add 88ec048 support\n  igb: Program MDICNFG register prior to PHY init\n  e1000e: correct MAC-PHY interconnect register offset for 82579\n  hso: Add new product ID\n  can: Add driver for esd CAN-USB/2 device\n  l2tp: fix export of header file for userspace\n  can-raw: Fix skb_orphan_try handling\n  Revert \"net: remove zap_completion_queue\"\n  net: cleanup inclusion\n  phy/marvell: add 88e1121 interface mode support\n  u32: negative offset fix\n  net: Fix a typo from \"dev\" to \"ndev\"\n  igb: Use irq_synchronize per vector when using MSI-X\n  ixgbevf: fix null pointer dereference due to filter being set for VLAN 0\n  e1000e: Fix irq_synchronize in MSI-X case\n  e1000e: register pm_qos request on hardware activation\n  ip_fragment: fix subtracting PPPOE_SES_HLEN from mtu twice\n  net: Add getsockopt support for TCP thin-streams\n  cxgb4: update driver version\n  cxgb4: add new PCI IDs\n  ...\n\nManually fix up conflicts in:\n - drivers/net/e1000e/netdev.c: due to pm_qos registration\n   infrastructure changes\n - drivers/net/phy/marvell.c: conflict between adding 88ec048 support\n   and cleaning up the IDs\n - drivers/net/wireless/ipw2x00/ipw2100.c: trivial ipw2100_pm_qos_req\n   conflict (registration change vs marking it static)\n"
    },
    {
      "commit": "f46e9913faeebcb6bd29edf795f12b60acbff171",
      "tree": "1ed8871d0ebd638094d27317de1d8a53712ae15a",
      "parents": [
        "8d91530c5fd7f0b1e8c4ddfea2905e55a178569b",
        "8d4b9d1bfef117862a2889dec4dac227068544c9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 11:14:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 11:14:36 2010 -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:\n  PM / Runtime: Add runtime PM statistics (v3)\n  PM / Runtime: Make runtime_status attribute not debug-only (v. 2)\n  PM: Do not use dynamically allocated objects in pm_wakeup_event()\n  PM / Suspend: Fix ordering of calls in suspend error paths\n  PM / Hibernate: Fix snapshot error code path\n  PM / Hibernate: Fix hibernation_platform_enter()\n  pm_qos: Get rid of the allocation in pm_qos_add_request()\n  pm_qos: Reimplement using plists\n  plist: Add plist_last\n  PM: Make it possible to avoid races between wakeup and system sleep\n  PNPACPI: Add support for remote wakeup\n  PM: describe kernel policy regarding wakeup defaults (v. 2)\n  PM / Hibernate: Fix typos in comments in kernel/power/swap.c\n"
    },
    {
      "commit": "24b1442d01ae155ea716dfb94ed21605541c317d",
      "tree": "49e8b4140a0e01e6d9288b545d1561de5b918307",
      "parents": [
        "1fe9b6fef11771461e69ecd1bc8935a1c7c90cb5"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sat Jul 24 22:43:35 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 26 08:05:31 2010 -0700"
      },
      "message": "Driver-core: Always create class directories for classses that support namespaces.\n\nThis fixes the regression in 2.6.35-rcX where bluetooth network devices\nwould fail to be deleted from sysfs, causing their destruction and\nrecreation to fail.  In addition this fixes the mac80211_hwsim driver\nwhere it would leave around sysfs files when the driver was removed.\n\nThis problem is discussed at\n  https://bugzilla.kernel.org/show_bug.cgi?id\u003d16257\n\nThe reason for the regression is that the network namespace support\nadded to sysfs expects and requires that network devices be put in\ndirectories that can contain only network devices.\n\nToday get_device_parent almost provides that guarantee for all class\ndevices, except for a specific exception when the parent of a class\ndevices is a class device.  It would be nice to simply remove that\narguably incorrect special case, but apparently the input devices depend\non it being there.  So I have only removed it for class devices with\nnetwork namespace support.  Which today are the network devices.\n\nIt has been suggested that a better fix would be to change the parent\ndevice from a class device to a bus device, which in the case of the\nbluetooth driver would change /sys/class/bluetooth to /sys/bus/bluetoth,\nI can not see how we would avoid significant userspace breakage if we\nwere to make that change.\n\nAdding an extra directory in the path to the device will also be\nuserspace visible but it is much less likely to break things.\nEverything is still accessible from /sys/class (for example), and it\nfixes two bugs.  Adding an extra directory fixes a 3 year old regression\nintroduced with the new sysfs layout that makes it impossible to rename\nbnep0 network devices to names that conflict with hci device attributes\nlike hci_revsion.  Adding an additional directory removes the new\nfailure modes introduced by the network namespace code.\n\nIf it weren\u0027t for the regession in the renaming of network devices I\nwould figure out how to just make the sysfs code deal with this\nconfiguration of devices.\n\nIn summary this patch fixes regressions by changing:\n\"/sys/class/bluetooth/hci0/bnep0\" to \"/sys/class/bluetooth/hci0/net/bnep0\".\n\nReported-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nReported-by: Janusz Krzysztofik \u003cjkrzyszt@tis.icnet.pl\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eca3930163ba8884060ce9d9ff5ef0d9b7c7b00f",
      "tree": "5774d6d53b5f7d8f069e82b3937cdff7b3d45bbe",
      "parents": [
        "05212157e94ccf4cf458413bbba509cfa95ff92b"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jun 08 07:48:21 2010 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat Jul 24 09:57:51 2010 -0600"
      },
      "message": "of: Merge of_platform_bus_type with platform_bus_type\n\nof_platform_bus was being used in the same manner as the platform_bus.\nThe only difference being that of_platform_bus devices are generated\nfrom data in the device tree, and platform_bus devices are usually\nstatically allocated in platform code.  Having them separate causes\nthe problem of device drivers having to be registered twice if it\nwas possible for the same device to appear on either bus.\n\nThis patch removes of_platform_bus_type and registers all of_platform\nbus devices and drivers on the platform bus instead.  A previous patch\nmade the of_device structure an alias for the platform_device structure,\nand a shim is used to adapt of_platform_drivers to the platform bus.\n\nAfter all of of_platform_bus drivers are converted to be normal platform\ndrivers, the shim code can be removed.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "05212157e94ccf4cf458413bbba509cfa95ff92b",
      "tree": "16c18d97305ea5c16dc8e5d1626c147301a5dce1",
      "parents": [
        "4e4f62bf7396fca48efe61513640ee399a6046e3"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jun 08 07:48:20 2010 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sat Jul 24 09:57:51 2010 -0600"
      },
      "message": "drivercore/of: Add OF style matching to platform bus\n\nAs part of the merge between platform bus and of_platform bus, add the\nability to do of-style matching to the platform bus.\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: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCC: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCC: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCC: linux-kernel@vger.kernel.org\nCC: microblaze-uclinux@itee.uq.edu.au\nCC: linuxppc-dev@ozlabs.org\nCC: devicetree-discuss@lists.ozlabs.org\n\n"
    },
    {
      "commit": "8d4b9d1bfef117862a2889dec4dac227068544c9",
      "tree": "a17f69a64b97759452988047058666ae51f70304",
      "parents": [
        "0fcb4eef8294492c8f1de8236b1ed81f09e42922"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Jul 19 02:01:06 2010 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Jul 19 02:01:06 2010 +0200"
      },
      "message": "PM / Runtime: Add runtime PM statistics (v3)\n\nIn order for PowerTOP to be able to report how well the new runtime PM is\nworking for the various drivers, the kernel needs to export some basic\nstatistics in sysfs.\n\nThis patch adds two sysfs files in the runtime PM domain that expose the\ntotal time a device has been active, and the time a device has been\nsuspended.\n\nWith this PowerTOP can compute the activity percentage\n\nActive %age \u003d 100 * (delta active) / (delta active + delta suspended)\n\nand present the information to the user.\n\nI\u0027ve written the PowerTOP code (slated for version 1.12) already, and the\noutput looks like this:\n\nRuntime Device Power Management statistics\nActive  Device name\n 10.0%\t06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller\n\n[version 2: fix stat update bugs noticed by Alan Stern]\n[version 3: rebase to -next and move the sysfs declaration]\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "0fcb4eef8294492c8f1de8236b1ed81f09e42922",
      "tree": "23c96ecfc5a85c1870d85c5db9421b6c09763fa8",
      "parents": [
        "4eb241e5691363c391aac8a5051d0d013188ec84"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Thu Jul 08 00:05:37 2010 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Jul 19 02:00:36 2010 +0200"
      },
      "message": "PM / Runtime: Make runtime_status attribute not debug-only (v. 2)\n\nThis patch (as1404b) makes the runtime_status sysfs attribute available\neven in the absence of CONFIG_PM_ADVANCED_DEBUG, and it changes the\nroutine to display \"unsupported\" when runtime PM is disabled for a\ndevice.  Although not strictly 100% accurate, this will almost always\nbe correct.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nAcked-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "4eb241e5691363c391aac8a5051d0d013188ec84",
      "tree": "4692a93a29f4aa556a2a54173e5f6d7f4bdb7ae6",
      "parents": [
        "ce4410116c5debfb0e049f5db4b5cd6211e05b80"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 07 23:43:51 2010 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Jul 19 02:00:35 2010 +0200"
      },
      "message": "PM: Do not use dynamically allocated objects in pm_wakeup_event()\n\nOriginally, pm_wakeup_event() uses struct delayed_work objects,\nallocated with GFP_ATOMIC, to schedule the execution of pm_relax()\nin future.  However, as noted by Alan Stern, it is not necessary to\ndo that, because all pm_wakeup_event() calls can use one static timer\nthat will always be set to expire at the latest time passed to\npm_wakeup_event().\n\nThe modifications are based on the example code posted by Alan.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "c125e96f044427f38d106fab7bc5e4a5e6a18262",
      "tree": "d9bbd40cc933fe522dbdf8ca2f7edf7b6f2f7ca4",
      "parents": [
        "b14e033e17d0ea0ba12668d0d2f371cd31586994"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Jul 05 22:43:53 2010 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Jul 19 01:58:48 2010 +0200"
      },
      "message": "PM: Make it possible to avoid races between wakeup and system sleep\n\nOne of the arguments during the suspend blockers discussion was that\nthe mainline kernel didn\u0027t contain any mechanisms making it possible\nto avoid races between wakeup and system suspend.\n\nGenerally, there are two problems in that area.  First, if a wakeup\nevent occurs exactly when /sys/power/state is being written to, it\nmay be delivered to user space right before the freezer kicks in, so\nthe user space consumer of the event may not be able to process it\nbefore the system is suspended.  Second, if a wakeup event occurs\nafter user space has been frozen, it is not generally guaranteed that\nthe ongoing transition of the system into a sleep state will be\naborted.\n\nTo address these issues introduce a new global sysfs attribute,\n/sys/power/wakeup_count, associated with a running counter of wakeup\nevents and three helper functions, pm_stay_awake(), pm_relax(), and\npm_wakeup_event(), that may be used by kernel subsystems to control\nthe behavior of this attribute and to request the PM core to abort\nsystem transitions into a sleep state already in progress.\n\nThe /sys/power/wakeup_count file may be read from or written to by\nuser space.  Reads will always succeed (unless interrupted by a\nsignal) and return the current value of the wakeup events counter.\nWrites, however, will only succeed if the written number is equal to\nthe current value of the wakeup events counter.  If a write is\nsuccessful, it will cause the kernel to save the current value of the\nwakeup events counter and to abort the subsequent system transition\ninto a sleep state if any wakeup events are reported after the write\nhas returned.\n\n[The assumption is that before writing to /sys/power/state user space\nwill first read from /sys/power/wakeup_count.  Next, user space\nconsumers of wakeup events will have a chance to acknowledge or\nveto the upcoming system transition to a sleep state.  Finally, if\nthe transition is allowed to proceed, /sys/power/wakeup_count will\nbe written to and if that succeeds, /sys/power/state will be written\nto as well.  Still, if any wakeup events are reported to the PM core\nby kernel subsystems after that point, the transition will be\naborted.]\n\nAdditionally, put a wakeup events counter into struct dev_pm_info and\nmake these per-device wakeup event counters available via sysfs,\nso that it\u0027s possible to check the activity of various wakeup event\nsources within the kernel.\n\nTo illustrate how subsystems can use pm_wakeup_event(), make the\nlow-level PCI runtime PM wakeup-handling code use it.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: markgross \u003cmarkgross@thegnar.org\u003e\nReviewed-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\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": "ad84bb5b98bf81deae97e3bcd814675d6b4e6f72",
      "tree": "0bebd51caea6f4dc2dfd213c20a3fd8d74648db1",
      "parents": [
        "a94247e7fb99170590dc9592792045c6fa49c7f5"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed May 26 14:43:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 27 09:12:48 2010 -0700"
      },
      "message": "topology: convert cpu notifier to return encapsulate errno value\n\nBy the previous modification, the cpu notifier can return encapsulate\nerrno value.  This converts the cpu notifiers for topology.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ed4a6d7f0676db50b5023cc01f6cda82a2f2a307",
      "tree": "6496343ba964e105cf30f8703714471f22edc806",
      "parents": [
        "76ab0f530e4a01d4dc20cdc1d5e87753c579dc18"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon May 24 14:32:29 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 25 08:06:59 2010 -0700"
      },
      "message": "mm: compaction: add /sys trigger for per-node memory compaction\n\nAdd a per-node sysfs file called compact.  When the file is written to,\neach zone in that node is compacted.  The intention that this would be\nused by something like a job scheduler in a batch system before a job\nstarts so that the job can allocate the maximum number of hugepages\nwithout significant start-up cost.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d9e882ba4971f31473dd812da64909f30a6c242",
      "tree": "7aa72f2ca3a39ee0e505ea0d91a9d773bdbad269",
      "parents": [
        "de139a3393958c5adc75b7df7619d7e48d9ea559"
      ],
      "author": {
        "name": "Christoph Egger",
        "email": "siccegge@cs.fau.de",
        "time": "Mon May 17 16:57:58 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:32 2010 -0700"
      },
      "message": "driver-core: fix Typo in drivers/base/core.c for CONFIG_MODULE\n\nIn this code section the final S of CONFIG_MODULES was missed making\nthe whole check useless\n\nSigned-off-by: Christoph Egger \u003csiccegge@cs.fau.de\u003e\nCc: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "2c3c8bea608866d8bd9dcf92657d57fdcac011c5",
      "tree": "f509b958d0a65c46c831dbdd447a81e706dd995a",
      "parents": [
        "68d75ed4b84a0806ecd4bc14da4759713b23a532"
      ],
      "author": {
        "name": "Chris Wright",
        "email": "chrisw@sous-sol.org",
        "time": "Wed May 12 18:28:57 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:31 2010 -0700"
      },
      "message": "sysfs: add struct file* to bin_attr callbacks\n\nThis allows bin_attr-\u003eread,write,mmap callbacks to check file specific data\n(such as inode owner) as part of any privilege validation.\n\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f349cf34731c3b3eddbcd63cb04489aee2c405bd",
      "tree": "2400790efc15c7f413ee62d79f47a5fdd4ba3233",
      "parents": [
        "746edb7ae8a1abdd39be2b28c03aa073183340db"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Mar 30 11:31:29 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:31 2010 -0700"
      },
      "message": "driver core: Implement ns directory support for device classes.\n\ndevice_del and device_rename were modified to use\nsysfs_delete_link and sysfs_rename_link respectively to ensure\nwhen these operations happen on devices whose classes\nare in namespace directories they work properly.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\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": "6245838fe4d2ce4aab52f543224f7d1212d9155c",
      "tree": "eabeb6ae52ae80f42ccb34bf479a60748989bf59",
      "parents": [
        "e177123f0c2d77ed2fde724ca352166ca9464619"
      ],
      "author": {
        "name": "Hugh Daschbach",
        "email": "hdasch@broadcom.com",
        "time": "Mon Mar 22 10:36:37 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:30 2010 -0700"
      },
      "message": "Driver core: Protect device shutdown from hot unplug events.\n\nWhile device_shutdown() walks through devices_kset to shutdown all\ndevices, device unplug events may race to shutdown individual devices.\nSpecifically, sd_shutdown(), on behalf of fc_starget_delete(), has\nbeen observed deleting devices during device_shutdown()\u0027s list\ntraversal.  So we factor out list_for_each_entry_safe_reverse(...) in\nfavor of while (!list_empty(...)).\n\nSigned-off-by: Hugh Daschbach \u003chdasch@broadcom.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e177123f0c2d77ed2fde724ca352166ca9464619",
      "tree": "4028292609b20e1d65eb2f8ff9e6e5be608a04c9",
      "parents": [
        "bcb9bd18e397eabe14b45f4dc4283359ab148d79"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Mar 13 23:49:23 2010 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:30 2010 -0700"
      },
      "message": "firmware loader: do not allocate firmare id separately\n\nfw_id has the same life time as firmware_priv so it makes sense to move\nit into firmware_priv structure instead of allocating separately.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "bcb9bd18e397eabe14b45f4dc4283359ab148d79",
      "tree": "0fbb55b4e90a02824f8dc7aaffc3c26a2f0ebfa3",
      "parents": [
        "673fae90d5ee4ae2b6403f9d45af7ff640f06a60"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Mar 13 23:49:18 2010 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:30 2010 -0700"
      },
      "message": "firmware loader: split out builtin firmware handling\n\nSplit builtin firmware handling into separate functions to clean up the\nmain body of code.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "673fae90d5ee4ae2b6403f9d45af7ff640f06a60",
      "tree": "62b2782e9e6b9e02bd6048ec34b16b76001ed602",
      "parents": [
        "e9045f9178f3e3445a3a5b85206f8681b3869562"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Mar 13 23:49:13 2010 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:30 2010 -0700"
      },
      "message": "firmware loader: rely on driver core to create class attribute\n\nDo not create \u0027timeout\u0027 attribute manually, let driver core do it for us.\nThis also ensures that attribute is cleaned up properly.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e9045f9178f3e3445a3a5b85206f8681b3869562",
      "tree": "90de949ea1585ebd42112121570a00a2ea3c5708",
      "parents": [
        "1704f47b50b5d9e1b825e43e1baaf2c5897baf03"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Mar 29 17:57:20 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:30 2010 -0700"
      },
      "message": "firmware class: export nowait to userspace\n\nWhen we use request_firmware_nowait(), userspace may\nnot want to answer negatively right away when for\nexample it is answering from an initrd only, but\nwith request_firmware() it has to in order to not\ndelay the kernel boot until the request times out.\n\nThis allows userspace to differentiate between the\ntwo in order to be able to reply negatively to async\nrequests only when all filesystems have been mounted\nand have been checked for the requested firmware file.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1704f47b50b5d9e1b825e43e1baaf2c5897baf03",
      "tree": "60617ff867624f915f75a502f2207de5e586757a",
      "parents": [
        "3142788b7967ccfd2f1813ee9e11aeb1e1cf7de2"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Fri Mar 19 01:37:42 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:30 2010 -0700"
      },
      "message": "lockdep: Add novalidate class for dev-\u003emutex conversion\n\nThe conversion of device-\u003esem to device-\u003emutex resulted in lockdep\nwarnings. Create a novalidate class for now until the driver folks\ncome up with separate classes. That way we have at least the basic\nmutex debugging coverage.\n\nAdd a checkpatch error so the usage is reserved for device-\u003emutex.\n\n[ tglx: checkpatch and compile fix for LOCKDEP\u003dn ]\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\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": "190e8370b8033f746db5289e9324174564a6f5a7",
      "tree": "5d6f0102abe82b15b9423ef01d0dbd83b0f43323",
      "parents": [
        "da5e4ef7fdb8f2fb0878dee3bd9d4dd10cea8cf1"
      ],
      "author": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Wed Mar 17 16:18:15 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:30 2010 -0700"
      },
      "message": "platform_bus: allow custom extensions to system PM methods\n\nWhen runtime PM for platform_bus was added, it allowed for platforms\nto customize the runtime PM methods since they are defined as weak\nsymbols.\n\nThis patch allows platforms to also extend the system PM methods with\ncustom hooks so runtime PM and system PM extensions can be managed\ntogether by custom platform-specific code.\n\nSigned-off-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\nCc: Magnus Damm \u003cdamm@opensource.se\u003e\nCc: Rafael Wysocki \u003crjw@sisk.pl\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nCc: Eric Miao \u003ceric.y.miao@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "da5e4ef7fdb8f2fb0878dee3bd9d4dd10cea8cf1",
      "tree": "172df2771cbfbb8501aaf6e04c34b4fc1b3c7cca",
      "parents": [
        "1653268b1b538981df9bb85d637456530938be6c"
      ],
      "author": {
        "name": "Peter Korsgaard",
        "email": "jacmet@sunsite.dk",
        "time": "Tue Mar 16 21:55:21 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:30 2010 -0700"
      },
      "message": "devtmpfs: support !CONFIG_TMPFS\n\nMake devtmpfs available on (embedded) configurations without SHMEM/TMPFS,\nusing ramfs instead.\n\nSaves ~15KB.\n\nSigned-off-by: Peter Korsgaard \u003cjacmet@sunsite.dk\u003e\nAcked-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1653268b1b538981df9bb85d637456530938be6c",
      "tree": "f091543b753e57e975bee35909b96c674daf3bd3",
      "parents": [
        "ffa156590f98b750161757a16c37ac8e152a7859"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Wed Mar 10 22:18:13 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:29 2010 -0700"
      },
      "message": "driver core: module.c: Use kasprintf\n\nkasprintf combines kmalloc and sprintf, and takes care of the size\ncalculation itself.\n\nThe semantic patch that makes this change is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression a,flag;\nexpression list args;\nstatement S;\n@@\n\n  a \u003d\n-  \\(kmalloc\\|kzalloc\\)(...,flag)\n+  kasprintf(flag,args)\n  \u003c... when !\u003d a\n  if (a \u003d\u003d NULL || ...) S\n  ...\u003e\n- sprintf(a,args);\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ffa156590f98b750161757a16c37ac8e152a7859",
      "tree": "82ecca1adb3cafc886581d782ba1f46f714f5435",
      "parents": [
        "fbb88fadf7dc2dd6d0d1aa88ff521b2f8552996a"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Mar 08 16:46:19 2010 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:29 2010 -0700"
      },
      "message": "Driver core: don\u0027t initialize wakeup flags\n\nThis patch (as1351) removes an unnecessary and unwanted assignment\nfrom device_initialize().  The wakeup flags are set to 0 along with\neverything else when the device structure is allocated, so we don\u0027t\nneed to do it again.  Furthermore, the subsystem might already have\nset these flags to their correct values; we don\u0027t want to override it.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "fbb88fadf7dc2dd6d0d1aa88ff521b2f8552996a",
      "tree": "af4979113cb3b7fbd8fdbba5cad35a7cb185e9b3",
      "parents": [
        "6f18ff91d926ab411749a199b06a49f6bc72e9af"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Sat Mar 06 17:50:14 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:29 2010 -0700"
      },
      "message": "driver-core: fix potential race condition in drivers/base/dd.c\n\nThis patch fix a potential race condition in the driver_bound() function\nin the file driver/base/dd.c.\n\nThe broadcast of the BUS_NOTIFY_BOUND_DRIVER notifier should be done\nafter adding the new device to the driver list. Otherwise notifier\nlistener will fail if they use functions like usb_find_interface().\n\nThe patch is against kernel 2.6.33. Please merge it.\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6f18ff91d926ab411749a199b06a49f6bc72e9af",
      "tree": "ddc9eff9b4b8e277ecb4b053088d22aea2809c7c",
      "parents": [
        "db1afffab0b5d9f6d31f8f4bea44c9cb3bc59351"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Feb 27 21:43:22 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:29 2010 -0700"
      },
      "message": "Driver core: Reduce the level of request_firmware() messages\n\nThe messages from _request_firmware() informing that firmware is\nbeing requested or built-in firmware is going to be used are printed\nat KERN_INFO, which produces lots of noise on systems with huge\nnumbers of AMD CPUs.  Reduce the level of these messages to\nKERN_DEBUG to get rid of that noise.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "dd336c554d8926c3348a2d5f2a5ef5597f6d1a06",
      "tree": "457178c0d3189d6c3e02922aca36e528f4fc50a9",
      "parents": [
        "cdc6e3d3968052cebb2f2ddcd742bff29fbd1a90"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun May 02 11:21:21 2010 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:28 2010 -0700"
      },
      "message": "firmware_class: fix memory leak - free allocated pages\n\nfix memory leak introduced by the patch 6e03a201bbe:\nfirmware: speed up request_firmware()\n\n1. vfree won\u0027t release pages there were allocated explicitly and mapped\nusing vmap. The memory has to be vunmap-ed and the pages needs\nto be freed explicitly\n\n2. page array is moved into the \u0027struct\nfirmware\u0027 so that we can free it from release_firmware()\nand not only in fw_dev_release()\n\nThe fix doesn\u0027t break the firmware load speed.\n\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: Ming Lei \u003ctom.leiming@gmail.com\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nSinged-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Tomas Winkler \u003ctomas.winkler@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "cdc6e3d3968052cebb2f2ddcd742bff29fbd1a90",
      "tree": "874fbded0f516a84112200080fb22d28920e6362",
      "parents": [
        "d7dbf4ffee1c7a17e2e5b5f01efe76fbd1671db6"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Tue Apr 27 14:01:20 2010 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 21 09:37:28 2010 -0700"
      },
      "message": "drivers/base/cpu.c: fix the output from /sys/devices/system/cpu/offline\n\nWithout CONFIG_CPUMASK_OFFSTACK, simply inverting cpu_online_mask leads\nto CPUs beyond nr_cpu_ids to be displayed twice and CPUs not even\npossible to be displayed as offline.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "46ee9645094ad1eb5b4888882ecaa1fb87dcd2a3",
      "tree": "d0a48e993568b6a2415cfc21fc06eaa2fd886429",
      "parents": [
        "fa5312d9e87e7222c6c384c4e930dc149bc1178d",
        "25f3a5a2854dce8b8413fd24cc9d5b9e3632be54"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 20 09:03:55 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 20 09:03:55 2010 -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:\n  PM: PM QOS update fix\n  Freezer / cgroup freezer: Update stale locking comments\n  PM / platform_bus: Allow runtime PM by default\n  i2c: Fix bus-level power management callbacks\n  PM QOS update\n  PM / Hibernate: Fix block_io.c printk warning\n  PM / Hibernate: Group swap ops\n  PM / Hibernate: Move the first_sector out of swsusp_write\n  PM / Hibernate: Separate block_io\n  PM / Hibernate: Snapshot cleanup\n  FS / libfs: Implement simple_write_to_buffer\n  PM / Hibernate: document open(/dev/snapshot) side effects\n  PM / Runtime: Add sysfs debug files\n  PM: Improve device power management document\n  PM: Update device power management document\n  PM: Allow runtime_suspend methods to call pm_schedule_suspend()\n  PM: pm_wakeup - switch to using bool\n"
    },
    {
      "commit": "7c7cbaf5b82c418cd3b1dcf718f71d0e6057e639",
      "tree": "da9aaa5a246af464b1e10d88618c1cad07b76314",
      "parents": [
        "ba0234ec35127fe21d373db53cbaf9fe20620cb6",
        "4d0956b8f597aac10208ca763f8fe641fde16aab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 19 11:36:03 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 19 11:36:03 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (127 commits)\n  sh: update defconfigs.\n  sh: Fix up the NUMA build for recent LMB changes.\n  sh64: provide a stub per_cpu_trap_init() definition.\n  sh: fix up CONFIG_KEXEC\u003dn build.\n  sh: fixup the docbook paths for clock framework shuffling.\n  driver core: Early dev_name() depends on slab_is_available().\n  sh: simplify WARN usage in SH clock driver\n  sh: Check return value of clk_get on ms7724\n  sh: Check return value of clk_get on ecovec24\n  sh: move sh clock-cpg.c contents to drivers/sh/clk-cpg.c\n  sh: move sh clock.c contents to drivers/sh/clk.\n  sh: move sh asm/clock.h contents to linux/sh_clk.h V2\n  sh: remove unused clock lookup\n  sh: switch boards to clkdev\n  sh: switch sh4-202 to clkdev\n  sh: switch shx3 to clkdev\n  sh: switch sh7757 to clkdev\n  sh: switch sh7763 to clkdev\n  sh: switch sh7780 to clkdev\n  sh: switch sh7786 to clkdev\n  ...\n"
    },
    {
      "commit": "8123d8f17d8ba9d67e556688e4f025456ca97842",
      "tree": "1d15088a32644e464ad3536ad7bec775050065eb",
      "parents": [
        "06ee772043c7ad125f2c2e6a08dc563706f39e8d",
        "795e74f7a69f9c08afa4fa7c86cc4f18a62bd630"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 18 07:22:37 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 18 07:22:37 2010 -0700"
      },
      "message": "Merge branch \u0027core-iommu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-iommu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86/amd-iommu: Add amd_iommu\u003doff command line option\n  iommu-api: Remove iommu_{un}map_range functions\n  x86/amd-iommu: Implement -\u003e{un}map callbacks for iommu-api\n  x86/amd-iommu: Make amd_iommu_iova_to_phys aware of multiple page sizes\n  x86/amd-iommu: Make iommu_unmap_page and fetch_pte aware of page sizes\n  x86/amd-iommu: Make iommu_map_page and alloc_pte aware of page sizes\n  kvm: Change kvm_iommu_map_pages to map large pages\n  VT-d: Change {un}map_range functions to implement {un}map interface\n  iommu-api: Add -\u003e{un}map callbacks to iommu_ops\n  iommu-api: Add iommu_map and iommu_unmap functions\n  iommu-api: Rename -\u003e{un}map function pointers to -\u003e{un}map_range\n"
    },
    {
      "commit": "0b7f1a7efb38b551f5948a13d0b36e876ba536db",
      "tree": "a1982c30350b7be11b4db66e7c2bcd4983ed1998",
      "parents": [
        "adbf6e6952e80ae42a403442dcae21438cae94b3"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Wed Jan 28 21:01:02 2009 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Mon May 17 21:37:40 2010 +0200"
      },
      "message": "platform: Make platform resource input parameters const\n\nMake the platform resource input parameters of platform_device_add_resources()\nand platform_device_register_simple() const, as the resources are copied and\nnever modified.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b9e3fc29c08a6dcbe19606cfba19c1fcc0551ed7",
      "tree": "5b830e0f010ed84ecc84076e77d6730bc14abe10",
      "parents": [
        "209791b2cc3cdaf0f6ff49c25db975f8bbf573dd",
        "06fe53beb636294587d8e94ef83c06cef07c21fd"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Thu May 13 18:02:28 2010 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Thu May 13 18:02:28 2010 +0900"
      },
      "message": "Merge branch \u0027sh/driver-core\u0027\n"
    },
    {
      "commit": "06fe53beb636294587d8e94ef83c06cef07c21fd",
      "tree": "e8dda24a7c3b270ca11940dbedf8ac76fe595e47",
      "parents": [
        "bd05086bbe3f241cd552068f9ceba9e19c6ce427"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Thu May 13 17:56:56 2010 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Thu May 13 17:56:56 2010 +0900"
      },
      "message": "driver core: Early dev_name() depends on slab_is_available().\n\nThe early dev_name() setup needs to do an allocation which can only be\nsatisfied under slab_is_available() conditions. Some of the early\nplatform drivers may be initialized before this point, and those still\nneed to contend themselves with an empty dev_name.\n\nThis fixes up a regression with the SH earlyprintk which was bailing out\nprior to hitting the early probe path due to not being able to satisfy\nthe early allocation. Other early platform drivers (such as the early\ntimers) that need to match the dev name are sufficiently late that\nallocations are already possible.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "795e74f7a69f9c08afa4fa7c86cc4f18a62bd630",
      "tree": "8448ece35101d8db945c49df50d0d5889687de9f",
      "parents": [
        "a52357259680fe5368c2fabf5949209e231f2aa2",
        "12c7389abe5786349d3ea6da1961cf78d0c1c7cd"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue May 11 17:40:57 2010 +0200"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue May 11 17:40:57 2010 +0200"
      },
      "message": "Merge branch \u0027iommu/largepages\u0027 into amd-iommu/2.6.35\n\nConflicts:\n\tarch/x86/kernel/amd_iommu.c\n"
    },
    {
      "commit": "543f2503a956601dd490c6cde0ebf6adb4653e50",
      "tree": "d8092f7a19d8d219d75a659e2f7ad09d2ff08d7a",
      "parents": [
        "2f60ba706bd9af84c4eab704243b262e69556f2e"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Mon May 10 23:10:13 2010 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon May 10 23:10:13 2010 +0200"
      },
      "message": "PM / platform_bus: Allow runtime PM by default\n\nCurrently the default runtime PM callbacks for platform devices return\n-ENOSYS, preventing the use of runtime PM platforms until they have\nprovided at least a default implementation. This hinders the use of\nruntime PM by devices which work with many platforms such as memory\nmapped devices, MFDs and on chip IPs shared by multiple architectures.\n\nChange the default implementation to the standard pm_generic_runtime\none, allowing drivers to use runtime PM without per-architecture\nchanges.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "c92445fadb9179d811b5cb044947ad4712403541",
      "tree": "7e314fd096afdd220169068a281a1e8e0a8b1e7d",
      "parents": [
        "d6f9cda1fd241bc7a1d896da94950fd972eca9b7"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Fri Apr 23 20:32:23 2010 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon May 10 23:08:17 2010 +0200"
      },
      "message": "PM / Runtime: Add sysfs debug files\n\nAdd a few sysfs files relating to runtime power management for\nadvanced debug purposes:\n\nruntime_enabled: is runtime PM enabled for this device? States\n\tare \"enabled\", \"disabled\", \"forbidden\" or a combination\n\tof the latter two.\n\nruntime_status:\twhat state is the device in currently? E.g., it\n\treports \"suspended\" for runtime-suspended devices, and\n        \"active\" for active devices. NOTE: if runtime_enabled\n\treturns \"disabled\", the value of this file may not\n\treflect its physical state.\n\nruntime_usage: the runtime PM usage count of a device\n\nruntime_active_kids: the runtime PM children usage count of a device, or\n\t0 if the ignore_children flag is set.\n\nAlso, CONFIG_PM_SLEEP_ADVANCED_DEBUG is not defined in any Kconfig\nfile, so replace it with CONFIG_PM_ADVANCED_DEBUG.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "240c7337a4cd3d91b196c5ef97ad461b3a22fa09",
      "tree": "252a5938fa8c9f75925653876c32bef1a2ed899b",
      "parents": [
        "228c54ef7a028d5a4b6606eb0c8035874d9b6788"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Tue Mar 23 00:50:07 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon May 10 23:08:16 2010 +0200"
      },
      "message": "PM: Allow runtime_suspend methods to call pm_schedule_suspend()\n\nThis patch (as1361) changes the runtime PM interface slightly; it\nallows suspend requests to be scheduled while the runtime_suspend\nmethod is running.  If the method succeeds then the scheduled request\nis cancelled, whereas if the method fails then an idle notification is\nsent only if no request was scheduled.\n\nBeing able to schedule suspend requests from within a runtime_suspend\nmethod is useful for drivers that need to test for idleness and\nsuspend the device all while holding a single spinlock, or for drivers\nthat want to check for idleness by polling.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "e19553427c2e8fdb04fdd98e407164bb59a840ba",
      "tree": "5332234b2dad07c03c27e4608afb16f297f41e61",
      "parents": [
        "35f6cd4a06432034665a1499ca4b022437423aac",
        "83515bc7df812555e20cda48614674e2f346f9f5"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Apr 26 16:08:27 2010 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Apr 26 16:08:27 2010 +0900"
      },
      "message": "Merge branch \u0027sh/stable-updates\u0027\n\nConflicts:\n\tarch/sh/kernel/dwarf.c\n\tdrivers/dma/shdma.c\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "4dc86ae1f925b2121d4e75058675895f83e54c71",
      "tree": "21214eec08565e2f0a7afdb56d1d9293a3136b28",
      "parents": [
        "9ddd3a31aedcdb55d5509b595c04b187041c8adb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 09 10:05:33 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 09 10:05:33 2010 -0700"
      },
      "message": "Revert \"memory-hotplug: add 0x prefix to HEX block_size_bytes\"\n\nThis reverts commit ba168fc37dea145deeb8fa9e7e71c748d2e00d74.\n\nIt changes user-visible sysfs interfaces, and breaks some existing user\nspace applications which apparently rely on the fact that the output\ndoes not contain the \"0x\" prefix.\n\nRequested-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "18e5b539b451158be7aae6c390a20f0d3e5b9213",
      "tree": "4b1e8261c9afa01ebc2f45e594e2a9834aaf7ced",
      "parents": [
        "0fdf86754f70e813845af4abaa805165ce57a0bb"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Apr 06 19:23:33 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Apr 07 06:41:41 2010 +0900"
      },
      "message": "nodemask: include slab.h from drivers/base/node.c\n\nNODEMASK_ALLOC/FREE are mapped to kmalloc/free if NODES_SHIFT \u003e 8.\nAmong its several users, drivers/base/node.c wasn\u0027t including slab.h\nleading to build failure if NODES_SHIFT \u003e 8.  Include slab.h from\ndrivers/base/node.c.\n\nThis isn\u0027t an ideal solution but including slab.h directly from\nnodemask.h is not an option because nodemask.h gets included\neverywhere.  For now, make it work by including slab.h from its users.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7da23b86e14b77c094b11a9fa5ef5b3758fc9193",
      "tree": "3da1b6c3c105daf61f1fe1c785821213ab6a9dde",
      "parents": [
        "749d229761ff0135cc4e16b8a28b41ae2f6b2c35",
        "421e33d0045ac0aa119c033b78742e0fbf4c3b21"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 15:37:12 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 15:37:12 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:\n  [SCSI] qla1280: retain firmware for error recovery\n  [SCSI] attirbute_container: Initialize sysfs attributes with sysfs_attr_init\n  [SCSI] advansys: fix regression with request_firmware change\n  [SCSI] qla2xxx: Updated version number to 8.03.02-k2.\n  [SCSI] qla2xxx: Prevent sending mbx commands from sysfs during isp reset.\n  [SCSI] qla2xxx: Disable MSI on qla24xx chips other than QLA2432.\n  [SCSI] qla2xxx: Check to make sure multique and CPU affinity support is not enabled at the same time.\n  [SCSI] qla2xxx: Correct vp_idx checking during PORT_UPDATE processing.\n  [SCSI] qla2xxx: Honour \"Extended BB credits\" bit for CNAs.\n  [SCSI] scsi_transport_fc: Make sure commands are completed when rport is offline\n  [SCSI] libiscsi: Fix recovery slowdown regression\n"
    },
    {
      "commit": "94a46d3cde81fc82eef2105fcb5c9e6e31bac0f7",
      "tree": "445ff43779938b539e0799e81c90b85bbee552cd",
      "parents": [
        "720fcb36ac1aa2df2c54c170253b6b29600cbefc",
        "db217dece3003df0841bacf9556b5c06aa097dae"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Apr 05 12:21:09 2010 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Apr 05 12:21:09 2010 +0900"
      },
      "message": "Merge branch \u0027sh/stable-updates\u0027\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "720fcb36ac1aa2df2c54c170253b6b29600cbefc",
      "tree": "1ce654508a1efe164841fe37c34a471b2e96b1af",
      "parents": [
        "6ae6650232ddcf2f50e8817acd63cde37cf1d093",
        "dec710b77c2cf04bf512acada3c14a16f11708d9",
        "3089f381fbaf53560dcbcb4aef6ef17fe44e347c",
        "f4cff0d0ffc0162636357d0475409ecf1304f854"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Mar 30 11:26:43 2010 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Mar 30 11:26:43 2010 +0900"
      },
      "message": "Merge branches \u0027sh/intc-extension\u0027, \u0027sh/dmaengine\u0027, \u0027sh/serial-dma\u0027 and \u0027sh/clkfwk\u0027\n\nConflicts:\n\tarch/sh/kernel/cpu/clock.c\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "bd05086bbe3f241cd552068f9ceba9e19c6ce427",
      "tree": "5d8e28676693907f78b5666af7d6bb7e94c1f855",
      "parents": [
        "ec0ffe2ee0e0fb9da4409d86bfd72636450f32df"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Mar 29 15:51:35 2010 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Mar 29 15:51:35 2010 +0900"
      },
      "message": "driver core: Convert to kasprintf() for early dev_name().\n\nThis is just a simple refactoring patch on top of the early dev_name()\nsupport, converting from kstrdup() to kasprintf() as suggested by Kay.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "ebd09ec93c90c8ec571d7e166832fb1fc705bf5e",
      "tree": "f5ec7e8471e4828187ed32d8148f7e6be28d8306",
      "parents": [
        "cf7474451c3a3cf07811abbf2a39536d33046c36"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Mar 20 12:44:12 2010 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Mar 27 15:15:24 2010 -0400"
      },
      "message": "[SCSI] attirbute_container: Initialize sysfs attributes with sysfs_attr_init\n\nAll of the SCSI transport classes are suddenly spitting lockdep\nwarnings.  According to Eric Biderman this is because lockdep needs\nstatic initialisers and the attribute container way of doing things\nend up with dynamic sysfs attributes.  Fix this by calling\nsysfs_attr_init which sets the lockdep key correctly.\n\nTested-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "e7176a37d436a214f6a7727ea7986c654cbee8f0",
      "tree": "6efc0a74883b326ff7575a36793120027018195c",
      "parents": [
        "7d7ba8d31eb293016bc91a5c8fc36b21fd917265"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Mon Mar 15 21:43:11 2010 +0100"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Wed Mar 24 11:00:02 2010 +0100"
      },
      "message": "power: support _noirq actions on device types and classes\n\nThe new-style dev_pm_ops provide callbacks for both IRQs enabled\nand disabled. However, the _noirq variants were only called for\nbuses registered with a device, not for classes and types.\n\nIn order to properly use dev_pm_ops in class pcmcia_socket_class,\nsupport _noirq actions also on classes and types.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "2eb645e7b5662da47646f76b41b4141f2c9bf13a",
      "tree": "b5b99f8111a72a81d085cc3e3acca706de43062e",
      "parents": [
        "8fdb7e9f612b7c6ba6c3ba460c14263b5ce90f79",
        "12ee3c0a0ac42bed0939420468fd35f5cdceae4f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 19 13:39:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 19 13:39:42 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:\n  driver core: numa: fix BUILD_BUG_ON for node_read_distance\n  driver-core: document ERR_PTR() return values\n  kobject: documentation: Update to refer to kset-example.c.\n  sysdev: the cpu probe/release attributes should be sysdev_class_attributes\n  kobject: documentation: Fix erroneous example in kobject doc.\n  driver-core: fix missing kernel-doc in firmware_class\n  Driver core: Early platform kernel-doc update\n  sysfs: fix sysfs lockdep warning in mlx4 code\n  sysfs: fix sysfs lockdep warning in infiniband code\n  sysfs: fix sysfs lockdep warning in ipmi code\n  sysfs: Initialised pci bus legacy_mem field before use\n  sysfs: use sysfs_bin_attr_init in firmware class driver\n"
    },
    {
      "commit": "12ee3c0a0ac42bed0939420468fd35f5cdceae4f",
      "tree": "c97f04d93fcca34d9ab7548f2b5070235202d52d",
      "parents": [
        "f0eae0ed3b7d4182a6b4dd03540a738518ea3163"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed Mar 10 14:50:21 2010 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Mar 19 07:12:22 2010 -0700"
      },
      "message": "driver core: numa: fix BUILD_BUG_ON for node_read_distance\n\nnode_read_distance() has a BUILD_BUG_ON() to prevent buffer overruns when\nthe number of nodes printed will exceed the buffer length.\n\nEach node only needs four chars: three for distance (maximum distance is\n255) and one for a seperating space or a trailing newline.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f0eae0ed3b7d4182a6b4dd03540a738518ea3163",
      "tree": "f7432690b4df967f10643fa82f05f57aecba142f",
      "parents": [
        "178a5b35b2777346206d4b577b36d10061732f8c"
      ],
      "author": {
        "name": "Jani Nikula",
        "email": "ext-jani.1.nikula@nokia.com",
        "time": "Thu Mar 11 18:11:45 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Mar 19 07:12:21 2010 -0700"
      },
      "message": "driver-core: document ERR_PTR() return values\n\nA number of functions in the driver core return ERR_PTR() values on\nerror. Document this in the kernel-doc of the functions.\n\nSigned-off-by: Jani Nikula \u003cext-jani.1.nikula@nokia.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "67fc233f4fb67907861b4077cea5294035f80dc7",
      "tree": "794f100bf32e481cab7be1443514d08caadc1c5a",
      "parents": [
        "462bd295a3d74c7d1641501bda549bccf404be5b"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Mar 16 10:33:32 2010 +1100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Mar 19 07:12:19 2010 -0700"
      },
      "message": "sysdev: the cpu probe/release attributes should be sysdev_class_attributes\n\nThis fixes these warnings:\n\ndrivers/base/cpu.c:264: warning: initialization from incompatible pointer type\ndrivers/base/cpu.c:265: warning: initialization from incompatible pointer type\n\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e59817bf089a3893e05a059026c668fb65f8c748",
      "tree": "ccbd5b168e41a632592535978a4d38c32ce642ef",
      "parents": [
        "4d26e139f0b7d4c0700d6993506f1f60e2f2caa5"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Mar 10 11:47:58 2010 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Mar 19 07:12:16 2010 -0700"
      },
      "message": "driver-core: fix missing kernel-doc in firmware_class\n\nFix kernel-doc warning in firmware_class.c:\n\nWarning(drivers/base/firmware_class.c:94): No description found for parameter \u0027attr\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4d26e139f0b7d4c0700d6993506f1f60e2f2caa5",
      "tree": "e5d12b0243ca14fc0c60dac0bd291dbc2766f6dc",
      "parents": [
        "3691c964fa1a8f0eb5e5f00c644ef1bdd7e35a95"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@opensource.se",
        "time": "Wed Mar 10 20:50:38 2010 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Mar 19 07:12:16 2010 -0700"
      },
      "message": "Driver core: Early platform kernel-doc update\n\nThis patch updates the kernel-doc notation for early\nplatform functions.\n\nSigned-off-by: Magnus Damm \u003cdamm@opensource.se\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e1955ca0ee55286cbc65a8ed7471d540ae83dac8",
      "tree": "ad0996ea95c7967d84894ae1bb3c710300b9bdf8",
      "parents": [
        "a3d3203e4bb40f253b1541e310dc0f9305be7c84"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Mar 09 19:30:28 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Mar 19 07:12:10 2010 -0700"
      },
      "message": "sysfs: use sysfs_bin_attr_init in firmware class driver\n\nAnnotate dynamic sysfs attribute in fw_setup_device(). This gets\nrid of the following lockdep warning:\n\nbnx2 0000:08:00.0: firmware: requesting bnx2/bnx2-mips-06-5.0.0.j6.fw\nBUG: key ffff880008293470 not in .data!\n------------[ cut here ]------------\nWARNING: at kernel/lockdep.c:2706 lockdep_init_map+0x562/0x620()\nModules linked in: bnx2(+) sg tpm_bios floppy rtc_lib usb_storage i2c_piix4 joydev button container shpchp i2c_core sr_mod cdrom pci_hotplug usbhid hid ohci_hcd ehci_hcd sd_mod usbcore edd ext3 mbcache jbd fan ata_generic sata_svw pata_serverworks libata scsi_mod thermal processor\nPid: 1915, comm: work_for_cpu Not tainted 2.6.34-rc1-default #81\nCall Trace:\n [\u003cffffffff8107c1d2\u003e] ? lockdep_init_map+0x562/0x620\n [\u003cffffffff81049fd8\u003e] warn_slowpath_common+0x78/0xd0\n [\u003cffffffff8104a03f\u003e] warn_slowpath_null+0xf/0x20\n [\u003cffffffff8107c1d2\u003e] lockdep_init_map+0x562/0x620\n [\u003cffffffff8117a236\u003e] ? sysfs_new_dirent+0x76/0x120\n [\u003cffffffff8126edb2\u003e] ? put_device+0x12/0x20\n [\u003cffffffff811797cc\u003e] sysfs_add_file_mode+0x6c/0xd0\n [\u003cffffffff8117983c\u003e] sysfs_add_file+0xc/0x10\n [\u003cffffffff8117bf61\u003e] sysfs_create_bin_file+0x21/0x30\n [\u003cffffffff81279c61\u003e] _request_firmware+0x2f1/0x650\n [\u003cffffffff8127a04e\u003e] request_firmware+0xe/0x10\n [\u003cffffffffa01ec19e\u003e] bnx2_init_one+0x8f5/0x177e [bnx2]\n [\u003cffffffff81389eab\u003e] ? _raw_spin_unlock_irq+0x2b/0x40\n [\u003cffffffff81040ed9\u003e] ? finish_task_switch+0x69/0x100\n [\u003cffffffff81040e70\u003e] ? finish_task_switch+0x0/0x100\n [\u003cffffffff81064b40\u003e] ? do_work_for_cpu+0x0/0x30\n [\u003cffffffff811e6302\u003e] local_pci_probe+0x12/0x20\n [\u003cffffffff81064b53\u003e] do_work_for_cpu+0x13/0x30\n [\u003cffffffff81064b40\u003e] ? do_work_for_cpu+0x0/0x30\n [\u003cffffffff81068c56\u003e] kthread+0x96/0xa0\n [\u003cffffffff81003e64\u003e] kernel_thread_helper+0x4/0x10\n [\u003cffffffff8138a350\u003e] ? restore_args+0x0/0x30\n [\u003cffffffff81068bc0\u003e] ? kthread+0x0/0xa0\n [\u003cffffffff81003e60\u003e] ? kernel_thread_helper+0x0/0x10\n---[ end trace a2ecee9c9602d195 ]---\n\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "bc32df00894f0e1dbf583cc3dab210d2969b078a",
      "tree": "1276c26359ac5c4cd231d1d61a4e9649971f4d35",
      "parents": [
        "e5d6151115aee73825c1752aff7cd09adfece839"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Mar 15 00:35:03 2010 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 17 18:43:47 2010 -0700"
      },
      "message": "memory hotplug: allow setting of phys_device\n\n/sys/devices/system/memory/memoryX/phys_device is supposed to contain the\nnumber of the physical device that the corresponding piece of memory\nbelongs to.\n\nIn case a physical device should be replaced or taken offline for whatever\nreason it is necessary to set all corresponding memory pieces offline.\nThe current implementation always sets phys_device to \u00270\u0027 and there is no\nway or hook to change that.  Seems like there was a plan to implement that\nbut it wasn\u0027t finished for whatever reason.\n\nSo add a weak function which architectures can override to actually set\nthe phys_device from within add_memory_block().\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Gerald Schaefer \u003cgerald.schaefer@de.ibm.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\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": "2354dcc7218853a6537ec722be40fde9a11c413b",
      "tree": "6afea7dfd2026c7e87d1c7665b86d617cdf1cbd6",
      "parents": [
        "7cb32942d91a501b2df944928ccc9e6590ab237b"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Feb 12 19:22:26 2010 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:52 2010 -0800"
      },
      "message": "driver core: Use sysfs_rename_link in device_rename\n\nDon\u0027t open code the renaming of symlinks in sysfs\ninstead use the new helper function sysfs_rename_link\n\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3c31f07ad0dab02fe17195d32a965d57fd947707",
      "tree": "940eca4b37ca74dfb2e83d5d65bd60abd50da08d",
      "parents": [
        "d6e976c0d258c9547a308bd8a9a82ec93e2bc6e2"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Feb 14 14:18:53 2010 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:51 2010 -0800"
      },
      "message": "Driver core: Fix first line of kernel-doc for a few functions\n\nThe function name must be followed by a space, hypen, space, and a\nshort description.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "831fad2f75f0d7bfc339de81173e7068a3c72276",
      "tree": "bb566ec230d6bbc1c7ce942e8e1355c9876e24ea",
      "parents": [
        "52cf25d0ab7f78eeecc59ac652ed5090f69b619e"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Tue Jan 26 09:35:00 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:49 2010 -0800"
      },
      "message": "Driver core: make struct platform_driver.id_table const\n\nThis fixes a warning on several pxa based machines:\n\n\tarch/arm/mach-pxa/ssp.c:475: warning: initialization discards qualifiers from pointer target type\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nAcked-by: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nAcked-by: Eric Miao \u003ceric.y.miao@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "52cf25d0ab7f78eeecc59ac652ed5090f69b619e",
      "tree": "031d1ffb3890bd69c0260c864c512e0be62ac05c",
      "parents": [
        "6c1733aca0b48db4d0e660d54976a1cca25b5eaf"
      ],
      "author": {
        "name": "Emese Revfy",
        "email": "re.emese@gmail.com",
        "time": "Tue Jan 19 02:58:23 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:49 2010 -0800"
      },
      "message": "Driver core: Constify struct sysfs_ops in struct kobj_type\n\nConstify struct sysfs_ops.\n\nThis is part of the ops structure constification\neffort started by Arjan van de Ven et al.\n\nBenefits of this constification:\n\n * prevents modification of data that is shared\n   (referenced) by many other structure instances\n   at runtime\n\n * detects/prevents accidental (but not intentional)\n   modification attempts on archs that enforce\n   read-only kernel data at runtime\n\n * potentially better optimized code as the compiler\n   can assume that the const data cannot be changed\n\n * the compiler/linker move const data into .rodata\n   and therefore exclude them from false sharing\n\nSigned-off-by: Emese Revfy \u003cre.emese@gmail.com\u003e\nAcked-by: David Teigland \u003cteigland@redhat.com\u003e\nAcked-by: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nAcked-by: Hans J. Koch \u003chjk@linutronix.de\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6c1733aca0b48db4d0e660d54976a1cca25b5eaf",
      "tree": "8fbc86bb7c8058643a6cdbe865e7d66ad6d8ac5e",
      "parents": [
        "c607cf0c20903f22919c187d1db4f3256c58f0c5"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 21 15:07:59 2010 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:49 2010 -0800"
      },
      "message": "sysdev: fix up the probe/release attributes\n\nThese should be sysdev attributes, not class attributes.  This patch\nshould resolve the problem.\n\nThanks to Stephen Rothwell for pointing out the problem.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "9cd43611ccfb46632bfa7d19f688924ea93f1613",
      "tree": "e11ecee403235ba9d8855892fa7ad55d9b63e221",
      "parents": [
        "985fc176a6c03836454629be2f2a611ccc7c7002"
      ],
      "author": {
        "name": "Emese Revfy",
        "email": "re.emese@gmail.com",
        "time": "Thu Dec 31 14:52:51 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:49 2010 -0800"
      },
      "message": "kobject: Constify struct kset_uevent_ops\n\nConstify struct kset_uevent_ops.\n\nThis is part of the ops structure constification\neffort started by Arjan van de Ven et al.\n\nBenefits of this constification:\n\n * prevents modification of data that is shared\n   (referenced) by many other structure instances\n   at runtime\n\n * detects/prevents accidental (but not intentional)\n   modification attempts on archs that enforce\n   read-only kernel data at runtime\n\n * potentially better optimized code as the compiler\n   can assume that the const data cannot be changed\n\n * the compiler/linker move const data into .rodata\n   and therefore exclude them from false sharing\n\nSigned-off-by: Emese Revfy \u003cre.emese@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "985fc176a6c03836454629be2f2a611ccc7c7002",
      "tree": "30cf29aaaaa56d93c5478bde11bf3daea29d846a",
      "parents": [
        "1e5289c97bba2d8ee7239a416bc3f28743362cd9"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Wed Jan 13 21:18:15 2010 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:49 2010 -0800"
      },
      "message": "driver-core: firmware_class: remove base.h header inclusion\n\nbase.h is used by base drivers for sharing internal structures.\nTurns out firmware_class does not depend on it at all so remove it.\n\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3f5468c9ae293cbca43e4ffe6ca3b3235189042a",
      "tree": "8aa6cfd42558301b02bf651d58f9f69519ce6231",
      "parents": [
        "7934779a69f1184f29d786b89e77dd14519bd226"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Jan 14 22:54:37 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:48 2010 -0800"
      },
      "message": "Driver-Core: require valid action string in uevent trigger\n\nNo longer fall back to \"add\" and warn, but always require a valid\naction-string written to the \"uevent\" file.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7934779a69f1184f29d786b89e77dd14519bd226",
      "tree": "5f642d352c7c19feccae1bb18f557e35526f8ae8",
      "parents": [
        "4237e5fd3e07da268029cd4862cf551d9a74e33f"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Jan 14 22:49:39 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:48 2010 -0800"
      },
      "message": "Driver-Core: disable /sbin/hotplug by default\n\nNo recent mainstream system uses the /sbin/hotplug fork-bomb any more.\nDisable it by default to reflect how it is used these days.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4237e5fd3e07da268029cd4862cf551d9a74e33f",
      "tree": "22a1729bcfec67a63e2bf33485d11a3b77045300",
      "parents": [
        "5e31d76f2817bd50258a092a7c5b15b3006fd61c"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Jan 14 22:47:57 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:48 2010 -0800"
      },
      "message": "Driver-Core: devtmpfs - remove EXPERIMENTAL and flush out the description\n\nAll major distros enable devtmpfs on recent systems, so remove\nthe EXPERIMENTAL flag, and make the description a bit more instructive.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "5e31d76f2817bd50258a092a7c5b15b3006fd61c",
      "tree": "736c73c564635d767a1592cc540a23695b96c6a3",
      "parents": [
        "0933e2d98d1b170ef62d48e18157f5dc43b58217"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Jan 13 14:16:36 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:48 2010 -0800"
      },
      "message": "Driver-Core: devtmpfs - reset inode permissions before unlinking\n\nBefore unlinking the inode, reset the current permissions of possible\nreferences like hardlinks, so granted permissions can not be retained\nacross the device lifetime by creating hardlinks, in the unusual case\nthat there is a user-writable directory on the same filesystem.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\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": "8564a6c140317de04a71eb203bdbb58845d69f9c",
      "tree": "92a9044e3ea45ea25fb7ec0993f4a499c7625e63",
      "parents": [
        "1e395ab3d9b6aa09c5f0aa46a1b0a6fc5bd33133"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:48:06 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:47 2010 -0800"
      },
      "message": "sysdev: Fix type of sysdev class attribute in memory driver\n\nThis attribute is really a sysdev_class attribute, not a plain class attribute.\n\nThey are identical in layout currently, but this might not always be \nthe case.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3701cde6e35245e26f63252f46c62e8a790fa996",
      "tree": "f4fde55198c52db97f46286a41275d66c081e29c",
      "parents": [
        "e1a7e29a266ba3313a873d302b352521403bd155"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:48:04 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:47 2010 -0800"
      },
      "message": "sysdev: Use sysdev_class attribute arrays in node driver\n\nConvert the node driver to sysdev_class attribute arrays. This\ngreatly cleans up the code and remove a lot of code.\n\nSaves ~150 bytes of code on x86-64.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "e1a7e29a266ba3313a873d302b352521403bd155",
      "tree": "37d3e07b7975eb5850743fc95fa3c02ac0fcef75",
      "parents": [
        "38457ab3a0d36320370c715145ba6da514127194"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:48:03 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:47 2010 -0800"
      },
      "message": "sysdev: Convert node driver\n\nUse sysdev_class attribute arrays in node driver\n\nConvert the node driver to sysdev_class attribute arrays. This\ngreatly cleans up the code and remove a lot of code.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "38457ab3a0d36320370c715145ba6da514127194",
      "tree": "0c3f729c450b18b439dc6ce7a1542d9e8d3dd8e3",
      "parents": [
        "1c205ae18db53ff72985dd79f3baaf2dbaba6db7"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:48:02 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:47 2010 -0800"
      },
      "message": "sysfs: Add attribute array to sysdev classes\n\nAdd a attribute array that is automatically registered and unregistered\nto struct sysdev_class. This is similar to what struct class has.\n\nA lot of drivers add list of attributes, so it\u0027s better to do \nthis easily in the common sysdev layer.\n\nThis adds a new field to struct sysdev_class. I audited the \nwhole tree and there are no dynamically allocated sysdev classes,\nso this is fully compatible. \n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "265d2e2e31c5f6dc1b20ae1653a17fdba706f79e",
      "tree": "ef5de928828081f97e7d85650993bc6e0c281f2b",
      "parents": [
        "b15f562fc2f5429f27e5dfb0b0ee5ec44f661986"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:48:00 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:47 2010 -0800"
      },
      "message": "sysdev: Convert cpu driver sysdev class attributes\n\nUsing the new attribute argument convert the cpu driver class attributes\nto carry the node state. Then use a shared function to do what a lot of\nindividual functions did before.\n\nThis eliminates an ugly macro.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "b15f562fc2f5429f27e5dfb0b0ee5ec44f661986",
      "tree": "545b4c0a9a0ea0647a61b80a9461b6f72736e7f1",
      "parents": [
        "c9be0a36f9bf392a7984473124a67a12964df11f"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:47:59 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:47 2010 -0800"
      },
      "message": "sysdev: Convert node driver class attributes to be data driven\n\nUsing the new attribute argument convert the node driver class\nattributes to carry the node state. Then use a shared function to do\nwhat a lot of individual functions did before.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c9be0a36f9bf392a7984473124a67a12964df11f",
      "tree": "23fcf49f277d9a093b2b29831811219410ad7b05",
      "parents": [
        "3d03ba4d1dd2246adff5a9ff1194a539b3bc05a7"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:47:58 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:47 2010 -0800"
      },
      "message": "sysdev: Pass attribute in sysdev_class attributes 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\nSimilar to sysdev_attributes and normal attributes.\n\nThis is a tree-wide sweep, converting everything in one go.\n\nNo functional changes in this patch other than passing the new\nargument everywhere.\n\nTested on x86, the non x86 parts are uncompiled.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "ecdf6ceb8cf4756bd4214bf9755755752b6015f5",
      "tree": "828af56bdfe60396e77bbc05f28e231ffe70fe9b",
      "parents": [
        "20ef9f46a9abe3c25d9f2834f6cc86bfab46d609"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Dec 29 20:11:20 2009 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:46 2010 -0800"
      },
      "message": "Driver core: add platform_create_bundle() helper\n\nMany legacy-style module create singleton platform devices themselves,\nalong with corresponding platform driver. Instead of replicating error\nhandling code in all such drivers, provide a helper that allocates and\nregisters a single platform device and a driver and binds them together.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "77d3d7c1d561f49f755d7390f0764dff90765974",
      "tree": "4a510d5dedd5681fb76353bbaae6d622452fd749",
      "parents": [
        "25cf84cf377c0aae5dbcf937ea89bc7893db5176"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Feb 05 17:57:02 2010 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:46 2010 -0800"
      },
      "message": "driver-core: fix race condition in get_device_parent()\n\nsysfs is creating several devices in cuse class concurrently and with\nCONFIG_SYSFS_DEPRECATED turned off, it triggers the following oops.\n\n BUG: unable to handle kernel NULL pointer dereference at 0000000000000038\n IP: [\u003cffffffff81158b0a\u003e] sysfs_addrm_start+0x4a/0xf0\n PGD 75bb067 PUD 75be067 PMD 0\n Oops: 0000 [#1] PREEMPT SMP\n last sysfs file: /sys/devices/system/cpu/cpu7/topology/core_siblings\n CPU 1\n Modules linked in: cuse fuse\n Pid: 4737, comm: osspd Not tainted 2.6.31-work #77\n RIP: 0010:[\u003cffffffff81158b0a\u003e]  [\u003cffffffff81158b0a\u003e] sysfs_addrm_start+0x4a/0xf0\n RSP: 0018:ffff88000042f8f8  EFLAGS: 00010296\n RAX: ffff88000042ffd8 RBX: 0000000000000000 RCX: 0000000000000000\n RDX: 0000000000000000 RSI: ffff880007eef660 RDI: 0000000000000001\n RBP: ffff88000042f918 R08: 0000000000000000 R09: 0000000000000000\n R10: 0000000000000001 R11: ffffffff81158b0a R12: ffff88000042f928\n R13: 00000000fffffff4 R14: 0000000000000000 R15: ffff88000042f9a0\n FS:  00007fe93905a950(0000) GS:ffff880008600000(0000) knlGS:0000000000000000\n CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n CR2: 0000000000000038 CR3: 00000000077c9000 CR4: 00000000000006e0\n DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n Process osspd (pid: 4737, threadinfo ffff88000042e000, task ffff880007eef040)\n Stack:\n  ffff880005da10e8 0000000011cc8d6e ffff88000042f928 ffff880003d28a28\n \u003c0\u003e ffff88000042f988 ffffffff811592d7 0000000000000000 0000000000000000\n \u003c0\u003e 0000000000000000 0000000000000000 ffff88000042f958 0000000011cc8d6e\n Call Trace:\n  [\u003cffffffff811592d7\u003e] create_dir+0x67/0xe0\n  [\u003cffffffff811593a8\u003e] sysfs_create_dir+0x58/0xb0\n  [\u003cffffffff8128ca7c\u003e] ? kobject_add_internal+0xcc/0x220\n  [\u003cffffffff812942e1\u003e] ? vsnprintf+0x3c1/0xb90\n  [\u003cffffffff8128cab7\u003e] kobject_add_internal+0x107/0x220\n  [\u003cffffffff8128cd37\u003e] kobject_add_varg+0x47/0x80\n  [\u003cffffffff8128ce53\u003e] kobject_add+0x53/0x90\n  [\u003cffffffff81357d84\u003e] device_add+0xd4/0x690\n  [\u003cffffffff81356c2b\u003e] ? dev_set_name+0x4b/0x70\n  [\u003cffffffffa001a884\u003e] cuse_process_init_reply+0x2b4/0x420 [cuse]\n  ...\n\nThe problem is that kobject_add_internal() first adds a kobject to the\nkset and then try to create sysfs directory for it.  If the creation\nfails, it remove the kobject from the kset.  get_device_parent()\naccesses class_dirs kset while only holding class_dirs.list_lock to\nsee whether the cuse class dir exists.  But when it exists, it may not\nhave finished initialization yet or may fail and get removed soon.  In\nthe above case, the former happened so the second one ends up trying\nto create subdirectory under NULL sysfs_dirent.\n\nFix it by grabbing a mutex in get_device_parent().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Colin Guthrie \u003ccguthrie@mandriva.org\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "12c7389abe5786349d3ea6da1961cf78d0c1c7cd",
      "tree": "02ba72cf32986de8327a6146d5fd0b2448935958",
      "parents": [
        "468e2366cdb80cf8a691b8bc212260cfbdbd518e"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Thu Jan 21 11:50:28 2010 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sun Mar 07 18:01:13 2010 +0100"
      },
      "message": "iommu-api: Remove iommu_{un}map_range functions\n\nThese functions are not longer used and can be removed\nsavely. There functionality is now provided by the\niommu_{un}map functions which are also capable of multiple\npage sizes.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "67651786948c360c3122b8a17cb1e59209d50880",
      "tree": "533a24ba14a513a99c19af4507dde499aaf1d9c5",
      "parents": [
        "cefc53c7f494240d4813c80154c7617452d1904d"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Thu Jan 21 16:32:27 2010 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sun Mar 07 18:01:11 2010 +0100"
      },
      "message": "iommu-api: Add -\u003e{un}map callbacks to iommu_ops\n\nThis patch adds new callbacks for mapping and unmapping\npages to the iommu_ops structure. These callbacks are aware\nof page sizes which makes them different to the\n-\u003e{un}map_range callbacks.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "cefc53c7f494240d4813c80154c7617452d1904d",
      "tree": "675370ec20df0841e404ed7b191d2d41f30f7e52",
      "parents": [
        "4abc14a733f9002c05623db755aaafdd27fa7a91"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Fri Jan 08 13:35:09 2010 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sun Mar 07 18:01:11 2010 +0100"
      },
      "message": "iommu-api: Add iommu_map and iommu_unmap functions\n\nThese two functions provide support for mapping and\nunmapping physical addresses to io virtual addresses. The\ndifference to the iommu_(un)map_range() is that the new\nfunctions take a gfp_order parameter instead of a size. This\nallows the IOMMU backend implementations to detect easier if\na given range can be mapped by larger page sizes.\nThese new functions should replace the old ones in the long\nterm.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "4abc14a733f9002c05623db755aaafdd27fa7a91",
      "tree": "0fd549edf79ba6df91ab6c601521270b937aaebb",
      "parents": [
        "d2be1651b736002e0c76d7095d6c0ba77b4a897c"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Wed Jan 20 14:52:23 2010 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Sun Mar 07 18:01:11 2010 +0100"
      },
      "message": "iommu-api: Rename -\u003e{un}map function pointers to -\u003e{un}map_range\n\nThe new function pointer names match better with the\ntop-level functions of the iommu-api which are using them.\nMain intention of this change is to make the -\u003e{un}map\npointer names free for two new mapping functions.\n\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\n"
    },
    {
      "commit": "d690b2cd222afc75320b9b8e9da7df02e9e630ca",
      "tree": "41b7f13c7176bc74d7836a7ec585a5a456302ea9",
      "parents": [
        "87d1b3e60b55ef65f10054ccc319e5d67cf010e9"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Mar 06 21:28:37 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Mar 06 21:28:37 2010 +0100"
      },
      "message": "PM: Provide generic subsystem-level callbacks\n\nThere are subsystems whose power management callbacks only need to\ninvoke the callbacks provided by device drivers.  Still, their system\nsleep PM callbacks should play well with the runtime PM callbacks,\nso that devices suspended at run time can be left in that state for\na system sleep transition.\n\nProvide a set of generic PM callbacks for such subsystems and\ndefine convenience macros for populating dev_pm_ops structures.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    }
  ],
  "next": "f8824cee405c62ba465b85365201166d9cf86a14"
}
