nilfs_ioctl_move_blocks(9)
π nilfs_ioctl_move_blocks β a kernel API manual, but make it make sense
okay so bestie, welcome to the Kernel API Manual β¨ and specifically to nilfs_ioctl_move_blocks, aka the little function that does the actual heavy lifting while the garbage collector is out here being a main character ποΈπ
πΈ NAME πΈ
nilfs_ioctl_move_blocks β moves a valid inode's blocks during garbage collection, no cap π§Ήβ¨
π¦ SYNOPSIS π¦
int nilfs_ioctl_move_blocks (struct super_block *sb , struct nilfs_argv
*argv , void *buf );
literally that's the whole signature, she's not complicated π
π ARGUMENTS π
sbβ the superblock object, your classic superblock situation π«Άargvβ a vector of arguments that came straight from userspace, hi bestie πbufβ an array ofnilfs_vdescstructures, this is the good stuff π
β¨ DESCRIPTION β¨
so here's the tea β: nilfs_ioctl_move_blocks reads valid data/node blocks β the ones the garbage collector pointed at using that array of nilfs_vdesc structures β and then it stores them into the page caches of GC inodes. that's it. that's the whole vibe. it's giving "relocating your faves so nothing gets lost" π¦π
π₯ RETURN π₯
on success you get the number of processed nilfs_vdesc structures β slay, a count, we love a countable win π β or a negative error code if it went sideways ππ
π SEE ALSO π
the whole friend group, fr fr β kernel file ./fs/nilfs2/ioctl.c and then:
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_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_get_info(9)nilfs_ioctl_set_suinfo(9)nilfs_ioctl_get_fslabel(9)nilfs_ioctl_set_fslabel(9)
and that's the page!! π this one lives in ./fs/nilfs2, dated October 2026, and yes the header said nilfs_ioctl_move_blocks(9) the whole time β iykyk π§β¨ bye bestie, go read some blocks π
π¦ 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