diff options
author | Takashi Iwai <tiwai@suse.de> | 2018-03-19 16:59:34 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2018-03-19 17:00:01 +0100 |
commit | 4654eba8cbb3fcf48c6fc24fbaffa0623d9faea2 (patch) | |
tree | 0b3056c04bda1988a3705f315680224387d5a68b /drivers/nvme/target/core.c | |
parent | 09b9ddfaa18317f463085d602cf5f60a5fa88665 (diff) | |
parent | a6618f4aedb2b60932d766bd82ae7ce866e842aa (diff) |
Merge branch 'for-linus' into for-next
Back-merge of for-linus branch for applying the further UAC3 patches.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'drivers/nvme/target/core.c')
-rw-r--r-- | drivers/nvme/target/core.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/nvme/target/core.c b/drivers/nvme/target/core.c index 0bd737117a80..a78029e4e5f4 100644 --- a/drivers/nvme/target/core.c +++ b/drivers/nvme/target/core.c @@ -520,9 +520,12 @@ bool nvmet_req_init(struct nvmet_req *req, struct nvmet_cq *cq, goto fail; } - /* either variant of SGLs is fine, as we don't support metadata */ - if (unlikely((flags & NVME_CMD_SGL_ALL) != NVME_CMD_SGL_METABUF && - (flags & NVME_CMD_SGL_ALL) != NVME_CMD_SGL_METASEG)) { + /* + * For fabrics, PSDT field shall describe metadata pointer (MPTR) that + * contains an address of a single contiguous physical buffer that is + * byte aligned. + */ + if (unlikely((flags & NVME_CMD_SGL_ALL) != NVME_CMD_SGL_METABUF)) { status = NVME_SC_INVALID_FIELD | NVME_SC_DNR; goto fail; } |