Received: by 2002:a25:23cc:0:0:0:0:0 with SMTP id j195csp302302ybj; Wed, 6 May 2020 18:11:10 -0700 (PDT) X-Google-Smtp-Source: APiQypJ6HrCjngLdqZCiUcUHUZkJJ2X3vvVJ5sXvOCN9Y67rMcTzWmT+H8bjfAq06dkkWY97o2M+ X-Received: by 2002:aa7:d514:: with SMTP id y20mr9825617edq.28.1588813870631; Wed, 06 May 2020 18:11:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588813870; cv=none; d=google.com; s=arc-20160816; b=bsXo5SvlcIVgzGFE3+xe+1sWhWLx5bpQltJc9RepeeKE//x9eDei51S3Pc8oOw8UJg 9BEfUpN0BMa8NwQw5ExyQX9GPG9yhyruTIi19872k7zfOEiZXBoClJUgkuujuqTjX22E OLfWm0H5Z8+NLjvTMQ0E9jHBCt1Ssp1/MqAGVcsRAnNwJanWrgwLcdYcISRXhsVCZ7ng yfdvaiu2P93z19KHFAl9TgO7cFnyWeisXAZA1st8E79tMeFS5Xc/LEJnnbHxfG0+Vym/ TCasIt3L2/LO8VpXn5O+H4oa/3SC0UefKrsvGOFAZp54MmZkuvDNSxDFdZVO7MwcbJ6M vdTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=of3KfhSUdjcRaAhhtS98nALCb0SeCwXToKZ3bm5aVW0=; b=Me1DbetZfaBXPM5bM8HyB/smEo3BkW7r084nrBdCbpRoHQAmQE1vNYrENrfTLdXrHi 1Ijf5/dynAWioRO43sdhg83GiNSbY1hcPu0l63hCII9HqRZyTkcFtqd3EbMlFssr8veO a6nSgUpL+zx7VM6smUi0GcE0BbJ8z1zTODJJXGv/7tbXHqvs+25lezzSQYZKBMHq3VAx aXfwxF0Rk9zBaro0CCP0vK6AQ3P8iI1PC0RIrxtBzHQ4CYyH/UHpzI9jzOpWKrzmlcFe C5mX2n53fXqA1GOeQJNVqULGf8MB1bYHRE30c+QVfnZvHfInyo+bdENHE29aM70N4kXS 0l6A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@joelfernandes.org header.s=google header.b=UhtGXIkC; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ce18si2005519ejc.54.2020.05.06.18.10.47; Wed, 06 May 2020 18:11:10 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@joelfernandes.org header.s=google header.b=UhtGXIkC; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728330AbgEGBGu (ORCPT + 99 others); Wed, 6 May 2020 21:06:50 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37112 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726807AbgEGBGt (ORCPT ); Wed, 6 May 2020 21:06:49 -0400 Received: from mail-io1-xd41.google.com (mail-io1-xd41.google.com [IPv6:2607:f8b0:4864:20::d41]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 78F3BC061A0F for ; Wed, 6 May 2020 18:06:49 -0700 (PDT) Received: by mail-io1-xd41.google.com with SMTP id i19so1992737ioh.12 for ; Wed, 06 May 2020 18:06:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelfernandes.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=of3KfhSUdjcRaAhhtS98nALCb0SeCwXToKZ3bm5aVW0=; b=UhtGXIkCMYXfzHwRayibTEkrHWHkG1XzIQ5y1BMZWH8G+drB3N5LHYxjP1d+TuV08f NJKEl1hgPTTnGXlFYqwun3zGwXx1G5gKO7J+tEu+ZX+IgVbd8hWfD7SBDJB59pKA/s/4 FTagE+4BCKWlq95uTeYFK1eCljj71lUhvBcqE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=of3KfhSUdjcRaAhhtS98nALCb0SeCwXToKZ3bm5aVW0=; b=PKGoSRVizmV938MreACCAW2rxoViJDEuAXddBKEQndvaDnJw7lxW3D745UMydDJosI HyTOIrkBxWEZ14UsBJClKZhESzHfYjepUu0dckSZUI2m+jtwonatrSDIIt/F3rYjCnoN X8WoXQkkX/6I1NaN7iqqI0JIbgkdAke0HhSVio0yhOKkDJYscPtGE9u414XDYBmip7MT YnTCAsxNbpBPVU5AAer1EujEqlV+8drVZpLrS0LRtG8MsmCWGHkaU4pjJbNiHlj3abpe ObR2NsrBsk/Ns+YMw9X4h2TYedddSnYk4hdo5EggfGizD5WyTzAjxHxheb4UM1DFHern jAZQ== X-Gm-Message-State: AGi0PuY43BM1PxKI9jz89IPbY8WuSUp2/bxgaRNxavi1BL5nY6gb8WmH 1JwkrBFAoYzXOmfxDx4Iz8yL6Xnsi1Muv4bsdXYkPDcVroQ= X-Received: by 2002:a02:a68e:: with SMTP id j14mr11373661jam.86.1588813608862; Wed, 06 May 2020 18:06:48 -0700 (PDT) MIME-Version: 1.0 References: <20200506172158.218366-1-bgeffon@google.com> In-Reply-To: <20200506172158.218366-1-bgeffon@google.com> From: Joel Fernandes Date: Wed, 6 May 2020 21:06:37 -0400 Message-ID: Subject: Re: [PATCH] userfaultfd: fix remap event with MREMAP_DONTUNMAP. To: Brian Geffon Cc: Andrew Morton , "Michael S . Tsirkin" , LKML , linux-mm , Andrea Arcangeli , Sonny Rao , Minchan Kim , "Kirill A . Shutemov" Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, May 6, 2020 at 1:22 PM Brian Geffon wrote: > > A user is not required to set a new address when using > MREMAP_DONTUNMAP as it can be used without MREMAP_FIXED. > When doing so the remap event will use new_addr which may not > have been set and we didn't propagate it back other then > in the return value of remap_to. > > Because ret is always the new address it's probably more > correct to use it rather than new_addr on the remap_event_complete > call, and it resolves this bug. > > Signed-off-by: Brian Geffon > --- > mm/mremap.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/mremap.c b/mm/mremap.c > index c881abeba0bf..6aa6ea605068 100644 > --- a/mm/mremap.c > +++ b/mm/mremap.c > @@ -794,7 +794,7 @@ SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len, > if (locked && new_len > old_len) > mm_populate(new_addr + old_len, new_len - old_len); > userfaultfd_unmap_complete(mm, &uf_unmap_early); > - mremap_userfaultfd_complete(&uf, addr, new_addr, old_len); > + mremap_userfaultfd_complete(&uf, addr, ret, old_len); Not super familiar with this code, but thought I'd ask, does ret need to be checked for -ENOMEM before calling mremap_userfaultfd_complete? Sorry if I missed something. Thanks, - Joel > userfaultfd_unmap_complete(mm, &uf_unmap); > return ret; > } > -- > 2.26.2.526.g744177e7f7-goog >