mips_cm_lock_other(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

mips_cm_lock_other β€” lock access to redirect/other region.

Hi bestie!! Welcome to the mips_cm_lock_other(9) page from the Kernel API Manual ✨ This is the function that locks down access to the redirect/other region so nobody else can swoop in and mess with it. πŸ‘‘


πŸŽ€ SYNOPSIS πŸŽ€

void mips_cm_lock_other (unsigned int cluster , unsigned int core ,
       unsigned int vp , unsigned int block );

🌸 ARGUMENTS 🌸

  • cluster β€” the other cluster to be accessed. Like, the cluster you’re visiting, not your home cluster πŸ¦‹
  • core β€” the other core to be accessed. The core you’re targeting, bestie.
  • vp β€” the VP within the other core to be accessed. The VP inside that other core, specifically.
  • block β€” the register block to be accessed. The register block in question πŸ’…

✨ DESCRIPTION ✨

Okay so here’s the tea: mips_cm_lock_other() configures the redirect/other region for the local core/VP β€” which one depends on the CM revision, iykyk β€” so it targets the cluster, core, vp & register block you specified. 🫢

You must call it before using the redirect/other region, and you must follow it with a call to mips_cm_unlock_other() when access to the redirect/other region is complete. No skipping steps, bestie. πŸ’–

This function acquires a spinlock, so the code between it & mips_cm_unlock_other() calls cannot be pre-empted by anything which may reconfigure the redirect/other region, and cannot be interfered with by another VP in the core. Because of that, calls to this function should not be nested. Periodt. πŸ’€


πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file: ./arch/mips/include/asm/mips-cm.h β€” go look, bestie πŸ‘€


Source/section: ./arch/mips/include/asm Β· date: October 2026 Β· page: mips_cm_lock_other(9) πŸ’œπŸ¦‹βœ¨

πŸ“¦ where this page comes from