alloc_lpt_leb(9)
β¨ alloc_lpt_leb(9) β the kernel API manual, bestie edition β¨
okay so we're deep in the UBIFS filesystem sauce today and this little guy lives in section 9 of the kernel API manual. his whole job? finding you an empty LEB. slay.
πΈ NAME πΈ
alloc_lpt_leb β allocate an LPT LEB that is empty. literally that's it, that's the gig π
π SYNOPSIS π
int alloc_lpt_leb (struct ubifs_info *c , int *lnum );
π¦ ARGUMENTS π¦
cβ the UBIFS file-system description object π«Ά that's your whole filesystem's vibe in one struct.lnumβ the LEB number gets passed in here and returned here. yes bestie, it's an in-out param, she does both π
π₯ DESCRIPTION π₯
so the way this works: the function hunts for the next empty LEB in the ltab, and it starts the search from lnum. found one? iconic. it hands it back to you in lnum and returns 0. π
but if it doesn't find an empty LEB, it returns -ENOSPC instead. π
okay but before you panic β note that LPT is designed never to run out of space. so that -ENOSPC is giving "in theory" energy, not "delete your filesystem" energy. no cap.
π SEE ALSO π
catch all these in the kernel file ./fs/ubifs/lpt_commit.c β it's a whole friend group fr fr:
first_dirty_cnode(9)next_dirty_cnode(9)get_cnodes_to_commit(9)upd_ltab(9)layout_cnodes(9)realloc_lpt_leb(9)write_cnodes(9)next_pnode_to_dirty(9)add_pnode_dirt(9)do_make_pnode_dirty(9)make_tree_dirty(9)need_write_all(9)lpt_tgc_start(9)lpt_tgc_end(9)populate_lsave(9)nnode_lookup(9)make_nnode_dirty(9)make_pnode_dirty(9)make_ltab_dirty(9)make_lsave_dirty(9)make_node_dirty(9)get_lpt_node_len(9)get_pad_len(9)get_lpt_node_type(9)is_a_node(9)lpt_gc_lnum(9)lpt_gc(9)ubifs_lpt_start_commit(9)free_obsolete_cnodes(9)ubifs_lpt_end_commit(9)ubifs_lpt_post_commit(9)first_nnode(9)next_nnode(9)ubifs_lpt_free(9)dbg_is_all_ff(9)dbg_is_nnode_dirty(9)dbg_is_pnode_dirty(9)dbg_is_ltab_dirty(9)dbg_is_lsave_dirty(9)dbg_is_node_dirty(9)dbg_check_ltab_lnum(9)dbg_check_ltab(9)dbg_chk_lpt_free_spc(9)dbg_chk_lpt_sz(9)dump_lpt_leb(9)ubifs_dump_lpt_lebs(9)dbg_populate_lsave(9)
and that's the whole page, bestie π this drop came from ./fs/ubifs and it's stamped October 2026 β go forth and allocate your empty LEBs 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