On 7/2/19 10:07 AM, Farhan Ali wrote: > > > On 07/02/2019 04:45 AM, Cornelia Huck wrote: >> On Mon, 1 Jul 2019 12:23:45 -0400 >> Farhan Ali <alifm@xxxxxxxxxxxxx> wrote: >> >>> So we clean up correctly. You mean, "so we don't try to call vfio_unpin_pages()" ? >>> >>> Signed-off-by: Farhan Ali <alifm@xxxxxxxxxxxxx> >>> --- >>> drivers/s390/cio/vfio_ccw_cp.c | 4 +++- >>> 1 file changed, 3 insertions(+), 1 deletion(-) >>> >>> diff --git a/drivers/s390/cio/vfio_ccw_cp.c >>> b/drivers/s390/cio/vfio_ccw_cp.c >>> index cab1be9..c5655de 100644 >>> --- a/drivers/s390/cio/vfio_ccw_cp.c >>> +++ b/drivers/s390/cio/vfio_ccw_cp.c >>> @@ -72,8 +72,10 @@ static int pfn_array_alloc(struct pfn_array *pa, >>> u64 iova, unsigned int len) >>> sizeof(*pa->pa_iova_pfn) + >>> sizeof(*pa->pa_pfn), >>> GFP_KERNEL); >>> - if (unlikely(!pa->pa_iova_pfn)) >>> + if (unlikely(!pa->pa_iova_pfn)) { >>> + pa->pa_nr = 0; >>> return -ENOMEM; >>> + } >>> pa->pa_pfn = pa->pa_iova_pfn + pa->pa_nr; >>> pa->pa_iova_pfn[0] = pa->pa_iova >> PAGE_SHIFT; >> >> This looks like an older error -- can you give a Fixes: tag? (Yeah, I >> know I sound like a broken record wrt that tag... :) >> > Yes, this is an older error. And yup I will add a fixes tag :) Seems okay. Reviewed-by: Eric Farman <farman@xxxxxxxxxxxxx>