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

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'block5.9-2020-10-08' of git://git.kernel.dk/linux-block

Pull block fixes from Jens Axboe:
"A few fixes that should go into this release:

- NVMe controller error path reference fix (Chaitanya)

- Fix regression with IBM partitions on non-dasd devices (Christoph)

- Fix a missing clear in the compat CDROM packet structure (Peilin)"

* tag 'block5.9-2020-10-08' of git://git.kernel.dk/linux-block:
partitions/ibm: fix non-DASD devices
nvme-core: put ctrl ref when module ref get fail
block/scsi-ioctl: Fix kernel-infoleak in scsi_put_cdrom_generic_arg()

+7 -5
+3 -4
block/partitions/ibm.c
··· 305 305 if (!disk->fops->getgeo) 306 306 goto out_exit; 307 307 fn = symbol_get(dasd_biodasdinfo); 308 - if (!fn) 309 - goto out_exit; 310 308 blocksize = bdev_logical_block_size(bdev); 311 309 if (blocksize <= 0) 312 310 goto out_symbol; ··· 324 326 geo->start = get_start_sect(bdev); 325 327 if (disk->fops->getgeo(bdev, geo)) 326 328 goto out_freeall; 327 - if (fn(disk, info)) { 329 + if (!fn || fn(disk, info)) { 328 330 kfree(info); 329 331 info = NULL; 330 332 } ··· 368 370 out_nogeo: 369 371 kfree(info); 370 372 out_symbol: 371 - symbol_put(dasd_biodasdinfo); 373 + if (fn) 374 + symbol_put(dasd_biodasdinfo); 372 375 out_exit: 373 376 return res; 374 377 }
+1
block/scsi_ioctl.c
··· 651 651 compat_int_t stat; 652 652 compat_caddr_t sense; 653 653 unsigned char data_direction; 654 + unsigned char pad[3]; 654 655 compat_int_t quiet; 655 656 compat_int_t timeout; 656 657 compat_caddr_t reserved[1];
+3 -1
drivers/nvme/host/core.c
··· 3265 3265 } 3266 3266 3267 3267 nvme_get_ctrl(ctrl); 3268 - if (!try_module_get(ctrl->ops->module)) 3268 + if (!try_module_get(ctrl->ops->module)) { 3269 + nvme_put_ctrl(ctrl); 3269 3270 return -EINVAL; 3271 + } 3270 3272 3271 3273 file->private_data = ctrl; 3272 3274 return 0;