)]}'
{
  "commit": "ca22e56debc57b47c422b749c93217ba62644be2",
  "tree": "bb2da058ddc05f8cde1161a60f7fdce9620c63ff",
  "parents": [
    "6261ddee70174372d6a75601f40719b7a5392f3f"
  ],
  "author": {
    "name": "Kay Sievers",
    "email": "kay.sievers@vrfy.org",
    "time": "Wed Dec 14 14:29:38 2011 -0800"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@suse.de",
    "time": "Wed Dec 14 14:29:38 2011 -0800"
  },
  "message": "driver-core: implement \u0027sysdev\u0027 functionality for regular devices and buses\n\nAll sysdev classes and sysdev devices will converted to regular devices\nand buses to properly hook userspace into the event processing.\n\nThere is no interesting difference between a \u0027sysdev\u0027 and \u0027device\u0027 which\nwould justify to roll an entire own subsystem with different userspace\nexport semantics. Userspace relies on events and generic sysfs subsystem\ninfrastructure from sysdev devices, which are currently not properly\navailable.\n\nEvery converted sysdev class will create a regular device with the class\nname in /sys/devices/system and all registered devices will becom a children\nof theses devices.\n\nFor compatibility reasons, the sysdev class-wide attributes are created\nat this parent device. (Do not copy that logic for anything new, subsystem-\nwide properties belong to the subsystem, not to some fake parent device\ncreated in /sys/devices.)\n\nEvery sysdev driver is implemented as a simple subsystem interface now,\nand no longer called a driver.\n\nAfter all sysdev classes are ported to regular driver core entities, the\nsysdev implementation will be entirely removed from the kernel.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "21c1b96c34c6da46264cadfd8d38d7cb88571ba4",
      "old_mode": 33188,
      "old_path": "drivers/base/base.h",
      "new_id": "7a6ae4228761542bdc2e1f35ee8e446b38d57375",
      "new_mode": 33188,
      "new_path": "drivers/base/base.h"
    },
    {
      "type": "modify",
      "old_id": "000e7b2006f8f5dc96c269ac3615b8b4668bbd0d",
      "old_mode": 33188,
      "old_path": "drivers/base/bus.c",
      "new_id": "99dc5921e1dd28be8e6a910964dde8ca14900238",
      "new_mode": 33188,
      "new_path": "drivers/base/bus.c"
    },
    {
      "type": "modify",
      "old_id": "b80d91cc8c3ac408335b09428bdf8ea581a5157e",
      "old_mode": 33188,
      "old_path": "drivers/base/class.c",
      "new_id": "03243d4002fd5e995dd198447e98a9d2343fd89d",
      "new_mode": 33188,
      "new_path": "drivers/base/class.c"
    },
    {
      "type": "modify",
      "old_id": "82c865452c7080d180ec6a453ab1efb3e988dac3",
      "old_mode": 33188,
      "old_path": "drivers/base/core.c",
      "new_id": "a31ea193fba04b7f6fe4258ee71ff8874834eec5",
      "new_mode": 33188,
      "new_path": "drivers/base/core.c"
    },
    {
      "type": "modify",
      "old_id": "c8a934e794213fd3891f32d7bf489389973135cd",
      "old_mode": 33188,
      "old_path": "drivers/base/init.c",
      "new_id": "c16f0b808a174e75f2df8da9da6008f56f45557c",
      "new_mode": 33188,
      "new_path": "drivers/base/init.c"
    },
    {
      "type": "modify",
      "old_id": "9dff77bfe1e348a0ed3a3e4f450d192b6a4ac580",
      "old_mode": 33188,
      "old_path": "drivers/base/sys.c",
      "new_id": "409f5ce78829a7a7624a56f6f19422f783ae7e83",
      "new_mode": 33188,
      "new_path": "drivers/base/sys.c"
    },
    {
      "type": "modify",
      "old_id": "341fb740d8515191d9b7b521adf8d9c8b68010c8",
      "old_mode": 33188,
      "old_path": "include/linux/device.h",
      "new_id": "7f9fc1505e94470dfb3ee829e7307249e175f2c3",
      "new_mode": 33188,
      "new_path": "include/linux/device.h"
    }
  ]
}
