msm_perfcntr_counter_base(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… msm_perfcntr_counter_base(9) ✨

okay so bestie, welcome to the Kernel API Manual πŸŽ€ β€” today's main character is msm_perfcntr_counter_base, and honestly? she's lowkey iconic.


🌸 NAME 🌸

msm_perfcntr_counter_base β€” get idx of the first counter in group 🫢


⭐ SYNOPSIS ⭐

uint32_t msm_perfcntr_counter_base (const struct msm_perfcntr_stream
*stream , uint32_t group_idx );

like literally that's the whole vibe check. two args, one uint32_t coming back at you πŸ’–


πŸ¦‹ ARGUMENTS πŸ¦‹

  • stream β€” the global perfcntr stream 🌈 (the big one, the main character)
  • group_idx β€” the index of the counter group πŸ”’ (which group we're talking about, bestie)

✨ DESCRIPTION ✨

okay so here's the tea β˜•: for global counter collection, the counters get allocated from the end (last counter) πŸ“ β€” meanwhile UMD allocates them from the start (0..N-1) πŸ’….

the way that matters: since UMD always allocated them from the start, this also minimizes the chance of conflict when you're using an old UMD which predates the PERFCNTR_CONFIG ioctl πŸ‘‘. no cap, that's the whole reason.

and what does she return? the index of the first counter to use πŸ”₯. it's an index into msm_perfcntr_group::counters[] β€” remember that, it's important fr fr.

ngl, the return value is the moment. index of first counter to use. periodt. πŸ’€

🌈 SEE ALSO 🌈

  • the kernel file literally sitting at ./drivers/gpu/drm/msm/msm_perfcntr.c 🧚
  • msm_perfcntr_group_idx(9) β€” her bestie, go say hi πŸ’œ

and that's the page, bestie πŸŽ€πŸ’– β€” brought to you from ./drivers/gpu/drm/msm, all the way from October 2026. slay, see you in the next manpage ✨🫢

πŸ“¦ where this page comes from