Skip to content
  • Jay Freyensee's avatar
    fabrics: define admin sqsize min default, per spec · f994d9dc
    Jay Freyensee authored
    
    
    Upon admin queue connect(), the rdma qp was being
    set based on NVMF_AQ_DEPTH.  However, the fabrics layer was
    using the sqsize field value set for I/O queues for the admin
    queue, which threw the nvme layer and rdma layer off-whack:
    
    root@fedora23-fabrics-host1 nvmf]# dmesg
    [ 3507.798642] nvme_fabrics: nvmf_connect_admin_queue():admin sqsize
    being sent is: 128
    [ 3507.798858] nvme nvme0: creating 16 I/O queues.
    [ 3507.896407] nvme nvme0: new ctrl: NQN "nullside-nqn", addr
    192.168.1.3:4420
    
    Thus, to have a different admin queue value, we use
    NVMF_AQ_DEPTH for connect() and RDMA private data
    as the minimum depth specified in the NVMe-over-Fabrics 1.0 spec
    (and in that RDMA private data we treat hrqsize as 1's-based
    value, per current understanding of the fabrics spec).
    
    Reported-by: default avatarDaniel Verkamp <daniel.verkamp@intel.com>
    Signed-off-by: default avatarJay Freyensee <james_p_freyensee@linux.intel.com>
    Reviewed-by: default avatarDaniel Verkamp <daniel.verkamp@intel.com>
    Signed-off-by: default avatarSagi Grimberg <sagi@grimberg.me>
    f994d9dc