Rakesh Pandit
75ba4ada82
ligtnvm: fix double blk_put_queue on same queue
On an error path in NVM_DEV_CREATE ioctl blk_put_queue is being called
twice: one via blk_cleanup_queue and another via put_disk. Straight fix
seems to remove queue pointer so that disk_release never ends up caling
blk_put_queue again.
[ 391.808827] WARNING: CPU: 1 PID: 1250 at lib/refcount.c:128 refcount_sub_and_test+0x70/0x80
[ 391.808830] refcount_t: underflow; use-after-free.
[ 391.808832] Modules linked in: nf_conntrack_netbios_ns............
[ 391.809052] CPU: 1 PID: 1250 Comm: nvme Not tainted.........
[ 391.809057] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996),
BIOS rel-1.7.5-0-ge51488c-20140602_164612-nilsson.home.kraxel.org 04/01/2014
[ 391.809060] Call Trace:
[ 391.809079] dump_stack+0x63/0x86
[ 391.809094] __warn+0xcb/0xf0
[ 391.809103] warn_slowpath_fmt+0x5f/0x80
[ 391.809118] refcount_sub_and_test+0x70/0x80
[ 391.809125] refcount_dec_and_test+0x11/0x20
[ 391.809136] kobject_put+0x1f/0x60
[ 391.809149] blk_put_queue+0x15/0x20
[ 391.809159] disk_release+0xae/0xf0
[ 391.809172] device_release+0x32/0x90
[ 391.809184] kobject_release+0x6a/0x170
[ 391.809196] kobject_put+0x2f/0x60
[ 391.809206] put_disk+0x17/0x20
[ 391.809219] nvm_ioctl_dev_create.isra.16+0x897/0xa30
[ 391.809236] nvm_ctl_ioctl+0x23c/0x4c0
[ 391.809248] do_vfs_ioctl+0xa3/0x5f0
[ 391.809258] SyS_ioctl+0x79/0x90
[ 391.809271] entry_SYSCALL_64_fastpath+0x1a/0xa9
[ 391.809280] RIP: 0033:0x7f5d3ef363c7
[ 391.809286] RSP: 002b:00007ffc72ed8d78 EFLAGS: 00000206 ORIG_RAX: 0000000000000010
[ 391.809296] RAX: ffffffffffffffda RBX: 00007ffc72edb552 RCX: 00007f5d3ef363c7
[ 391.809301] RDX: 00007ffc72ed8d90 RSI: 0000000040804c22 RDI: 0000000000000003
[ 391.809306] RBP: 0000000000000001 R08: 0000000000000020 R09: 0000000000000001
[ 391.809311] R10: 000000000000053f R11: 0000000000000206 R12: 0000000000000000
[ 391.809316] R13: 0000000000000000 R14: 00007ffc72edb58d R15: 00007ffc72edb581
Signed-off-by: Rakesh Pandit <rakesh@tuxera.com>
Reviewed-by: Matias Bjørling <matias@cnexlabs.com>
Fixes: 7d1ef2f408 "lightnvm: fix cleanup order of disk on init error"
Signed-off-by: Jens Axboe <axboe@fb.com>
|
2017-04-20 08:17:47 -06:00 |
| .. |
|
accessibility
|
|
|
|
acpi
|
TTY/Serial driver fixes for 4.11-rc4
|
2017-03-26 11:03:42 -07:00 |
|
amba
|
|
|
|
android
|
sched/headers: Prepare for new header dependencies before moving code to <linux/sched/signal.h>
|
2017-03-02 08:42:29 +01:00 |
|
ata
|
ahci: qoriq: correct the sata ecc setting error
|
2017-03-09 11:55:23 -05:00 |
|
atm
|
sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h>
|
2017-03-02 08:42:32 +01:00 |
|
auxdisplay
|
auxdisplay: img-ascii-lcd: add missing sentinel entry in img_ascii_lcd_matches
|
2017-03-16 16:59:55 +09:00 |
|
base
|
drivers core: remove assert_held_device_hotplug()
|
2017-03-16 16:56:19 -07:00 |
|
bcma
|
|
|
|
block
|
null_blk: Use blk_init_request_from_bio() instead of open-coding it
|
2017-04-19 17:38:31 -06:00 |
|
bluetooth
|
Bluetooth: btqcomsmd: fix compile-test dependency
|
2017-03-22 19:22:04 -07:00 |
|
bus
|
|
|
|
cdrom
|
|
|
|
char
|
Char/Misc driver fixes for 4.11-rc4
|
2017-03-26 11:15:54 -07:00 |
|
clk
|
Allwinner clock fixes for 4.11
|
2017-03-23 16:08:46 -07:00 |
|
clocksource
|
Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
|
2017-03-17 13:13:35 -07:00 |
|
connector
|
|
|
|
cpufreq
|
Merge branches 'pm-cpufreq-fixes', 'pm-cpufreq-sched-fixes' and 'intel_pstate-fixes'
|
2017-03-24 00:43:26 +01:00 |
|
cpuidle
|
cpuidle: Validate cpu_dev in cpuidle_add_sysfs()
|
2017-03-21 22:26:37 +01:00 |
|
crypto
|
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
|
2017-03-24 14:11:36 -07:00 |
|
dax
|
device-dax: fix debug output typo
|
2017-03-10 19:56:56 -08:00 |
|
dca
|
|
|
|
devfreq
|
scripts/spelling.txt: add "followings" pattern and fix typo instances
|
2017-02-27 18:43:47 -08:00 |
|
dio
|
|
|
|
dma
|
sched/headers: Prepare to move the get_task_struct()/put_task_struct() and related APIs from <linux/sched.h> to <linux/sched/task.h>
|
2017-03-02 08:42:40 +01:00 |
|
dma-buf
|
sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h>
|
2017-03-02 08:42:32 +01:00 |
|
edac
|
EDAC, pnd2_edac: Fix reported DIMM number
|
2017-03-26 09:36:28 +02:00 |
|
eisa
|
|
|
|
extcon
|
extcon: int3496: Set the id pin to direction-input if necessary
|
2017-03-22 18:29:48 +09:00 |
|
firewire
|
Merge branch 'idr-4.11' of git://git.infradead.org/users/willy/linux-dax
|
2017-02-28 20:29:41 -08:00 |
|
firmware
|
Merge branch 'efi-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
|
2017-03-07 14:25:48 -08:00 |
|
fmc
|
|
|
|
fpga
|
|
|
|
fsi
|
|
|
|
gpio
|
gpio:mcp23s08 Fixed missing interrupts
|
2017-03-17 09:20:28 +01:00 |
|
gpu
|
Merge branch 'drm-fixes-4.11' of git://people.freedesktop.org/~agd5f/linux into drm-fixes
|
2017-03-24 11:05:06 +10:00 |
|
hid
|
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
|
2017-03-21 13:07:18 -07:00 |
|
hsi
|
sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h>
|
2017-03-02 08:42:32 +01:00 |
|
hv
|
Drivers: hv: vmbus: Don't leak memory when a channel is rescinded
|
2017-03-16 16:42:33 +09:00 |
|
hwmon
|
hwmon: (asus_atk0110) fix uninitialized data access
|
2017-03-23 12:01:57 -07:00 |
|
hwspinlock
|
|
|
|
hwtracing
|
intel_th: pci: Add Gemini Lake support
|
2017-03-15 14:55:18 +02:00 |
|
i2c
|
Revert "i2c: copy device properties when using i2c_register_board_info()"
|
2017-03-09 16:41:48 +01:00 |
|
ide
|
sched/headers: Prepare for new header dependencies before moving code to <linux/sched/task_stack.h>
|
2017-03-02 08:42:36 +01:00 |
|
idle
|
Power management turbostat utility updates for v4.11-rc1
|
2017-03-02 17:41:27 -08:00 |
|
iio
|
iio: imu: st_lsm6dsx: fix FIFO_CTRL2 overwrite during watermark configuration
|
2017-03-19 10:44:42 +00:00 |
|
infiniband
|
IB/qib: fix false-postive maybe-uninitialized warning
|
2017-03-24 22:44:29 -04:00 |
|
input
|
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
|
2017-03-23 19:51:06 -07:00 |
|
iommu
|
Merge branch 'for-joerg/arm-smmu/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux into iommu/fixes
|
2017-03-22 23:59:56 +01:00 |
|
ipack
|
|
|
|
irqchip
|
irqchip/irqdomain updates for 4.11-rc2
|
2017-03-09 12:06:41 +01:00 |
|
isdn
|
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
|
2017-03-14 21:31:23 -07:00 |
|
leds
|
sched/headers: Prepare for new header dependencies before moving code to <linux/sched/loadavg.h>
|
2017-03-02 08:42:27 +01:00 |
|
lguest
|
sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h>
|
2017-03-02 08:42:32 +01:00 |
|
lightnvm
|
ligtnvm: fix double blk_put_queue on same queue
|
2017-04-20 08:17:47 -06:00 |
|
macintosh
|
powerpc/pmac: Fix crash in dma-mapping.h with NULL dma_ops
|
2017-03-10 14:17:23 +11:00 |
|
mailbox
|
sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h>
|
2017-03-02 08:42:32 +01:00 |
|
mcb
|
|
|
|
md
|
block: remove the discard_zeroes_data flag
|
2017-04-08 11:25:38 -06:00 |
|
media
|
media fixes for v4.11-rc4
|
2017-03-24 13:34:16 -07:00 |
|
memory
|
Linux 4.11-rc1
|
2017-03-06 08:37:53 -08:00 |
|
memstick
|
|
|
|
message
|
|
|
|
mfd
|
|
|
|
misc
|
Char/Misc driver fixes for 4.11-rc4
|
2017-03-26 11:15:54 -07:00 |
|
mmc
|
mmc: remove the discard_zeroes_data flag
|
2017-04-08 11:25:38 -06:00 |
|
mtd
|
blk-mq: constify struct blk_mq_ops
|
2017-03-31 08:28:58 -06:00 |
|
net
|
net:ethernet:aquantia: Fix for RX checksum offload.
|
2017-03-22 19:40:52 -07:00 |
|
nfc
|
scripts/spelling.txt: add "omited" pattern and fix typo instances
|
2017-02-27 18:43:47 -08:00 |
|
ntb
|
|
|
|
nubus
|
|
|
|
nvdimm
|
nfit, libnvdimm: fix interleave set cookie calculation
|
2017-03-01 00:49:42 -08:00 |
|
nvme
|
lightnvm: Use blk_init_request_from_bio() instead of open-coding it
|
2017-04-19 17:38:33 -06:00 |
|
nvmem
|
|
|
|
of
|
|
|
|
oprofile
|
sched/headers: Prepare to move the get_task_struct()/put_task_struct() and related APIs from <linux/sched.h> to <linux/sched/task.h>
|
2017-03-02 08:42:40 +01:00 |
|
parisc
|
Merge branch 'parisc-4.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux
|
2017-03-03 16:20:06 -08:00 |
|
parport
|
parport: fix attempt to write duplicate procfiles
|
2017-03-16 17:32:21 +09:00 |
|
pci
|
PCI/ASPM: Always set link->downstream to avoid NULL dereference on remove
|
2017-03-07 14:23:30 -06:00 |
|
pcmcia
|
|
|
|
perf
|
sched/headers: Prepare for new header dependencies before moving code to <linux/sched/clock.h>
|
2017-03-02 08:42:27 +01:00 |
|
phy
|
phy: qcom-usb-hs: Add depends on EXTCON
|
2017-03-09 15:29:57 +05:30 |
|
pinctrl
|
pinctrl: qcom: ipq4019: add missing pingroups for pins > 70
|
2017-03-23 10:13:15 +01:00 |
|
platform
|
platform-drivers-x86 for v4.11-2
|
2017-03-13 13:23:43 -07:00 |
|
pnp
|
|
|
|
power
|
scripts/spelling.txt: add "intialization" pattern and fix typo instances
|
2017-02-27 18:43:47 -08:00 |
|
powercap
|
|
|
|
pps
|
|
|
|
ps3
|
sched/headers: Prepare for new header dependencies before moving code to <linux/sched/signal.h>
|
2017-03-02 08:42:29 +01:00 |
|
ptp
|
PTP: fix ptr_ret.cocci warnings
|
2017-03-20 16:25:06 +01:00 |
|
pwm
|
pwm: Changes for v4.11-rc1
|
2017-03-01 09:46:02 -08:00 |
|
rapidio
|
rapidio: use get_user_pages_unlocked()
|
2017-02-27 18:43:45 -08:00 |
|
ras
|
|
|
|
regulator
|
|
|
|
remoteproc
|
remoteproc: qcom: fix QCOM_SMD dependencies
|
2017-03-20 14:45:44 -07:00 |
|
reset
|
|
|
|
rpmsg
|
virtio, vhost: optimizations, fixes
|
2017-03-02 13:53:13 -08:00 |
|
rtc
|
sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h>
|
2017-03-02 08:42:32 +01:00 |
|
s390
|
Merge branch 'WIP.sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
|
2017-03-03 10:16:38 -08:00 |
|
sbus
|
jsflash: stop sharing request queue across multiple gendisks
|
2017-03-28 15:06:58 -06:00 |
|
scsi
|
scsi: sd: Remove LBPRZ dependency for discards
|
2017-04-08 11:25:38 -06:00 |
|
sfi
|
|
|
|
sh
|
|
|
|
sn
|
|
|
|
soc
|
sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h>
|
2017-03-02 08:42:32 +01:00 |
|
spi
|
sched/headers: Prepare for new header dependencies before moving code to <uapi/linux/sched/types.h>
|
2017-03-02 08:42:27 +01:00 |
|
spmi
|
|
|
|
ssb
|
|
|
|
staging
|
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
|
2017-03-14 21:31:23 -07:00 |
|
target
|
block: remove the discard_zeroes_data flag
|
2017-04-08 11:25:38 -06:00 |
|
tc
|
|
|
|
thermal
|
thermal: cpu_cooling: Check OPP for errors
|
2017-03-13 10:06:55 +08:00 |
|
thunderbolt
|
|
|
|
tty
|
TTY/Serial driver fixes for 4.11-rc4
|
2017-03-26 11:03:42 -07:00 |
|
uio
|
sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h>
|
2017-03-02 08:42:32 +01:00 |
|
usb
|
USB-serial fixes for v4.11-rc4
|
2017-03-23 22:07:22 +01:00 |
|
uwb
|
uwb: i1480-dfu: fix NULL-deref at probe
|
2017-03-14 17:07:31 +08:00 |
|
vfio
|
VFIO fixes for v4.11-rc4
|
2017-03-24 14:39:36 -07:00 |
|
vhost
|
vhost-vsock: add pkt cancel capability
|
2017-03-21 14:41:46 -07:00 |
|
video
|
sched/headers: Remove the <linux/mm_types.h> dependency from <linux/sched.h>
|
2017-03-03 01:45:16 +01:00 |
|
virt
|
|
|
|
virtio
|
virtio_balloon: prevent uninitialized variable use
|
2017-03-28 20:41:28 +03:00 |
|
vlynq
|
|
|
|
vme
|
|
|
|
w1
|
sched/headers: Prepare for new header dependencies before moving code to <linux/sched/signal.h>
|
2017-03-02 08:42:29 +01:00 |
|
watchdog
|
watchdog: retu: restore MFD dependency
|
2017-03-01 06:15:10 -08:00 |
|
xen
|
xen/acpi: upload PM state from init-domain to Xen
|
2017-03-23 12:00:02 -04:00 |
|
zorro
|
|
|
|
Kconfig
|
|
|
|
Makefile
|
|
|