mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-12-29 17:25:38 +00:00
nvme fixes for Linux 6.8
- Fabrics connection error handling (Chaitanya) - Use relaxed effects to reduce unnecessary queue freezes (Keith) -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE3Fbyvv+648XNRdHTPe3zGtjzRgkFAmXONmcACgkQPe3zGtjz RglGnhAAnCr3/aCdk+XS+51lXm7G2xDvVoiMSDkMN8jir1+ElEEBtcpkJW3shK/L CIjxKBbL2puwiOvVsTAWENPr1bSJO5ULFzMBJ+VP0Sf6lYvsTZR1C5sTcG7fMAei e6n2j50c1mWVZ8stiejMXKk+tM3jsS9AocLWFd5olSgBloV63/HZf9AyBy6Fn72W 3WOalFkJF9tQG/20N22Mn4zE9QiVlAhsL6EiywOZMffh3u9ZyL2nbY1efnT8oBZH WvRMu9IPUTvQctmulp7rVwXmwoeGOVRgAZlp4Lh3dryxGqTW6sPhW06kBGl/tHek /vGwL3PPam+xqG9P6UnLdGNVyEF/psHRnDWzCZPKr5knAcd254WYiqSyHXxiqYei ysgmVCpVvUUQL8AWvEaqst9Lg3FsXvOGQrBlj+BGFKyCFBZ2zUEBJPhVC+dSNgAy lnCce6SnHkmbNrgb4Ng7KVjnB9ifMib09cysJzqTAgA56CEnua6leLsaK5YxTU0F qOO7PtTjd+p600CtFKAtxXa1b6nPO7qZWnYz1pIfU3lGojRv4OPKuHuzdrGeWhUs uG6v2y2o77wwtBZ+scr3VdD5+vqw8lY441/pFfP7iX14Y9sgGuukB3xunif7JBiK T8ueXZzX2R4FKnRPSm0tx9FsIXGIlkTgoD/OGiHsWw7VL4uFufE= =T0kK -----END PGP SIGNATURE----- Merge tag 'nvme-6.8-2024-02-15' of git://git.infradead.org/nvme into block-6.8 Pull NVMe fixes from Keith: "nvme fixes for Linux 6.8 - Fabrics connection error handling (Chaitanya) - Use relaxed effects to reduce unnecessary queue freezes (Keith)" * tag 'nvme-6.8-2024-02-15' of git://git.infradead.org/nvme: nvmet: remove superfluous initialization nvme: implement support for relaxed effects nvme-fabrics: fix I/O connect error handling
This commit is contained in:
commit
9c10f2b172
@ -1153,6 +1153,10 @@ u32 nvme_command_effects(struct nvme_ctrl *ctrl, struct nvme_ns *ns, u8 opcode)
|
||||
effects &= ~NVME_CMD_EFFECTS_CSE_MASK;
|
||||
} else {
|
||||
effects = le32_to_cpu(ctrl->effects->acs[opcode]);
|
||||
|
||||
/* Ignore execution restrictions if any relaxation bits are set */
|
||||
if (effects & NVME_CMD_EFFECTS_CSER_MASK)
|
||||
effects &= ~NVME_CMD_EFFECTS_CSE_MASK;
|
||||
}
|
||||
|
||||
return effects;
|
||||
|
@ -534,6 +534,7 @@ int nvmf_connect_io_queue(struct nvme_ctrl *ctrl, u16 qid)
|
||||
if (ret) {
|
||||
nvmf_log_connect_error(ctrl, ret, le32_to_cpu(res.u32),
|
||||
&cmd, data);
|
||||
goto out_free_data;
|
||||
}
|
||||
result = le32_to_cpu(res.u32);
|
||||
if (result & (NVME_CONNECT_AUTHREQ_ATR | NVME_CONNECT_AUTHREQ_ASCR)) {
|
||||
|
@ -209,7 +209,7 @@ static void nvmet_execute_admin_connect(struct nvmet_req *req)
|
||||
struct nvmf_connect_command *c = &req->cmd->connect;
|
||||
struct nvmf_connect_data *d;
|
||||
struct nvmet_ctrl *ctrl = NULL;
|
||||
u16 status = 0;
|
||||
u16 status;
|
||||
int ret;
|
||||
|
||||
if (!nvmet_check_transfer_len(req, sizeof(struct nvmf_connect_data)))
|
||||
@ -290,7 +290,7 @@ static void nvmet_execute_io_connect(struct nvmet_req *req)
|
||||
struct nvmf_connect_data *d;
|
||||
struct nvmet_ctrl *ctrl;
|
||||
u16 qid = le16_to_cpu(c->qid);
|
||||
u16 status = 0;
|
||||
u16 status;
|
||||
|
||||
if (!nvmet_check_transfer_len(req, sizeof(struct nvmf_connect_data)))
|
||||
return;
|
||||
|
@ -646,6 +646,7 @@ enum {
|
||||
NVME_CMD_EFFECTS_NCC = 1 << 2,
|
||||
NVME_CMD_EFFECTS_NIC = 1 << 3,
|
||||
NVME_CMD_EFFECTS_CCC = 1 << 4,
|
||||
NVME_CMD_EFFECTS_CSER_MASK = GENMASK(15, 14),
|
||||
NVME_CMD_EFFECTS_CSE_MASK = GENMASK(18, 16),
|
||||
NVME_CMD_EFFECTS_UUID_SEL = 1 << 19,
|
||||
NVME_CMD_EFFECTS_SCOPE_MASK = GENMASK(31, 20),
|
||||
|
Loading…
Reference in New Issue
Block a user