All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kees Cook <kees@kernel.org>
To: Shuah Khan <skhan@linuxfoundation.org>
Cc: Rae Moar <rmoar@google.com>, kernel test robot <lkp@intel.com>,
	Brendan Higgins <brendan.higgins@linux.dev>,
	David Gow <davidgow@google.com>,
	"Gustavo A. R. Silva" <gustavoars@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-kselftest@vger.kernel.org, kunit-dev@googlegroups.com,
	linux-hardening@vger.kernel.org, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] kunit/usercopy: Disable testing on !CONFIG_MMU
Date: Thu, 27 Jun 2024 10:07:22 -0700	[thread overview]
Message-ID: <202406271005.4E767DAE@keescook> (raw)
In-Reply-To: <CA+GJov5ZpFxKxK44SAb_B8SzWUF9uQV13A8BcVPijo0CV0mStg@mail.gmail.com>

Hi Shuah,

Can you please add this to your -next tree since it fixes test failures
on non-MMU systems, after commit cf6219ee889f ("usercopy: Convert
test_user_copy to KUnit test").

Thanks!

-Kees

On Thu, Jun 20, 2024 at 05:13:35PM -0400, Rae Moar wrote:
> On Wed, Jun 19, 2024 at 4:25 PM Kees Cook <kees@kernel.org> wrote:
> >
> > Since arch_pick_mmap_layout() is an inline for non-MMU systems, disable
> > this test there.
> >
> > Reported-by: kernel test robot <lkp@intel.com>
> > Closes: https://lore.kernel.org/oe-kbuild-all/202406160505.uBge6TMY-lkp@intel.com/
> > Signed-off-by: Kees Cook <kees@kernel.org>
> 
> Hello!
> 
> This looks good to me. And seems to fix the problem. Thanks for the fix!
> 
> Reviewed-by: Rae Moar <rmoar@google.com>
> 
> -Rae
> 
> > ---
> > Resending as v2 with Shuah in To:
> > ---
> > Cc: Shuah Khan <skhan@linuxfoundation.org>
> > Cc: Brendan Higgins <brendan.higgins@linux.dev>
> > Cc: David Gow <davidgow@google.com>
> > Cc: Rae Moar <rmoar@google.com>
> > Cc: "Gustavo A. R. Silva" <gustavoars@kernel.org>
> > Cc: Andrew Morton <akpm@linux-foundation.org>
> > Cc: linux-kselftest@vger.kernel.org
> > Cc: kunit-dev@googlegroups.com
> > Cc: linux-hardening@vger.kernel.org
> > Cc: linux-mm@kvack.org
> > ---
> >  lib/kunit/user_alloc.c | 4 ++++
> >  lib/usercopy_kunit.c   | 5 +++++
> >  mm/util.c              | 2 ++
> >  3 files changed, 11 insertions(+)
> >
> > diff --git a/lib/kunit/user_alloc.c b/lib/kunit/user_alloc.c
> > index 76d3d1345ed7..ae935df09a5e 100644
> > --- a/lib/kunit/user_alloc.c
> > +++ b/lib/kunit/user_alloc.c
> > @@ -30,6 +30,10 @@ static int kunit_attach_mm(void)
> >         if (current->mm)
> >                 return 0;
> >
> > +       /* arch_pick_mmap_layout() is only sane with MMU systems. */
> > +       if (!IS_ENABLED(CONFIG_MMU))
> > +               return -EINVAL;
> > +
> >         mm = mm_alloc();
> >         if (!mm)
> >                 return -ENOMEM;
> > diff --git a/lib/usercopy_kunit.c b/lib/usercopy_kunit.c
> > index 45f1e558c464..e819561a540d 100644
> > --- a/lib/usercopy_kunit.c
> > +++ b/lib/usercopy_kunit.c
> > @@ -290,6 +290,11 @@ static int usercopy_test_init(struct kunit *test)
> >         struct usercopy_test_priv *priv;
> >         unsigned long user_addr;
> >
> > +       if (!IS_ENABLED(CONFIG_MMU)) {
> > +               kunit_skip(test, "Userspace allocation testing not available on non-MMU systems");
> > +               return 0;
> > +       }
> > +
> >         priv = kunit_kzalloc(test, sizeof(*priv), GFP_KERNEL);
> >         KUNIT_ASSERT_NOT_ERR_OR_NULL(test, priv);
> >         test->priv = priv;
> > diff --git a/mm/util.c b/mm/util.c
> > index df37c47d9374..e70e8e439258 100644
> > --- a/mm/util.c
> > +++ b/mm/util.c
> > @@ -484,7 +484,9 @@ void arch_pick_mmap_layout(struct mm_struct *mm, struct rlimit *rlim_stack)
> >         clear_bit(MMF_TOPDOWN, &mm->flags);
> >  }
> >  #endif
> > +#ifdef CONFIG_MMU
> >  EXPORT_SYMBOL_IF_KUNIT(arch_pick_mmap_layout);
> > +#endif
> >
> >  /**
> >   * __account_locked_vm - account locked pages to an mm's locked_vm
> > --
> > 2.34.1
> >

-- 
Kees Cook

  reply	other threads:[~2024-06-27 17:07 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-19 20:25 [PATCH v2] kunit/usercopy: Disable testing on !CONFIG_MMU Kees Cook
2024-06-20 21:13 ` Rae Moar
2024-06-27 17:07   ` Kees Cook [this message]
2024-07-02 16:18     ` Shuah Khan
2024-07-02  4:05 ` David Gow
2024-07-02 16:15   ` Shuah Khan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202406271005.4E767DAE@keescook \
    --to=kees@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=brendan.higgins@linux.dev \
    --cc=davidgow@google.com \
    --cc=gustavoars@kernel.org \
    --cc=kunit-dev@googlegroups.com \
    --cc=linux-hardening@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lkp@intel.com \
    --cc=rmoar@google.com \
    --cc=skhan@linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.