simple_start_creating(9)
π simple_start_creating β from the Kernel API Manual
okay so bestie, we're doing kernel dentry stuff today and honestly? this one is short and sweet. it lives in the kernel's libfs corner of the world and it's literally just the "get ready to make a file" step. no cap.
β¨ NAME
simple_start_creating β the little prep step before you create a name in a directory. it's giving "stretch before the workout" energy π
πΈ SYNOPSIS
struct dentry * simple_start_creating (struct dentry *parent , const
char *name );
like, it hands you back a struct dentry *, and you feed it a parent and a name. that's the whole vibe π¦
π«Ά ARGUMENTS
parentβ the directory where you're getting ready to create the name. this is the main character of the operation πnameβ the actual name you want to create. the thing you're bringing into existence β¨
π₯ DESCRIPTION
so here's the whole deal, fr fr: the required lock gets taken, and a lookup happens before you create an object inside a directory. that's it. that's the whole function.
β οΈ and listen β no permission checking is performed. none. zero. NOT ME skipping the permission check π so don't come crying to this function if you wanted that handled, because it simply does not do it.
π RETURN
you get back a negative dentry β which is iconic, because that's exactly the thing you can then hand to vfs_create or something similar and attempt your create on. or you get an error instead. either way, check it, bestie π
π SEE ALSO
the whole squad, all from the kernel file ./fs/libfs.c:
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_compare(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)
and that's the page, bestie π§ go forth and create responsibly. this one's from the ./fs source, dated October 2026 β 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