linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [akpm-mm:mm-unstable 113/133] error[E0277]: `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely
@ 2026-04-07  7:58 kernel test robot
  2026-04-07 21:59 ` Andrew Morton
  0 siblings, 1 reply; 3+ messages in thread
From: kernel test robot @ 2026-04-07  7:58 UTC (permalink / raw)
  To: Mike Rapoport (Microsoft)
  Cc: llvm, oe-kbuild-all, David Hildenbrand, Andrew Morton,
	Linux Memory Management List

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-unstable
head:   3fa44141e0bbd5062f2ef0c5cdddd98275d3223e
commit: 694fc0bd3ca5420f4e1105d2dec02327cfc5d64b [113/133] userfaultfd: introduce vm_uffd_ops
config: x86_64-randconfig-074-20260407 (https://download.01.org/0day-ci/archive/20260407/202604071509.y5vLetYd-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
rustc: rustc 1.88.0 (6b00bc388 2025-06-23)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260407/202604071509.y5vLetYd-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202604071509.y5vLetYd-lkp@intel.com/

All errors (new ones prefixed by >>):

>> error[E0277]: `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely
   --> drivers/android/binder/page_range.rs:146:23
   |
   146   | static BINDER_VM_OPS: bindings::vm_operations_struct = pin_init::zeroed();
   |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely
   |
   = help: within `kernel::bindings::vm_operations_struct`, the trait `Sync` is not implemented for `*const kernel::bindings::vm_uffd_ops`
   note: required because it appears within the type `kernel::bindings::vm_operations_struct`
   --> rust/bindings/bindings_generated.rs:74703:12
   |
   74703 | pub struct vm_operations_struct {
   |            ^^^^^^^^^^^^^^^^^^^^
   = note: shared static variables must have a type that implements `Sync`

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [akpm-mm:mm-unstable 113/133] error[E0277]: `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely
  2026-04-07  7:58 [akpm-mm:mm-unstable 113/133] error[E0277]: `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely kernel test robot
@ 2026-04-07 21:59 ` Andrew Morton
  2026-04-07 22:05   ` Alice Ryhl
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Morton @ 2026-04-07 21:59 UTC (permalink / raw)
  To: kernel test robot
  Cc: Mike Rapoport (Microsoft),
	llvm, oe-kbuild-all, David Hildenbrand,
	Linux Memory Management List, Alice Ryhl, Miguel Ojeda

On Tue, 07 Apr 2026 15:58:09 +0800 kernel test robot <lkp@intel.com> wrote:

> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-unstable
> head:   3fa44141e0bbd5062f2ef0c5cdddd98275d3223e
> commit: 694fc0bd3ca5420f4e1105d2dec02327cfc5d64b [113/133] userfaultfd: introduce vm_uffd_ops
> config: x86_64-randconfig-074-20260407 (https://download.01.org/0day-ci/archive/20260407/202604071509.y5vLetYd-lkp@intel.com/config)
> compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
> rustc: rustc 1.88.0 (6b00bc388 2025-06-23)
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260407/202604071509.y5vLetYd-lkp@intel.com/reproduce)
> 
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@intel.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202604071509.y5vLetYd-lkp@intel.com/

Various forms of "userfaultfd: introduce vm_uffd_ops" have been in
mm.git since March 6.  Thanks (much), but is it possible to get more
timely notifications?

> All errors (new ones prefixed by >>):
> 
> >> error[E0277]: `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely
>    --> drivers/android/binder/page_range.rs:146:23
>    |
>    146   | static BINDER_VM_OPS: bindings::vm_operations_struct = pin_init::zeroed();
>    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely
>    |
>    = help: within `kernel::bindings::vm_operations_struct`, the trait `Sync` is not implemented for `*const kernel::bindings::vm_uffd_ops`
>    note: required because it appears within the type `kernel::bindings::vm_operations_struct`
>    --> rust/bindings/bindings_generated.rs:74703:12
>    |
>    74703 | pub struct vm_operations_struct {
>    |            ^^^^^^^^^^^^^^^^^^^^
>    = note: shared static variables must have a type that implements `Sync`

We've seen this one before.  Sorry, I'm (still) not set up for
build-testing rusty things and I suspect I'm not the only one.

Alice, Miguel: please can you help us here?

Thanks.


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [akpm-mm:mm-unstable 113/133] error[E0277]: `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely
  2026-04-07 21:59 ` Andrew Morton
@ 2026-04-07 22:05   ` Alice Ryhl
  0 siblings, 0 replies; 3+ messages in thread
From: Alice Ryhl @ 2026-04-07 22:05 UTC (permalink / raw)
  To: Andrew Morton
  Cc: kernel test robot, Mike Rapoport (Microsoft),
	llvm, oe-kbuild-all, David Hildenbrand,
	Linux Memory Management List, Miguel Ojeda

On Tue, Apr 7, 2026 at 11:59 PM Andrew Morton <akpm@linux-foundation.org> wrote:
>
> On Tue, 07 Apr 2026 15:58:09 +0800 kernel test robot <lkp@intel.com> wrote:
>
> > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-unstable
> > head:   3fa44141e0bbd5062f2ef0c5cdddd98275d3223e
> > commit: 694fc0bd3ca5420f4e1105d2dec02327cfc5d64b [113/133] userfaultfd: introduce vm_uffd_ops
> > config: x86_64-randconfig-074-20260407 (https://download.01.org/0day-ci/archive/20260407/202604071509.y5vLetYd-lkp@intel.com/config)
> > compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
> > rustc: rustc 1.88.0 (6b00bc388 2025-06-23)
> > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260407/202604071509.y5vLetYd-lkp@intel.com/reproduce)
> >
> > If you fix the issue in a separate patch/commit (i.e. not just a new version of
> > the same patch/commit), kindly add following tags
> > | Reported-by: kernel test robot <lkp@intel.com>
> > | Closes: https://lore.kernel.org/oe-kbuild-all/202604071509.y5vLetYd-lkp@intel.com/
>
> Various forms of "userfaultfd: introduce vm_uffd_ops" have been in
> mm.git since March 6.  Thanks (much), but is it possible to get more
> timely notifications?
>
> > All errors (new ones prefixed by >>):
> >
> > >> error[E0277]: `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely
> >    --> drivers/android/binder/page_range.rs:146:23
> >    |
> >    146   | static BINDER_VM_OPS: bindings::vm_operations_struct = pin_init::zeroed();
> >    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely
> >    |
> >    = help: within `kernel::bindings::vm_operations_struct`, the trait `Sync` is not implemented for `*const kernel::bindings::vm_uffd_ops`
> >    note: required because it appears within the type `kernel::bindings::vm_operations_struct`
> >    --> rust/bindings/bindings_generated.rs:74703:12
> >    |
> >    74703 | pub struct vm_operations_struct {
> >    |            ^^^^^^^^^^^^^^^^^^^^
> >    = note: shared static variables must have a type that implements `Sync`
>
> We've seen this one before.  Sorry, I'm (still) not set up for
> build-testing rusty things and I suspect I'm not the only one.
>
> Alice, Miguel: please can you help us here?

Hi Andrew,

I introduced this bug in commit 8ef2c15aeae0 ("rust_binder: check
ownership before using vma") and fixed it again in commit ec327abae5ed
("rust_binder: use AssertSync for BINDER_VM_OPS"). This means that the
bug is present from v7.0-rc4 and was fixed as of v7.0-rc7. To avoid
this build failure, the "userfaultfd: introduce vm_uffd_ops" commit
must either be on top of v7.0-rc7, or it must be on a base that does
not include v7.0-rc4.

Alice


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-04-07 22:05 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-04-07  7:58 [akpm-mm:mm-unstable 113/133] error[E0277]: `*const kernel::bindings::vm_uffd_ops` cannot be shared between threads safely kernel test robot
2026-04-07 21:59 ` Andrew Morton
2026-04-07 22:05   ` Alice Ryhl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox