generic_ci_d_compare(9)
π generic_ci_d_compare β like, the whole manual page, bestie
okay so real talk: we're deep in the Kernel API Manual today (generic_ci_d_compare(9), if you're keeping track), and this one is a little niche but honestly kind of iconic once you get it. sit down, grab a strawberry drink π, and let me tell you about the generic d_compare implementation for casefolding filesystems. yes, casefolding β the thing that makes your files not care about case. she's serving inclusivity, she's serving convenience. periodt.
β¨ NAME β¨
generic_ci_d_compare β the generic d_compare implementation for casefolding filesystems. that's it, that's the whole vibe check. π¦
πΈ SYNOPSIS πΈ
int generic_ci_d_compare (const struct dentry *dentry , unsigned int len
, const char *str , const struct qstr *name );
look at her. four arguments, one int return, no cap. copy it exactly if you're using it, because I am not about to let you get the signature wrong in front of the whole group chat π
π ARGUMENTS π
dentryβ the dentry whose name we are checking against. she's the main character here, the one we're all here for πlenβ len of name of dentry. yes, it's literally just the length of the dentry's name, she's not hiding anything πstrβ str pointer to name of dentry. this is the actual string pointer to that dentry name, so like, point her the right way please πnameβ Name to compare against. the challenger. the opponent. the one who shows up and gets compared π₯
β RETURN β
0if names match π«Ά (besties! they match!)1if mismatch π (awkward. they don't match. we move)- or
-ERRNOβ an error, negative errno style, so keep your eyes peeled for that one
okay so the numbers here actually matter, don't get cute with them β0means match and1means mismatch, and any negative value is an error. those are not interchangeable, bestie β¨
π§ SEE ALSO π§
kernel file ./fs/libfs.c, and then a whole friend group of related functions β honestly this list ate, look at all of them:
simple_offset_init(9)simple_offset_add(9)simple_offset_remove(9)simple_offset_rename(9)simple_offset_rename_exchange(9)simple_offset_destroy(9)offset_dir_llseek(9)offset_readdir(9)simple_rename_timestamp(9)simple_setattr(9)simple_write_end(9)simple_read_from_buffer(9)simple_write_to_buffer(9)memory_read_from_buffer(9)generic_encode_ino32_fh(9)generic_fh_to_dentry(9)generic_fh_to_parent(9)simple_fsync_noflush(9)simple_fsync(9)generic_check_addressable(9)simple_get_link(9)generic_ci_d_hash(9)generic_ci_match(9)generic_set_sb_d_ops(9)inode_maybe_inc_iversion(9)inode_query_iversion(9)simple_inode_init_ts(9)path_from_stashed(9)simple_start_creating(9)
iykyk π catch you all in the adjacent manpages.
that's the page! source is ./fs, dated October 2026, and we're all wrapped up in generic_ci_d_compare(9) π bye bestie, stan casefolding filesystems responsibly π
π¦ 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