mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
block: don't depend on consecutive minor space
* Implement disk_devt() and part_devt() and use them to directly access devt instead of computing it from ->major and ->first_minor. Note that all references to ->major and ->first_minor outside of block layer is used to determine devt of the disk (the part0) and as ->major and ->first_minor will continue to represent devt for the disk, converting these users aren't strictly necessary. However, convert them for consistency. * Implement disk_max_parts() to avoid directly deferencing genhd->minors. * Update bdget_disk() such that it doesn't assume consecutive minor space. * Move devt computation from register_disk() to add_disk() and make it the only one (all other usages use the initially determined value). These changes clean up the code and will help disk->part dereference fix and extended block device numbers. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
This commit is contained in:
parent
cf771cb5a7
commit
f331c0296f
16 changed files with 132 additions and 67 deletions
|
|
@ -197,7 +197,7 @@ static int mspro_block_bd_open(struct inode *inode, struct file *filp)
|
|||
static int mspro_block_disk_release(struct gendisk *disk)
|
||||
{
|
||||
struct mspro_block_data *msb = disk->private_data;
|
||||
int disk_id = disk->first_minor >> MSPRO_BLOCK_PART_SHIFT;
|
||||
int disk_id = MINOR(disk_devt(disk)) >> MSPRO_BLOCK_PART_SHIFT;
|
||||
|
||||
mutex_lock(&mspro_block_disk_lock);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue