Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Easing the setup of compiler_builtins #69

Closed
ojeda opened this issue Jan 12, 2021 · 0 comments · Fixed by #80
Closed

Easing the setup of compiler_builtins #69

ojeda opened this issue Jan 12, 2021 · 0 comments · Fixed by #80
Labels
• misc Related to other topics (e.g. CI).

Comments

@ojeda
Copy link
Member

ojeda commented Jan 12, 2021

What would it take to make compiler_builtins be something that didn't need to manually be installed? There are a few approaches:

  • For rustup to include it as a component, so that installation is easier (and it is automatically updated etc.).
  • That the rust repo includes it (moonshot, but for those that need rust-src it is much more likely that they need it too).
  • Removing it as a dependency by copying the needed builtins into the tree (the kernel does this for others, too).
  • Removing it as a dependency by not using alloc (e.g. if for other reasons we end up with our own alloc).
@ojeda ojeda added - optional • misc Related to other topics (e.g. CI). labels Jan 12, 2021
ojeda added a commit that referenced this issue Jan 21, 2021
This simplifies onboarding, it is smaller, faster to compile and
it is one less dependency to worry about.

It also simplifies the build system a tiny bit since now everything
uses the 2018 edition.

Fixes #69.

Signed-off-by: Miguel Ojeda <[email protected]>
ojeda added a commit that referenced this issue Jan 21, 2021
This simplifies onboarding, it is smaller, faster to compile and
it is one less dependency to worry about.

It also simplifies the build system a tiny bit since now everything
uses the 2018 edition.

Fixes #69.

Signed-off-by: Miguel Ojeda <[email protected]>
ojeda added a commit that referenced this issue Jan 21, 2021
This simplifies onboarding, it is smaller, faster to compile and
it is one less dependency to worry about.

It also simplifies the build system a tiny bit since now everything
uses the 2018 edition.

Fixes #69.

Signed-off-by: Miguel Ojeda <[email protected]>
@ojeda ojeda closed this as completed in #80 Jan 23, 2021
matthewtgilbride pushed a commit to matthewtgilbride/linux that referenced this issue Mar 7, 2023
Commit fb541ca ("md: remove lock_bdev / unlock_bdev") removes
wrappers for blkdev_get/blkdev_put. However, the uninitialized local
static variable of pointer type 'claim_rdev' in md_import_device()
is NULL, which leads to the following warning call trace:

  WARNING: CPU: 22 PID: 1037 at block/bdev.c:577 bd_prepare_to_claim+0x131/0x150
  CPU: 22 PID: 1037 Comm: mdadm Not tainted 6.2.0-rc3+ Rust-for-Linux#69
  ..
  RIP: 0010:bd_prepare_to_claim+0x131/0x150
  ..
  Call Trace:
   <TASK>
   ? _raw_spin_unlock+0x15/0x30
   ? iput+0x6a/0x220
   blkdev_get_by_dev.part.0+0x4b/0x300
   md_import_device+0x126/0x1d0
   new_dev_store+0x184/0x240
   md_attr_store+0x80/0xf0
   kernfs_fop_write_iter+0x128/0x1c0
   vfs_write+0x2be/0x3c0
   ksys_write+0x5f/0xe0
   do_syscall_64+0x38/0x90
   entry_SYSCALL_64_after_hwframe+0x72/0xdc

It turns out the md device cannot be used:

  md: could not open device unknown-block(259,0).
  md: md127 stopped.

Fix the issue by declaring the local static variable of struct type
and passing the pointer of the variable to blkdev_get_by_dev().

Fixes: fb541ca ("md: remove lock_bdev / unlock_bdev")
Cc: Christoph Hellwig <[email protected]>
Signed-off-by: Adrian Huang <[email protected]>
Reviewed-by: Christoph Hellwig <[email protected]>
Signed-off-by: Song Liu <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
• misc Related to other topics (e.g. CI).
Development

Successfully merging a pull request may close this issue.

1 participant