[PATCH 09/12] nvme: properly free resources for cancelled command
Keith Busch
keith.busch at intel.com
Mon Nov 9 10:57:31 PST 2015
On Sat, Nov 07, 2015 at 09:45:03AM +0100, Christoph Hellwig wrote:
> + if (unlikely(req->errors)) {
> + /*
> + * Some silly Intel userspace code breaks if it doesn't get a
> + * negative errno back for driver returns values.
> + */
Whoa now, it's neither Intel nor userpace that needs this. It's to know
if the controller is unresponsive or returned an error. The difference
matters to the driver for initialization.
> + if (req->errors < 0) {
> + error = req->errors;
> + } else {
> + if (nvme_req_needs_retry(req, req->errors)) {
> + nvme_requeue_req(req);
> + return;
> + }
> +
> + if (req->cmd_type == REQ_TYPE_DRV_PRIV)
> + error = req->errors;
> + else
> + error = nvme_error_status(req->errors);
> + }
More information about the Linux-nvme
mailing list