This supports 32 bits(rather than 12 bits) extended Number of Dwords
in nvme_get_log().
Signed-off-by: Ming Lin <ming.l@ssi.samsung.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-and-tested-by: Sagi Grimberg <sagi@grimberg.me>
Tested-by: Armen Baloyan <armenx.baloyan@intel.com>
.addr = (__u64)(uintptr_t) data,
.data_len = data_len,
};
+ __u32 numd = (data_len >> 2) - 1;
+ __le16 numdu, numdl;
- cmd.cdw10 = log_id | ((data_len >> 2) - 1) << 16;
+ numdu = htole16((numd & 0xFFFF0000) >> 16);
+ numdl = htole16(numd & 0x0000FFFF);
+ cmd.cdw10 = log_id | (numdl << 16);
+ cmd.cdw11 = numdu;
return nvme_submit_admin_passthru(fd, &cmd);
}