Skip to content

Clarifying from_err_ptr may return Ok(NULL) #1231

Open

Description

@ojeda

Please read https://lore.kernel.org/rust-for-linux/20260322193830.89324-1-ojeda@kernel.org/ for context -- this issue is about this part:

  - On the Rust general infrastructure side, we should document more
    prominently that `from_err_ptr` may return `Ok(NULL)` just fine,
    since it calls `IS_ERR`. It may be obvious, since `NULL` is not an
    error value, but still, it could have perhaps prevented this issue.

    We should also include an example to the doctest showing and testing
    that particular case to drive the point home.

Regarding the doctest part: it should be a new one, or the existing one should be made non-ignore.

In addition, the example should assert not just for Ok(NULL), but also other cases.


This requires submitting a proper patch to the LKML and the Rust for Linux mailing list. Please recall to test your changes (including generating the documentation if changed, running the Rust doctests if changed, etc.), to use a proper title for the commit, to sign your commit under the Developer's Certificate of Origin and to add a Suggested-by: tag, and a Link: tag to this issue. Please see https://docs.kernel.org/process/submitting-patches.html and https://rust-for-linux.com/contributing for details.

Activity

  1. added
    • libRelated to the `rust/` library.
    easyExpected to be an easy issue to resolve.
    on Mar 25, 2026
  2. Mirko-A commented on Mar 27, 2026

    @Mirko-A

    Hi Miguel, may I take this up?

  3. ojeda commented on Mar 27, 2026

    @ojeda
    MemberAuthor

    Of course, please feel free to send a patch!

  4. Mirko-A commented on Mar 28, 2026

    @Mirko-A

    Thanks, I've just sent one out.

    I listed the recipients of your original email as the recipients of mine, and added the rest of maintainers listed by get_maintainer.pl as cc. I hope I didn't leave anyone out.

  5. Mirko-A commented on Mar 28, 2026

    @Mirko-A

    After sending out the patch I tried getting the doctest to fail and realized that, the way I submitted it, it does not get executed at all. I had the asserts outside the functions when testing initially but then chose to move them inside, which broke the doctest.

    I apologize for the mistake, I will try to be more careful in the future.

  6. ojeda commented on Mar 28, 2026

    @ojeda
    MemberAuthor

    No worries, it is part of learning :)

    https://lore.kernel.org/rust-for-linux/20260328114005.125617-1-adzicmirko97@gmail.com/

    I have replied in the list.

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

    easyExpected to be an easy issue to resolve.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