Skip to content

Use current! instead of bindings::get_current() in Task::pid_in_current_ns #1047

Closed

Description

@BennoLossin

The function Task::pid_in_current_ns in rust/kernel/task.rs uses bindings::get_current(). But there exists a safe abstraction for the raw binding: the current! macro. Change the implementation to use that abstraction instead.

You might also have to add a function on Task to get access to the raw C pointer.


This requires submitting a proper patch to the LKML and the Rust for Linux mailing list. Please recall to test your changes, to use a proper title for the commit, to sign your commit under the Developer's Certificate of Origin and so on. Please see https://docs.kernel.org/process/submitting-patches.html and https://rust-for-linux.com/contributing for details.

Please take this issue only if you are new to the kernel development process and you would like to use it as a test to submit your first patch to the kernel.

Activity

  1. antonio-hickey commented on Jan 2, 2024

    @antonio-hickey

    I'm not finding the function Task::pid_in_current_ns in rust/kernel/task.rs.

    I see the use of bindings::get_current() in current() is this where we want to use the safe macro instead? @y86-dev

    EDIT: I see now, it's in the rust-dev branch.

  2. antonio-hickey commented on Jan 3, 2024

    @antonio-hickey

    You might also have to add a function on Task to get access to the raw C pointer.

    What's the reason I would or would not have to add a function to grab the raw C pointer? Any further detail on this would be appreciated, thanks.

  3. jsat97 commented on Oct 24, 2024

    @jsat97

    If this is still available, may I work on it ?

  4. antonio-hickey commented on Oct 24, 2024

    @antonio-hickey

    @jsat97

    I've already sent my patches

  5. tamird commented on Feb 14, 2025

    @tamird
    Member

    I believe the code this issue refers to never made it upstream. This is obsolete.

  6. BennoLossin commented on Feb 15, 2025

    @BennoLossin
    MemberAuthor

    you're correct, thanks for spotting this 👍

    The code was introduced in 8ad1a41 and used pid_in_current_ns from the start.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    good first issueGood for newcomers• libRelated to the `rust/` library.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions