linux/drivers
Leon Romanovsky b089f7fc89 Revert "RDMA/core: Fix ib_qp_usecnt_dec() called when error"
[ Upstream commit 7922d3de4d ]

This reverts commit 7c4a539ec3. which causes
to the following error in mlx4.

  Destroy of kernel CQ shouldn't fail
  WARNING: CPU: 4 PID: 18064 at include/rdma/ib_verbs.h:3936 mlx4_ib_dealloc_xrcd+0x12e/0x1b0 [mlx4_ib]
  Modules linked in: bonding ib_ipoib ip_gre ipip tunnel4 geneve rdma_ucm nf_tables ib_umad mlx4_en mlx4_ib ib_uverbs mlx4_core ip6_gre gre ip6_tunnel tunnel6 iptable_raw openvswitch nsh rpcrdma ib_iser libiscsi scsi_transport_iscsi rdma_cm iw_cm ib_cm ib_core xt_conntrack xt_MASQUERADE nf_conntrack_netlink nfnetlink xt_addrtype iptable_nat nf_nat br_netfilter overlay fuse [last unloaded: mlx4_core]
  CPU: 4 PID: 18064 Comm: ibv_xsrq_pingpo Not tainted 5.17.0-rc7_master_62c6ecb #1
  Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014
  RIP: 0010:mlx4_ib_dealloc_xrcd+0x12e/0x1b0 [mlx4_ib]
  Code: 1e 93 08 00 40 80 fd 01 0f 87 fa f1 04 00 83 e5 01 0f 85 2b ff ff ff 48 c7 c7 20 4f b6 a0 c6 05 fd 92 08 00 01 e8 47 c9 82 e2 <0f> 0b e9 11 ff ff ff 0f b6 2d eb 92 08 00 40 80 fd 01 0f 87 b1 f1
  RSP: 0018:ffff8881a4957750 EFLAGS: 00010286
  RAX: 0000000000000000 RBX: ffff8881ac4b6800 RCX: 0000000000000000
  RDX: 0000000000000027 RSI: 0000000000000004 RDI: ffffed103492aedc
  RBP: 0000000000000000 R08: 0000000000000001 R09: ffff8884d2e378eb
  R10: ffffed109a5c6f1d R11: 0000000000000001 R12: ffff888132620000
  R13: ffff8881a4957a90 R14: ffff8881aa2d4000 R15: ffff8881a4957ad0
  FS:  00007f0401747740(0000) GS:ffff8884d2e00000(0000) knlGS:0000000000000000
  CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
  CR2: 000055f8ae036118 CR3: 000000012fe94005 CR4: 0000000000370ea0
  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
  DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
  Call Trace:
   <TASK>
   ib_dealloc_xrcd_user+0xce/0x120 [ib_core]
   ib_uverbs_dealloc_xrcd+0xad/0x210 [ib_uverbs]
   uverbs_free_xrcd+0xe8/0x190 [ib_uverbs]
   destroy_hw_idr_uobject+0x7a/0x130 [ib_uverbs]
   uverbs_destroy_uobject+0x164/0x730 [ib_uverbs]
   uobj_destroy+0x72/0xf0 [ib_uverbs]
   ib_uverbs_cmd_verbs+0x19fb/0x3110 [ib_uverbs]
   ib_uverbs_ioctl+0x169/0x260 [ib_uverbs]
   __x64_sys_ioctl+0x856/0x1550
   do_syscall_64+0x3d/0x90
   entry_SYSCALL_64_after_hwframe+0x44/0xae

Fixes: 7c4a539ec3 ("RDMA/core: Fix ib_qp_usecnt_dec() called when error")
Link: https://lore.kernel.org/r/74c11029adaf449b3b9228a77cc82f39e9e892c8.1646851220.git.leonro@nvidia.com
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-04-08 14:23:39 +02:00
..
accessibility speakup-dectlk: Restore pitch setting 2022-02-16 12:56:37 +01:00
acpi ACPI: APEI: fix return value of __setup handlers 2022-04-08 14:23:09 +02:00
amba
android binder: avoid potential data leakage when copying txn 2022-01-27 11:04:09 +01:00
ata ata: pata_hpt37x: fix PCI clock detection 2022-03-08 19:12:33 +01:00
atm atm: eni: Add check for dma_map_single 2022-03-23 09:16:41 +01:00
auxdisplay auxdisplay: lcd2s: Use proper API to free the instance of charlcd object 2022-03-08 19:12:47 +01:00
base drivers/base/memory: add memory block to memory group after registration succeeded 2022-04-08 14:23:12 +02:00
bcma
block drbd: fix potential silent data corruption 2022-04-08 14:22:57 +02:00
bluetooth Bluetooth: hci_serdev: call init_rwsem() before p->open() 2022-04-08 14:23:25 +02:00
bus mips: cdmm: Fix refcount leak in mips_cdmm_phys_base 2022-04-08 14:23:39 +02:00
cdrom
char hwrng: nomadik - Change clk_disable to clk_disable_unprepare 2022-04-08 14:23:09 +02:00
clk clk: uniphier: Fix fixed-rate initialization 2022-04-08 14:22:50 +02:00
clocksource clocksource: acpi_pm: fix return value of __setup handler 2022-04-08 14:23:09 +02:00
comedi
connector
counter
cpufreq cpufreq: Fix initialization of min and max frequency QoS requests 2022-01-27 11:04:44 +01:00
cpuidle
crypto crypto: ccree - Fix use after free in cc_cipher_exit() 2022-04-08 14:23:09 +02:00
cxl cxl/regs: Fix size of CXL Capability Header Register 2022-04-08 14:23:30 +02:00
dax dax: make sure inodes are flushed before destroy cache 2022-04-08 14:23:31 +02:00
dca
devfreq
dio
dma dmaengine: shdma: Fix runtime PM imbalance on error 2022-03-08 19:12:31 +01:00
dma-buf udmabuf: validate ubuf->pagecount 2022-04-08 14:23:24 +02:00
edac EDAC: Fix calculation of returned address and next offset in edac_align_ptr() 2022-02-23 12:03:20 +01:00
eisa
extcon
firewire
firmware firmware: qcom: scm: Remove reassignment to desc following initializer 2022-04-08 14:23:15 +02:00
fpga
fsi
gnss
gpio Revert "gpio: Revert regression in sysfs-gpio (gpiolib.c)" 2022-04-08 14:22:47 +02:00
gpu drm/msm/a6xx: Fix missing ARRAY_SIZE() check 2022-04-08 14:23:37 +02:00
greybus greybus: svc: fix an error handling bug in gb_svc_hello() 2022-04-08 14:22:50 +02:00
hid HID: i2c-hid: fix GET/SET_REPORT for unnumbered reports 2022-04-08 14:23:31 +02:00
hsi HSI: core: Fix return freed object in hsi_new_client 2022-01-27 11:04:31 +01:00
hv hv_balloon: rate-limit "Unhandled message" warning 2022-04-08 14:23:37 +02:00
hwmon hwmon: (pmbus) Add Vin unit off handling 2022-04-08 14:23:09 +02:00
hwspinlock
hwtracing coresight: syscfg: Fix memleak on registration failure in cscfg_create_device 2022-04-08 14:22:50 +02:00
i2c i2c: xiic: Make bus names unique 2022-04-08 14:23:37 +02:00
i3c i3c: master: dw: check return of dw_i3c_master_get_free_pos() 2022-03-08 19:12:37 +01:00
idle
iio iio: inkern: make a best effort on offset calculation 2022-04-08 14:22:50 +02:00
infiniband Revert "RDMA/core: Fix ib_qp_usecnt_dec() called when error" 2022-04-08 14:23:39 +02:00
input Revert "Input: clear BTN_RIGHT/MIDDLE on buttonpads" 2022-04-08 14:22:55 +02:00
interconnect interconnect: qcom: rpm: Prevent integer overflow in rate 2022-01-27 11:05:00 +01:00
iommu iommu/ipmmu-vmsa: Check for error num after setting mask 2022-04-08 14:23:31 +02:00
ipack
irqchip irqchip/sifive-plic: Add missing thead,c900-plic match string 2022-02-23 12:03:17 +01:00
isdn isdn: hfcpci: check the return value of dma_set_mask() in setup_hw() 2022-03-16 14:23:36 +01:00
leds leds: lp55xx: initialise output direction from dts 2022-01-27 11:04:21 +01:00
macintosh
mailbox mailbox: tegra-hsp: Flush whole channel 2022-04-08 14:22:59 +02:00
mcb
md dm crypt: fix get_key_size compiler warning if !CONFIG_KEYS 2022-04-08 14:23:33 +02:00
media ivtv: fix incorrect device_caps for ivtvfb 2022-04-08 14:23:21 +02:00
memory memory: emif: check the pointer temp in get_device_details() 2022-04-08 14:23:20 +02:00
memstick
message
mfd mfd: mc13xxx: Add check for mc13xxx_irq_request 2022-04-08 14:23:38 +02:00
misc mei: avoid iterator usage outside of list_for_each_entry 2022-04-08 14:22:49 +02:00
mmc mmc: davinci_mmc: Handle error for clk_enable 2022-04-08 14:23:22 +02:00
most
mtd mtd: rawnand: atmel: fix refcount issue in atmel_nand_controller_init 2022-04-08 14:23:39 +02:00
mux
net ath10k: Fix error handling in ath10k_setup_msa_resources 2022-04-08 14:23:39 +02:00
nfc nfc: st21nfca: Fix potential buffer overflows in EVT_TRANSACTION 2022-03-28 09:58:42 +02:00
ntb ntb: intel: fix port config status offset for SPR 2022-03-08 19:12:44 +01:00
nubus
nvdimm
nvme nvme: fix the check for duplicate unique identifiers 2022-04-08 14:23:07 +02:00
nvmem nvmem: core: Fix a conflict between MTD and NVMEM on wp-gpios property 2022-03-02 11:48:06 +01:00
of of: net: move of_net under net/ 2022-03-08 19:12:41 +01:00
opp
parisc parisc: Fix sglist access in ccio-dma.c 2022-02-23 12:03:03 +01:00
parport
pci PCI: Reduce warnings on possible RW1C corruption 2022-04-08 14:23:37 +02:00
pcmcia pcmcia: fix setting of kthread task states 2022-01-27 11:04:02 +01:00
perf perf/arm-cmn: Fix CPU hotplug unregistration 2022-01-27 11:03:36 +01:00
phy phy: phy-mtk-tphy: Fix duplicated argument in phy-mtk-tphy 2022-02-23 12:03:17 +01:00
pinctrl pinctrl: samsung: Remove EINT handler for Exynos850 ALIVE and CMGP gpios 2022-04-08 14:23:12 +02:00
platform platform/x86: huawei-wmi: check the return value of device_create_file() 2022-04-08 14:23:38 +02:00
pnp
power power: ab8500_chargalg: Use CLOCK_MONOTONIC 2022-04-08 14:23:39 +02:00
powercap
pps
ps3
ptp ptp: unregister virtual clocks when unregistering physical clock. 2022-04-08 14:23:28 +02:00
pwm
rapidio
ras
regulator regulator: qcom_smd: fix for_each_child.cocci warnings 2022-04-08 14:23:04 +02:00
remoteproc remoteproc: Fix count check in rproc_coredump_write() 2022-04-08 14:22:52 +02:00
reset reset: renesas: Fix Runtime PM usage 2022-01-11 15:35:16 +01:00
rpmsg rpmsg: char: Fix race between the release of rpmsg_eptdev and cdev 2022-02-01 17:27:07 +01:00
rtc rtc: pl031: fix rtc features null pointer dereference 2022-04-08 14:22:56 +02:00
s390 block: drop unused includes in <linux/genhd.h> 2022-03-16 14:23:46 +01:00
sbus
scsi scsi: mpt3sas: Fix incorrect 4GB boundary check 2022-04-08 14:23:38 +02:00
sh maple: fix wrong return value of maple_bus_init(). 2021-11-25 09:48:31 +01:00
siox
slimbus
soc soc: mediatek: pm-domains: Add wakeup capacity support in power domain 2022-04-08 14:23:18 +02:00
soundwire
spi spi: spi-zynqmp-gqspi: Handle error for dma_set_mask 2022-04-08 14:23:07 +02:00
spmi
ssb
staging media: cedrus: h264: Fix neighbour info buffer size 2022-04-08 14:23:17 +02:00
target scsi: target: iscsi: Make sure the np under each tpg is unique 2022-02-16 12:56:12 +01:00
tc
tee optee: use driver internal tee_context for some rpc 2022-03-02 11:47:51 +01:00
thermal thermal: int340x: Check for NULL after calling kmemdup() 2022-04-08 14:23:05 +02:00
thunderbolt thunderbolt: Runtime PM activate both ends of the device link 2022-01-27 11:04:36 +01:00
tty serial: stm32: prevent TDR register overwrite when sending x_char 2022-03-08 19:12:32 +01:00
uio
usb xhci: fix uninitialized string returned by xhci_decode_ctrl_ctx() 2022-04-08 14:22:49 +02:00
vdpa vdpa/mlx5: should verify CTRL_VQ feature exists for MQ 2022-04-08 14:22:46 +02:00
vfio vfio/pci: wake-up devices around reset functions 2022-04-08 14:23:33 +02:00
vhost vsock: each transport cycles only on its own sockets 2022-03-23 09:16:41 +01:00
video video: fbdev: omapfb: Add missing of_node_put() in dvic_probe_of 2022-04-08 14:23:21 +02:00
virt nitro_enclaves: Use get_user_pages_unlocked() call to handle mmap assert 2022-01-05 12:42:39 +01:00
virtio virtio: acknowledge all features before access 2022-03-16 14:23:43 +01:00
visorbus
vlynq
vme
w1 w1: Misuse of get_user()/put_user() reported by sparse 2022-01-27 11:04:59 +01:00
watchdog
xen xen/gnttab: fix gnttab_end_foreign_access() without page specified 2022-03-11 12:22:37 +01:00
zorro
Kconfig
Makefile virtio: always enter drivers/virtio/ 2021-12-22 09:32:39 +01:00