• Alok Prasad's avatar
    RDMA/qedr: iWARP invalid(zero) doorbell address fix · 0191c271
    Alok Prasad authored
    This patch fixes issue introduced by a previous commit where iWARP
    doorbell address wasn't initialized, causing call trace when any RDMA
    application wants to use this interface:
    
      Illegal doorbell address: 0000000000000000. Legal range for doorbell addresses is [0000000011431e08..00000000ec3799d3]
      WARNING: CPU: 11 PID: 11990 at drivers/net/ethernet/qlogic/qed/qed_dev.c:93 qed_db_rec_sanity.isra.12+0x48/0x70 [qed]
      ...
       hpsa scsi_transport_sas [last unloaded: crc8]
      CPU: 11 PID: 11990 Comm: rping Tainted: G S                5.10.0-rc1 #29
      Hardware name: HP ProLiant DL380 Gen9/ProLiant DL380 Gen9, BIOS P89 01/22/2018
      RIP: 0010:qed_db_rec_sanity.isra.12+0x48/0x70 [qed]
      ...
      RSP: 0018:ffffafc28458fa88 EFLAGS: 00010286
      RAX: 0000000000000000 RBX: ffff8d0d4c620000 RCX: 0000000000000000
      RDX: ffff8d10afde7d50 RSI: ffff8d10afdd8b40 RDI: ffff8d10afdd8b40
      RBP: ffffafc28458fe38 R08: 0000000000000003 R09: 0000000000007fff
      R10: 0000000000000001 R11: ffffafc28458f888 R12: 0000000000000000
      R13: 0000000000000000 R14: ffff8d0d43ccbbd0 R15: ffff8d0d48dae9c0
      FS:  00007fbd5267e740(0000) GS:ffff8d10afdc0000(0000) knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 00007fbd4f258fb8 CR3: 0000000108d96003 CR4: 00000000001706e0
      Call Trace:
       qed_db_recovery_add+0x6d/0x1f0 [qed]
       qedr_create_user_qp+0x57e/0xd30 [qedr]
       qedr_create_qp+0x5f3/0xab0 [qedr]
       ? lookup_get_idr_uobject.part.12+0x45/0x90 [ib_uverbs]
       create_qp+0x45d/0xb30 [ib_uverbs]
       ? ib_uverbs_cq_event_handler+0x30/0x30 [ib_uverbs]
       ib_uverbs_create_qp+0xb9/0xe0 [ib_uverbs]
       ib_uverbs_write+0x3f9/0x570 [ib_uverbs]
       ? security_mmap_file+0x62/0xe0
       vfs_write+0xb7/0x200
       ksys_write+0xaf/0xd0
       ? syscall_trace_enter.isra.25+0x152/0x200
       do_syscall_64+0x2d/0x40
       entry_SYSCALL_64_after_hwframe+0x44/0xa9
    
    Fixes: 06e8d1df ("RDMA/qedr: Add support for user mode XRC-SRQ's")
    Link: https://lore.kernel.org/r/20201127163251.14533-1-palok@marvell.comSigned-off-by: default avatarMichal Kalderon <mkalderon@marvell.com>
    Signed-off-by: default avatarIgor Russkikh <irusskikh@marvell.com>
    Signed-off-by: default avatarAlok Prasad <palok@marvell.com>
    Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
    0191c271
verbs.c 119 KB