rgblk_free(9)
π
rgblk_free β a Kernel API Manual moment (section 9, bestie)
okay so picture this: it's a rgblk_free(9) kind of day and we're out here changing the alloc state of given block(s). That's literally the whole name, no notes. π
β¨ NAME β¨
rgblk_free β Change alloc state of given block(s)
Like, you hand it some blocks and it goes "cool, new state for you bestie" and rewrites their allocation status. Slay.
π¦ SYNOPSIS π¦
void rgblk_free (struct gfs2_sbd *sdp , struct gfs2_rgrpd *rgd , u64
bstart , u32 blen , unsigned char new_state );
Returns void. It gives nothing back and honestly? That's main character energy. π
πΈ ARGUMENTS πΈ
sdpβ the filesystem. the whole vibe, the big picture, thestruct gfs2_sbdin question πrgdβ the resource group the blocks are in. lowkey important to know where we're atbstartβ the start of a run of blocks to free. the launch point, the beginning of the run πblenβ the length of the block run. and bestie, listen to me: all must lie within ONE RG! not two, not "mostly one", ONE. okay? ππnew_stateβGFS2_BLKST_XXX, the after-allocation block state. it's giving "this is what the block identifies as now" β¨
ngl the blen caveat is the one that will get you. every single block in the run has to live inside that one resource group, periodt. don't come crying to me when you ignore it π
π SEE ALSO π
Kernel file ./fs/gfs2/rgrp.c β and honestly the whole friend group showed up:
gfs2_setbit(9)gfs2_testbit(9)gfs2_bit_search(9)rs_cmp(9)gfs2_bitfit(9)gfs2_rbm_from_block(9)gfs2_rbm_add(9)gfs2_unaligned_extlen(9)gfs2_free_extlen(9)gfs2_bitcount(9)gfs2_rgrp_verify(9)gfs2_blk2rgrpd(9)gfs2_rgrpd_get_first(9)gfs2_rgrpd_get_next(9)__rs_deltree(9)gfs2_rs_deltree(9)gfs2_rs_delete(9)return_all_reservations(9)compute_bitstructs(9)gfs2_ri_total(9)read_rindex_entry(9)set_rgrp_preferences(9)gfs2_ri_update(9)gfs2_rindex_update(9)gfs2_rgrp_go_instantiate(9)gfs2_rgrp_brelse(9)gfs2_fitrim(9)rs_insert(9)rgd_free(9)rg_mblk_search(9)gfs2_next_unreserved_block(9)gfs2_reservation_check_and_update(9)gfs2_rbm_find(9)try_rgrp_unlink(9)gfs2_rgrp_congested(9)gfs2_rgrp_used_recently(9)fast_to_acquire(9)gfs2_inplace_reserve(9)gfs2_inplace_release(9)gfs2_alloc_extent(9)gfs2_rgrp_dump(9)gfs2_adjust_reservation(9)gfs2_set_alloc_start(9)gfs2_alloc_blocks(9)__gfs2_free_blocks(9)gfs2_free_meta(9)gfs2_check_blk_type(9)gfs2_rlist_add(9)gfs2_rlist_alloc(9)gfs2_rlist_free(9)
like, the entire rgrp cinematic universe. iykyk π«Ά
anyway that's the tea π β this page came to you from ./fs/gfs2, dated October 2026, and it's filed under rgblk_free(9) in the Kernel API Manual. go free those blocks bestie, and remember: ONE RG. ππ§ββοΈ
π¦ 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