Browse Source

mmc: Fix the block device read only flag

While the MMC handled the card's read only flag correctly on open,
it did not setup the flag in the allocated disk structure. The
consequence being that probing the /sys/class/block/mmcblkX/ro
attribute always reported 0.

Signed-off-by: Marc-Andre Hebert <hebert.marcandre@gmail.com>
Reviewed-by: Chris Ball <cjb@laptop.org>
Tested-by: Chris Ball <cjb@laptop.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
Marc-André Hébert 14 years ago
parent
commit
3362177fe1
1 changed files with 1 additions and 0 deletions
  1. 1 0
      drivers/mmc/card/block.c

+ 1 - 0
drivers/mmc/card/block.c

@@ -621,6 +621,7 @@ static struct mmc_blk_data *mmc_blk_alloc(struct mmc_card *card)
 	md->disk->private_data = md;
 	md->disk->private_data = md;
 	md->disk->queue = md->queue.queue;
 	md->disk->queue = md->queue.queue;
 	md->disk->driverfs_dev = &card->dev;
 	md->disk->driverfs_dev = &card->dev;
+	set_disk_ro(md->disk, md->read_only);
 
 
 	/*
 	/*
 	 * As discussed on lkml, GENHD_FL_REMOVABLE should:
 	 * As discussed on lkml, GENHD_FL_REMOVABLE should: