OpenCloudOS-Kernel/net/smc
Karsten Graul 995433b795 net/smc: fix access to parent of an ib device
The parent of an ib device is used to retrieve the PCI device
attributes. It turns out that there are possible cases when an ib device
has no parent set in the device structure, which may lead to page
faults when trying to access this memory.
Fix that by checking the parent pointer and consolidate the pci device
specific processing in a new function.

Fixes: a3db10efcc ("net/smc: Add support for obtaining SMCR device list")
Reported-by: syzbot+600fef7c414ee7e2d71b@syzkaller.appspotmail.com
Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
Link: https://lore.kernel.org/r/20201215091058.49354-2-kgraul@linux.ibm.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2020-12-16 13:33:47 -08:00
..
Kconfig treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
Makefile net/smc: Introduce generic netlink interface for diagnostic purposes 2020-12-01 17:56:12 -08:00
af_smc.c net/smc: Introduce generic netlink interface for diagnostic purposes 2020-12-01 17:56:12 -08:00
smc.h net/smc: introduce CLC first contact extension 2020-09-28 15:19:03 -07:00
smc_cdc.c net: smc: convert tasklets to use new tasklet_setup() API 2020-11-07 10:41:15 -08:00
smc_cdc.h net/smc: pre-fetch send buffer outside of send_lock 2020-05-30 18:12:25 -07:00
smc_clc.c net/smc: Add support for obtaining system information 2020-12-01 17:56:13 -08:00
smc_clc.h net/smc: Add support for obtaining system information 2020-12-01 17:56:13 -08:00
smc_close.c net/smc: check variable before dereferencing in smc_close.c 2020-09-16 17:30:16 -07:00
smc_close.h net/smc: remove close abort worker 2019-10-22 11:23:44 -07:00
smc_core.c net/smc: Add support for obtaining SMCR device list 2020-12-01 17:56:13 -08:00
smc_core.h net/smc: Add support for obtaining SMCD device list 2020-12-01 17:56:13 -08:00
smc_diag.c net/smc: Introduce SMCR get link command 2020-12-01 17:56:13 -08:00
smc_ib.c net/smc: fix access to parent of an ib device 2020-12-16 13:33:47 -08:00
smc_ib.h net/smc: Add support for obtaining SMCR device list 2020-12-01 17:56:13 -08:00
smc_ism.c net/smc: Add support for obtaining SMCD device list 2020-12-01 17:56:13 -08:00
smc_ism.h net/smc: Add support for obtaining SMCD device list 2020-12-01 17:56:13 -08:00
smc_llc.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-10-15 12:43:21 -07:00
smc_llc.h net/smc: move add link processing for new device into llc layer 2020-07-19 15:30:22 -07:00
smc_netlink.c net/smc: Add support for obtaining SMCR device list 2020-12-01 17:56:13 -08:00
smc_netlink.h net/smc: Add support for obtaining system information 2020-12-01 17:56:13 -08:00
smc_netns.h net/smc: introduce list of pnetids for Ethernet devices 2020-09-28 15:19:03 -07:00
smc_pnet.c net/smc: Add diagnostic information to smc ib-device 2020-12-01 17:56:12 -08:00
smc_pnet.h net/smc: determine proposed ISM devices 2020-09-28 15:19:03 -07:00
smc_rx.c fs: make the pipe_buf_operations ->confirm operation optional 2020-05-20 12:11:26 -04:00
smc_rx.h smc: add support for splice() 2018-05-04 11:45:06 -04:00
smc_tx.c net/smc: use separate work queues for different worker types 2020-09-10 15:24:27 -07:00
smc_tx.h net/smc: eliminate cursor read and write calls 2018-07-23 10:57:14 -07:00
smc_wr.c net: smc: convert tasklets to use new tasklet_setup() API 2020-11-07 10:41:15 -08:00
smc_wr.h net/smc: wait for departure of an IB message 2020-05-04 10:54:39 -07:00