[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <yq1pobnawe4.fsf@oracle.com>
Date: Tue, 22 Aug 2017 21:46:43 -0400
From: "Martin K. Petersen" <martin.petersen@...cle.com>
To: Todd Poynor <toddpoynor@...gle.com>
Cc: Doug Gilbert <dgilbert@...erlog.com>,
"James E.J. Bottomley" <jejb@...ux.vnet.ibm.com>,
"Martin K. Petersen" <martin.petersen@...cle.com>,
linux-scsi@...r.kernel.org, linux-kernel@...r.kernel.org,
Hannes Reinecke <hare@...e.de>
Subject: Re: [PATCH] sg: recheck MMAP_IO request length with lock held
Todd,
> Commit 1bc0eb044615 ("scsi: sg: protect accesses to 'reserved' page
> array") adds needed concurrency protection for the "reserve" buffer.
> Some checks that are initially made outside the lock are replicated once
> the lock is taken to ensure the checks and resulting decisions are made
> using consistent state.
>
> The check that a request with flag SG_FLAG_MMAP_IO set fits in the
> reserve buffer also needs to be performed again under the lock to
> ensure the reserve buffer length compared against matches the value in
> effect when the request is linked to the reserve buffer. An -ENOMEM
> should be returned in this case, instead of switching over to an
> indirect buffer as for non-MMAP_IO requests.
Applied to 4.14/scsi-queue, thank you!
--
Martin K. Petersen Oracle Linux Engineering
Powered by blists - more mailing lists