xe_observat...ranoid_check(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… xe_observation_paranoid_check β€” Kernel API Manual, bestie edition ✨

okay so before we even start: this page lives in the Kernel API Manual, and yes the title is the whole mouthful xe_observation_paranoid_check(9) β€” we do not shorten it, we respect her government name 🫢


πŸŽ€ NAME πŸŽ€

xe_observation_paranoid_check β€” literally the bouncer at the club that is xe observation streams. she checks the list, she decides who gets in πŸ’…


✨ SYNOPSIS ✨

int xe_observation_paranoid_check (void );

that's it. that's the whole vibe. no arguments, no drama 🌸


πŸ¦‹ ARGUMENTS πŸ¦‹

  • void β€” no arguments, bestie. none. zero. the function said "I work alone" and honestly? main character energy πŸ‘‘

πŸ’– DESCRIPTION πŸ’–

okay so here's the tea πŸ“

There's this xe-specific sysctl called observation_paranoid, and it's enabled by default (iconic, cautious, we love her). When it's on, this function defers to perf_allow_cpu β€” which means access gets governed by the exact same policy as system-wide perf CPU events. And that policy is two things, no cap:

  • kernel.perf_event_paranoid
  • the security_perf_event_open LSM hook

so like... the same rules, the same gatekeeping, the same energy. consistency ate πŸ”₯

But β€” and this is the plot twist β€” when a privileged user has cleared that sysctl, observation is just open to all callers. doors wide open, everyone's invited, no velvet rope 😭


🌈 RETURN 🌈

  • 0 β€” access is permitted, come on in, the water's fine 🫢
  • a negative errno β€” access denied bestie, it's giving "not on the list" πŸ’€

πŸ‘‘ SEE ALSO πŸ‘‘


ok so real talk: the paranoid sysctl is the default for a reason. if a privileged user clears it, observation is open to all callers β€” that's the documented behaviour, not me being dramatic. know what you're doing before you touch it πŸ™ˆ

⭐ that's the whole page, bestie! this one comes from ./drivers/gpu/drm/xe, dated October 2026 β€” slay, see you in the next manpage πŸ’œπŸŽ€

πŸ“¦ where this page comes from