Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mtd: Remove redundant mutex from mtd_blkdevs.c

In commit 2a48fc0ab24241755dc93bfd4f01d68efab47f5a ('block: autoconvert
trivial BKL users to private mutex'), Arnd replaced the BKL usage with a
mutex. However, Maxim has already provided a better fix in commit
480792b7bf188c29b8d4b10fee65c3a06ec5dbf7 ('mtd: blktrans: kill BKL'),
which was simply to remove the BKL without replacing it — since he'd
already made it do all necessary locking for itself.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

-7
-7
drivers/mtd/mtd_blkdevs.c
··· 37 37 38 38 #include "mtdcore.h" 39 39 40 - static DEFINE_MUTEX(mtd_blkdevs_mutex); 41 40 static LIST_HEAD(blktrans_majors); 42 41 static DEFINE_MUTEX(blktrans_ref_mutex); 43 42 ··· 184 185 if (!dev) 185 186 return -ERESTARTSYS; /* FIXME: busy loop! -arnd*/ 186 187 187 - mutex_lock(&mtd_blkdevs_mutex); 188 188 mutex_lock(&dev->lock); 189 189 190 190 if (dev->open++) ··· 200 202 unlock: 201 203 mutex_unlock(&dev->lock); 202 204 blktrans_dev_put(dev); 203 - mutex_unlock(&mtd_blkdevs_mutex); 204 205 return ret; 205 206 } 206 207 ··· 211 214 if (!dev) 212 215 return ret; 213 216 214 - mutex_lock(&mtd_blkdevs_mutex); 215 217 mutex_lock(&dev->lock); 216 218 217 219 if (--dev->open) ··· 226 230 unlock: 227 231 mutex_unlock(&dev->lock); 228 232 blktrans_dev_put(dev); 229 - mutex_unlock(&mtd_blkdevs_mutex); 230 233 return ret; 231 234 } 232 235 ··· 258 263 if (!dev) 259 264 return ret; 260 265 261 - mutex_lock(&mtd_blkdevs_mutex); 262 266 mutex_lock(&dev->lock); 263 267 264 268 if (!dev->mtd) ··· 272 278 } 273 279 unlock: 274 280 mutex_unlock(&dev->lock); 275 - mutex_unlock(&mtd_blkdevs_mutex); 276 281 blktrans_dev_put(dev); 277 282 return ret; 278 283 }