__releases_shared(9)
π
__releases_shared β NAME
ok so bestie, gather round: __releases_shared is a function attribute, and what it declares is that the function releases a context lock shared. That's the whole vibe. It's from the Kernel API Manual, and yes it's exactly as niche and iconic as it sounds.
β¨ SYNOPSIS β¨
__releases_shared (... );
π ARGUMENTS π
...β variable arguments. literally just vibes in vararg form, that's the whole list π«Ά
πΈ DESCRIPTION πΈ
okay so here's the tea β β this is a function attribute that declares the function releases the given context lock instance(s) with shared access.
and the important part, the part you cannot skip, the part that's giving rules: the associated context(s) must be active on entry. no cap. if they're not active when you go in, that's a you problem, not a doc problem π
π¦ SEE ALSO π¦
all the besties in the same friend group π living in the kernel file ./include/linux/compiler-context-analysis.h:
__guarded_by(9)__pt_guarded_by(9)context_lock_struct(9)disable_context_analysis(9)enable_context_analysis(9)__no_context_analysis(9)context_unsafe(9)__context_unsafe(9)context_unsafe_alias(9)token_context_lock(9)token_context_lock_instance(9)__must_hold(9)__must_not_hold(9)__acquires(9)__cond_acquires(9)__releases(9)__cond_releases(9)__acquire(9)__release(9)__must_hold_shared(9)__acquires_shared(9)__cond_acquires_shared(9)__acquire_shared(9)__release_shared(9)__acquire_ret(9)__acquire_shared_ret(9)
π that's the whole page bestie, go forth and annotate your lock releases correctly π β¨
ok and finally the cute sign-off π this one lives in ./include/linux, dated October 2026, and the page is __releases_shared(9) β mwah, 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