ZXFoundation™ 26h2
Loading...
Searching...
No Matches
zxfoundation.scoms.kobject.types Module Reference

Data Structures

struct  zxfoundation::scoms::kobject::kref
 Saturating atomic reference count. More...

Enumerations

enum class  kobject_type : u8 {
  none = 0 , domain = 1 , gate = 2 , portal = 3 ,
  vm_region = 4 , io_binding = 5 , capability = 6 , strand = 7 ,
  irq_desc = 8 , memory_resource = 9 , memory_extent = 10 , memory_folio = 11 ,
  page = 12 , storage = 13 , grant = 14 , mapping = 15 ,
  address_space = 16 , page_table = 17 , key = 18 , endpoint = 19 ,
  message = 20 , kmem_cache = 21 , policy_server = 22 , service_entry = 23 ,
  device_binding = 24 , dataset_extent = 25
}
 Discriminates the concrete type behind a kobject pointer.

Functions

auto is_one () const noexcept -> bool
 Check if exactly one reference remains.
constexpr auto zxfoundation::scoms::kobject::kobject_type_name (kobject::kobject_type t) noexcept -> std::string_view
 ASCII name for each kobject type (debug/printk).
auto put () noexcept -> bool
 Decrement the reference count.
auto read () const noexcept -> u32
 Read the current count (advisory — racy by definition).
auto try_get () noexcept -> bool
 Acquire a reference only while the object remains live.

Variables

atomic< u32 > count {1}
constexpr u32 zxfoundation::scoms::kobject::KOBJECT_ID_INVALID = ~0U
 value for an unassigned kernel-object id.

Files

file  zxfoundation/scoms/kobject.zcomponent/types.cxxm