linux_dsm_epyc7002/drivers/infiniband/sw/rxe
yonatanc 56012e1cad IB/rxe: Set dma_mask and coherent_dma_mask
The RXE coupled with dummy device causes to the kernel panic attached
below.  The panic happens when ib_register_device tries to set dma_mask
by accessing a NULLed parent device.

The RXE does not actually use DMA, so we can set the dma_mask
to architecture value.

[16240.199689] RIP: 0010:ib_register_device+0x468/0x5a0 [ib_core]
[16240.205289] RSP: 0018:ffffc9000220fc10 EFLAGS: 00010246
[16240.209909] RAX: 0000000000000024 RBX: ffff880220d1a2a8 RCX: 0000000000000000
[16240.212244] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000009
[16240.214385] RBP: ffffc9000220fcb0 R08: 0000000000000000 R09: 000000000000023f
[16240.254465] R10: 0000000000000007 R11: 0000000000000000 R12: 0000000000000000
[16240.259467] R13: 0000000000000000 R14: 0000000000000000 R15: ffff880220d1a2a8
[16240.263314] FS:  00007fd8ecca0740(0000) GS:ffff8802364c0000(0000) knlGS:0000000000000000
[16240.267292] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[16240.273503] CR2: 0000000000000218 CR3: 00000002253ba000 CR4: 00000000000006e0
[16240.277066] Call Trace:
[16240.281836]  ? __kmalloc+0x26f/0x280
[16240.286596]  rxe_register_device+0x297/0x300 [rdma_rxe]
[16240.291377]  rxe_add+0x535/0x5b0 [rdma_rxe]
[16240.297586]  rxe_net_add+0x3e/0xc0 [rdma_rxe]
[16240.302375]  rxe_param_set_add+0x65/0x144 [rdma_rxe]
[16240.307769]  param_attr_store+0x68/0xd0
[16240.311640]  module_attr_store+0x1d/0x30
[16240.316421]  sysfs_kf_write+0x3a/0x50
[16240.317802]  kernfs_fop_write+0xff/0x180
[16240.322989]  __vfs_write+0x37/0x140
[16240.328164]  ? handle_mm_fault+0xce/0x240
[16240.333340]  vfs_write+0xb2/0x1b0
[16240.335013]  SyS_write+0x55/0xc0
[16240.340632]  entry_SYSCALL_64_fastpath+0x1a/0xa9

Fixes: 8700e3e7c4 ("Soft RoCE driver")
Signed-off-by: Yonatan Cohen <yonatanc@mellanox.com>
Reviewed-by: Moni Shoua <monis@mellanox.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Doug Ledford <dledford@redhat.com>
2017-07-17 21:21:27 -04:00
..
Kconfig IB/rxe: Offload CRC calculation when possible 2017-04-21 10:45:02 -04:00
Makefile IB/rxe: Add port protocol stats 2017-04-21 10:43:28 -04:00
rxe_av.c IB/core: Define 'ib' and 'roce' rdma_ah_attr types 2017-05-01 14:32:43 -04:00
rxe_comp.c IB/rxe: Add port protocol stats 2017-04-21 10:43:28 -04:00
rxe_cq.c IB/rxe: Let the compiler check the type of the cleanup functions 2017-01-10 16:52:47 -05:00
rxe_hdr.h IB/rxe: Enable type checking on SKB_TO_PKT() and PKT_TO_SKB() arguments 2017-01-10 16:52:47 -05:00
rxe_hw_counters.c IB/rxe: Add port protocol stats 2017-04-21 10:43:28 -04:00
rxe_hw_counters.h IB/rxe: Add port protocol stats 2017-04-21 10:43:28 -04:00
rxe_icrc.c IB/rxe: Offload CRC calculation when possible 2017-04-21 10:45:02 -04:00
rxe_loc.h IB/core: Rename struct ib_ah_attr to rdma_ah_attr 2017-05-01 14:32:43 -04:00
rxe_mcast.c IB/rxe: Remove a pointless indirection layer 2017-01-10 16:52:47 -05:00
rxe_mmap.c infiniband: Fix alignment of mmap cookies to support VIPT caching 2017-03-24 16:50:51 -04:00
rxe_mr.c IB/rxe: Update caller's CRC for RXE_MEM_TYPE_DMA memory type 2017-05-04 19:31:46 -04:00
rxe_net.c IB/rxe: Fix kernel panic from skb destructor 2017-07-17 21:21:26 -04:00
rxe_net.h IB/rxe: improved debug prints & code cleanup 2016-10-06 13:50:04 -04:00
rxe_opcode.c
rxe_opcode.h
rxe_param.h rxe: expose num_possible_cpus() cnum_comp_vectors 2017-05-04 19:33:02 -04:00
rxe_pool.c IB/rxe: Add a runtime check in alloc_index() 2017-01-10 16:52:47 -05:00
rxe_pool.h IB/rxe: Let the compiler check the type of the cleanup functions 2017-01-10 16:52:47 -05:00
rxe_qp.c IB/core: Use rdma_ah_attr accessor functions 2017-05-01 14:32:43 -04:00
rxe_queue.c IB/rxe: Clear queue buffer when modifying QP to reset 2016-11-16 20:03:44 -05:00
rxe_queue.h IB/rxe: Clear queue buffer when modifying QP to reset 2016-11-16 20:03:44 -05:00
rxe_recv.c IB/rxe: Offload CRC calculation when possible 2017-04-21 10:45:02 -04:00
rxe_req.c IB/rxe: Offload CRC calculation when possible 2017-04-21 10:45:02 -04:00
rxe_resp.c IB/rxe: do not copy extra stack memory to skb 2017-07-12 16:26:03 -07:00
rxe_srq.c IB/rxe: Remove unneeded cast in rxe_srq_from_attr() 2016-12-12 16:31:45 -05:00
rxe_sysfs.c IB/rxe: improved debug prints & code cleanup 2016-10-06 13:50:04 -04:00
rxe_task.c IB/rxe: Wait for tasklets to finish before tearing down QP 2016-12-12 16:31:45 -05:00
rxe_task.h IB/rxe: Wait for tasklets to finish before tearing down QP 2016-12-12 16:31:45 -05:00
rxe_verbs.c IB/rxe: Set dma_mask and coherent_dma_mask 2017-07-17 21:21:27 -04:00
rxe_verbs.h IB/rxe: Offload CRC calculation when possible 2017-04-21 10:45:02 -04:00
rxe.c {net,IB}/{rxe,usnic}: Utilize generic mac to eui32 function 2017-04-25 14:21:34 -04:00
rxe.h crypto: Work around deallocated stack frame reference gcc bug on sparc. 2017-06-08 17:36:03 +08:00