i_uid_update(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… i_uid_update(9) β€” the Kernel API Manual, bestie edition πŸŽ€

Okay so real talk, this is a page from the Kernel API Manual and it's about one tiny little function that does one tiny little thing, and honestly? She ate. Let's get into it. ✨


🌸 NAME 🌸

i_uid_update β€” update @inode's i_uid field. That's it. That's the whole job. Iconic minimalism, no notes. πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

void i_uid_update (struct mnt_idmap *idmap , const struct iattr *attr ,
struct inode *inode );

Look at her. Three args, returns nothing (void), zero drama. Main character energy fr fr. πŸ‘‘


✨ ARGUMENTS ✨

  • idmap β€” the idmap of the mount the inode was found from. Basically the little translator passport for wherever this inode is living. πŸ›‚
  • attr β€” the new attributes of inode. The glow-up instructions, if you will. πŸ’…
  • inode β€” the inode to update. The one getting the makeover. 🧚

πŸ’œ DESCRIPTION πŸ’œ

So what does she actually do? She safely updates the inode's i_uid field, translating the vfsuid of any idmapped mount into the filesystem kuid. 🫢

That's the whole vibe: safe update, translation happens, vfsuid of an idmapped mount goes in, filesystem kuid comes out. Literally the exchange-student of kernel functions. No cap. πŸ”₯


🌈 SEE ALSO 🌈

Bestie, buckle up, because this list is long and every single one of these is part of the extended universe. The kernel file is ./include/linux/fs.h and here's the whole squad:

  1. enum positive_aop_returns(9)
  2. struct address_space(9)
  3. struct file_ra_state(9)
  4. struct file(9)
  5. i_uid_into_vfsuid(9)
  6. i_uid_needs_update(9)
  7. i_gid_into_vfsgid(9)
  8. i_gid_needs_update(9)
  9. i_gid_update(9)
  10. inode_fsuid_set(9)
  11. inode_fsgid_set(9)
  12. fsuidgid_has_mapping(9)
  13. inode_set_ctime(9)
  14. file_write_started(9)
  15. file_write_not_started(9)
  16. struct renamedata(9)
  17. is_mgtime(9)
  18. iput_if_not_last(9)
  19. is_idmapped_mnt(9)
  20. file_start_write(9)
  21. file_end_write(9)
  22. kiocb_start_write(9)
  23. kiocb_end_write(9)
  24. name_is_dot_dotdot(9)
  25. name_contains_dotdot(9)
  26. inode_dio_begin(9)
  27. inode_dio_end(9)
  28. generic_ci_validate_strict_name(9)

Go read them all, iykyk. πŸ’€βœ¨


πŸŽ€ That's the whole page bestie, she's short and she's flawless. Sourced straight from ./include/linux, dated October 2026 β€” so like, future vibes only. Byeee! πŸ’–πŸ¦‹πŸŒΈ
πŸ“¦ where this page comes from