)]}'
{
  "commit": "09f82ea92822a7bbb7e816508abbda47ed54a77f",
  "tree": "059011e094839a633597c2e88afc40f779894438",
  "parents": [
    "97c146ef075dc40ae34407c03d3860fc3850b8e8"
  ],
  "author": {
    "name": "Alan Stern",
    "email": "stern@rowland.harvard.edu",
    "time": "Mon Nov 19 10:53:40 2007 -0500"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@suse.de",
    "time": "Thu Jan 24 20:40:36 2008 -0800"
  },
  "message": "Kobject: drop child-\u003eparent ref at unregistration\n\nThis patch (as1015) reverts changes that were made to the driver core\nabout four years ago.  The intent back then was to avoid certain kinds\nof invalid memory accesses by leaving kernel objects allocated as long\nas any of their children were still allocated.  The original and\ncorrect approach was to wait only as long as any children were still\n_registered_; that\u0027s what this patch reinstates.\n\nThis fixes a problem in the SCSI core made visible by the class_device\nto regular device conversion: A reference loop (scsi_device holds\nreference to request_queue, which is the child of a gendisk, which is\nthe child of the scsi_device) prevents the data structures from being\nreleased, even though they are deregistered okay.\n\nIt\u0027s possible that this change will cause a few bugs to surface,\nthings that have been hidden for several years.  They can be fixed\neasily enough by having the child device take an explicit reference to\nthe parent whenever needed.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1015f74212d088b471561fb1b78a4fa3aa8895f7",
      "old_mode": 33188,
      "old_path": "lib/kobject.c",
      "new_id": "493e991abb1b452c205d6224fb41e223c9aa63c1",
      "new_mode": 33188,
      "new_path": "lib/kobject.c"
    }
  ]
}
