Skip to content

rename RUSTCFLAGS to RUSTFLAGS #425

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

Merged
merged 2 commits into from
Jul 4, 2021
Merged

rename RUSTCFLAGS to RUSTFLAGS #425

merged 2 commits into from
Jul 4, 2021

Conversation

nbdd0121
Copy link
Member

@nbdd0121 nbdd0121 commented Jul 3, 2021

Cargo uses RUSTFLAGS and rustflags while currently the name in
Kbuild is RUSTCFLAGS and rustcflags. Rename the flags to be
consistent with Rust ecosystem to reduce potential confusion in the
future.

I think it's important to have this changed before the next LKML drop.

Fixes #327

nbdd0121 added 2 commits July 3, 2021 19:26
Cargo uses `RUSTFLAGS` and `rustflags` while currently the name in
Kbuild is `RUSTCFLAGS` and `rustcflags`. Rename the flags to be
consistent with Rust ecosystem to reduce potential confusion in the
future.

Signed-off-by: Gary Guo <[email protected]>
@ksquirrel
Copy link
Member

Review of 465b12c86dcc:

  • ✔️ Commit 89d4757: Looks fine!
  • ✔️ Commit 465b12c: Looks fine!

@ojeda ojeda merged commit 51a84b8 into Rust-for-Linux:rust Jul 4, 2021
ojeda pushed a commit that referenced this pull request May 9, 2023
dump_user_range() is used to copy the user page to a coredump file, but if
a hardware memory error occurred during copy, which called from
__kernel_write_iter() in dump_user_range(), it crashes,

  CPU: 112 PID: 7014 Comm: mca-recover Not tainted 6.3.0-rc2 #425

  pc : __memcpy+0x110/0x260
  lr : _copy_from_iter+0x3bc/0x4c8
  ...
  Call trace:
   __memcpy+0x110/0x260
   copy_page_from_iter+0xcc/0x130
   pipe_write+0x164/0x6d8
   __kernel_write_iter+0x9c/0x210
   dump_user_range+0xc8/0x1d8
   elf_core_dump+0x308/0x368
   do_coredump+0x2e8/0xa40
   get_signal+0x59c/0x788
   do_signal+0x118/0x1f8
   do_notify_resume+0xf0/0x280
   el0_da+0x130/0x138
   el0t_64_sync_handler+0x68/0xc0
   el0t_64_sync+0x188/0x190

Generally, the '->write_iter' of file ops will use copy_page_from_iter()
and copy_page_from_iter_atomic(), change memcpy() to copy_mc_to_kernel()
in both of them to handle #MC during source read, which stop coredump
processing and kill the task instead of kernel panic, but the source
address may not always a user address, so introduce a new copy_mc flag in
struct iov_iter{} to indicate that the iter could do a safe memory copy,
also introduce the helpers to set/cleck the flag, for now, it's only used
in coredump's dump_user_range(), but it could expand to any other
scenarios to fix the similar issue.

Link: https://lkml.kernel.org/r/[email protected]
Signed-off-by: Kefeng Wang <[email protected]>
Cc: Alexander Viro <[email protected]>
Cc: Christian Brauner <[email protected]>
Cc: Miaohe Lin <[email protected]>
Cc: Naoya Horiguchi <[email protected]>
Cc: Tong Tiangen <[email protected]>
Cc: Jens Axboe <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

RUSTCFLAGS or RUSTFLAGS?
3 participants