1. 05 May, 2006 1 commit
    • Russell King's avatar
      [BLOCK] Fix oops on removal of SD/MMC card · 56cf6504
      Russell King authored
      The block layer keeps a reference (driverfs_dev) to the struct
      device associated with the block device, and uses it internally
      for generating uevents in block_uevent.
      
      Block device uevents include umounting the partition, which can
      occur after the backing device has been removed.
      
      Unfortunately, this reference is not counted.  This means that
      if the struct device is removed from the device tree, the block
      layers reference will become stale.
      
      Guard against this by holding a reference to the struct device
      in add_disk(), and only drop the reference when we're releasing
      the gendisk kobject - in other words when we can be sure that no
      further uevents will be generated for this block device.
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      Acked-by: default avatarJens Axboe <axboe@suse.de>
      56cf6504
  2. 04 May, 2006 36 commits
  3. 03 May, 2006 3 commits