__move_to_shrink_list(9)
πΈ NAME πΈ
okay so bestie, welcome to the __move_to_shrink_list(9) page from the Kernel API Manual π. The whole assignment? try to place a dentry into a shrink list. That's it. Iconic.
β¨ SYNOPSIS β¨
bool __move_to_shrink_list (struct dentry *dentry , struct list_head *list );
π ARGUMENTS π
dentryβ the dentry you're trying to put into the shrink list. main character energy fr fr.listβ the list you're puttingdentryinto. the destination. π
β RETURN β
Returns true if dentry had been placed into list, and false otherwise. So: true = it made it in; false = no entry, no drama. π«Ά
π¦ DESCRIPTION π¦
So here's the tea, bestie: if dentry is idle and is not already included in a shrink list, __move_to_shrink_list moves it into list and returns true. Otherwise it does nothing and returns false. Periodt. β¨
β οΈ Caller rules, and they are not optional: the caller must be holdingdentry->d_lock. There must have been no calls ofdentry_free(dentry)prior to the beginning of the RCU read-side critical area in which__move_to_shrink_list(dentry, list)is called. Like, do not skip this, iykyk π.
Also, list should be thread-private and eventually emptied by passing it to shrink_dentry_list. Don't just leave it there like an unread group chat, bestie π«Ά.
π SEE ALSO π
Kernel file ./fs/dcache.c: d_drop(9), dentry_kill(9), d_find_any_alias(9), d_find_alias(9), prune_dcache_sb(9), shrink_dcache_sb(9), enum d_walk_ret(9), d_walk(9), path_has_submounts(9), shrink_dcache_tree(9), d_invalidate(9), __d_alloc(9), d_alloc(9), d_alloc_pseudo(9), d_instantiate(9), d_obtain_alias(9), d_obtain_root(9), d_add_ci(9), d_same_name(9), __d_lookup_rcu(9), d_lookup(9), __d_lookup(9), d_hash_and_lookup(9), d_delete(9), d_rehash(9), d_add(9), d_ancestor(9), d_splice_alias(9), is_subdir(9).
cute little sign-off β¨ source/version: ./fs; date: October 2026. That's the __move_to_shrink_list(9) moment, mwah ππ.
π¦ 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