nilfs_ioctl_get_info(9)
π« nilfs_ioctl_get_info(9) π«
okay so bestie, we're in the Kernel API Manual today and this is the page for nilfs_ioctl_get_info β yes that name is a mouthful, yes it's iconic, we move.
πΈ NAME πΈ
nilfs_ioctl_get_info β the wrapping function of get metadata info. that's it, that's the whole vibe: it's the little handler that goes and gets you metadata info. π
β¨ SYNOPSIS β¨
int nilfs_ioctl_get_info (struct inode *inode , struct file *filp ,
unsigned int cmd , void __user *argp , size_t membsz , ssize_t
(*dofunc)(struct the_nilfs *, __u64 *, int, void *, size_t, size_t) );
look at that signature. she's long. she's gorgeous. she takes a function pointer. main character energy fr fr. π
π¦ ARGUMENTS π¦
inodeβ the inode object. you know her, you love her. π«Άfilpβ the file object. hi bestie.cmdβ the ioctl's request code. this is the "what do you actually want" part.argpβ a pointer on the argument from userspace. this is where the good stuff lands. β¨membszβ size of an item in bytes. numbers, we love numbers.dofuncβ the concrete function of getting metadata info. like, the actual worker bee that does the thing. π
π DESCRIPTION π
so nilfs_ioctl_get_info gets metadata info by means of calling the dofunc function. it's a wrapper, it's a delegator, it's giving project manager who actually does the work... no wait, it does the work, dofunc does the work. either way, teamwork makes the dream work. π
the requested metadata information is copied to userspace memory argp. so whatever you asked for? it goes right back out to you. slay. π
π₯ RETURN π₯
0 on success, or one of the following negative error codes on failure. no in-between, she's very decisive:
-EFAULTβ failure during execution of requested operation. π-EINVALβ invalid arguments from userspace. bestie. come on. read the args.-EIOβ I/O error. the disk had a moment. π-ENOMEMβ insufficient memory available. not enough room, the vibe check failed.
π SEE ALSO π
start with the kernel file ./fs/nilfs2/ioctl.c β that's the actual hometown of all of these:
nilfs_ioctl_wrap_copy(9)nilfs_fileattr_get(9)nilfs_fileattr_set(9)nilfs_ioctl_getversion(9)nilfs_ioctl_change_cpmode(9)nilfs_ioctl_delete_checkpoint(9)nilfs_ioctl_do_get_cpinfo(9)nilfs_ioctl_get_cpstat(9)nilfs_ioctl_do_get_suinfo(9)nilfs_ioctl_get_sustat(9)nilfs_ioctl_do_get_vinfo(9)nilfs_ioctl_do_get_bdescs(9)nilfs_ioctl_get_bdescs(9)nilfs_ioctl_move_inode_block(9)nilfs_ioctl_move_blocks(9)nilfs_ioctl_delete_checkpoints(9)nilfs_ioctl_free_vblocknrs(9)nilfs_ioctl_mark_blocks_dirty(9)nilfs_ioctl_clean_segments(9)nilfs_ioctl_sync(9)nilfs_ioctl_resize(9)nilfs_ioctl_trim_fs(9)nilfs_ioctl_set_alloc_range(9)nilfs_ioctl_set_suinfo(9)nilfs_ioctl_get_fslabel(9)nilfs_ioctl_set_fslabel(9)
okay that's the whole friend group, go say hi to all of them. iykyk. π
and that's the page, bestie!! this one lives in ./fs/nilfs2, dated October 2026 β yes, the future, we're ahead of the timeline, periodt. ππ¦β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms