All of lore.kernel.org
 help / color / mirror / Atom feed
From: Florian Weimer <fw@deneb.enyo.de>
To: ltp@lists.linux.it
Subject: [LTP] [bug?] clone(CLONE_IO) failing after kernel commit commit ef2c41cf38a7
Date: Tue, 05 May 2020 13:34:42 +0200	[thread overview]
Message-ID: <87h7wu399p.fsf@mid.deneb.enyo.de> (raw)
In-Reply-To: <20200505102154.2sxm7yt5v3up55v3@wittgenstein> (Christian Brauner's message of "Tue, 5 May 2020 12:21:54 +0200")

* Christian Brauner:

> diff --git a/kernel/fork.c b/kernel/fork.c
> index 8c700f881d92..e192089f133e 100644
> --- a/kernel/fork.c
> +++ b/kernel/fork.c
> @@ -2569,12 +2569,15 @@ SYSCALL_DEFINE5(clone, unsigned long, clone_flags, unsigned long, newsp,
>                  unsigned long, tls)
>  #endif
>  {
> +       /* Ignore the upper 32 bits. */
> +       unsigned int flags = (clone_flags & 0xfffffff);
> +
>         struct kernel_clone_args args = {
> -               .flags          = (clone_flags & ~CSIGNAL),
> +               .flags          = (flags & ~CSIGNAL),
>                 .pidfd          = parent_tidptr,
>                 .child_tid      = child_tidptr,
>                 .parent_tid     = parent_tidptr,
> -               .exit_signal    = (clone_flags & CSIGNAL),
> +               .exit_signal    = (flags & CSIGNAL),
>                 .stack          = newsp,
>                 .tls            = tls,
>         }
>
> (Note that kernel_clone_args->flags is a 64 bit unsigned integer.)

This looks reasonable to me, but I have not tested it.  I think it
will restore the expected no-check behavior for clone flags.

  reply	other threads:[~2020-05-05 11:34 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <100149681.11244932.1588661282331.JavaMail.zimbra@redhat.com>
2020-05-05  7:28 ` [LTP] [bug?] clone(CLONE_IO) failing after kernel commit commit ef2c41cf38a7 Jan Stancek
2020-05-05  7:49   ` Florian Weimer
2020-05-05  7:59     ` Christian Brauner
2020-05-05  8:02       ` Christian Brauner
2020-05-05  8:32     ` Christian Brauner
2020-05-05  8:58       ` Jan Stancek
2020-05-05  9:05       ` Florian Weimer
2020-05-05  9:15         ` Christian Brauner
2020-05-05  9:36           ` Florian Weimer
2020-05-05  9:58             ` Christian Brauner
2020-05-05 10:21               ` Christian Brauner
2020-05-05 11:34                 ` Florian Weimer [this message]
2020-05-05 11:35                 ` Dmitry V. Levin
2020-05-05 11:43                   ` Christian Brauner
2020-05-05 11:49                     ` Dmitry V. Levin
2020-05-05 11:57                       ` Christian Brauner
2020-05-05 11:08               ` Florian Weimer
2020-05-05 11:26                 ` Christian Brauner
2020-05-05  7:54   ` Andreas Schwab

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=87h7wu399p.fsf@mid.deneb.enyo.de \
    --to=fw@deneb.enyo.de \
    --cc=ltp@lists.linux.it \
    /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.