Exported Modules | |
| module | zxfoundation.base.types |
| module | lib.cstring |
| module | lib.error |
| module | std |
| module | std |
Concepts | |
| concept | arch::s390x::cpu::stsi::ValidStsiArguments |
Functions | |
| __endian__ (BIG) | |
| u16 | address_origin () const noexcept |
| auto | adjustment_factors () const noexcept -> std::span< const adjustment_factor > |
| auto | alternate_adjustment_factors () const noexcept -> std::span< const adjustment_factor > |
| auto | alternate_cpu_capability () const noexcept -> std::optional< alternate_capability > |
| arch::s390x::cpu::stsi::assert_size (adjustment_factor, 2) | |
| arch::s390x::cpu::stsi::assert_size (alternate_capability, 4) | |
| arch::s390x::cpu::stsi::assert_size (basic_machine_cfg, PAGE_SIZE) | |
| arch::s390x::cpu::stsi::assert_size (basic_machine_cpu, PAGE_SIZE) | |
| arch::s390x::cpu::stsi::assert_size (basic_machine_cpus, 44) | |
| arch::s390x::cpu::stsi::assert_size (extended_vm_name_enc, 1) | |
| arch::s390x::cpu::stsi::assert_size (lpar_cpu, PAGE_SIZE) | |
| arch::s390x::cpu::stsi::assert_size (lpar_cpus, PAGE_SIZE) | |
| arch::s390x::cpu::stsi::assert_size (topology_container, 8) | |
| arch::s390x::cpu::stsi::assert_size (topology_core, 16) | |
| arch::s390x::cpu::stsi::assert_size (virtual_server_name_enc, 1) | |
| arch::s390x::cpu::stsi::assert_size (vm_cpus, PAGE_SIZE) | |
| arch::s390x::cpu::stsi::assert_size (vm_descriptor_block, 64) | |
| basic_machine_cpus_view (std::span< const std::byte, 4096 > page) noexcept | |
| bitfield (multithreading_facility) | |
| bitfield (transient_condition) | |
| bitfield (type_percentage_bytes_valid) | |
| bitfield (dedicated) | |
| bitrsvd (5) | |
| bitrsvd (5) | |
| bitrsvd (28) | |
| bitrsvd (24) | |
| bitsfield (2, pp) | |
| bitsfield (4, description_block_count) | |
| bytersvd (1) | |
| bytersvd (3) | |
| bytersvd (tobytes(w, 1)) | |
| bytersvd (tobytes(w, 3)) | |
| bytersvd (tobytes(w, 5)) | |
| bytersvd (tobytes(w, 972)) | |
| bytersvd (2) | |
| bytersvd (tobytes(w, 20)) | |
| bytersvd (tobytes(w, 998)) | |
| bytersvd (1) | |
| bytersvd (tobytes(w, 2)+2) | |
| bytersvd (1) | |
| bytersvd (tobytes(hw, 1)) | |
| bytersvd (tobytes(w, 1)) | |
| bytersvd (tobytes(w, 20)) | |
| bytersvd (tobytes(w, 998)) | |
| bytersvd (1) | |
| bytersvd (3) | |
| bytersvd (tobytes(w, 1)+1) | |
| bytersvd (tobytes(w, 40)) | |
| bytersvd (tobytes(w, 8)) | |
| bytersvd (tobytes(w, 896)) | |
| bytersvd (6) | |
| bytersvd (3) | |
| bytersvd (tobytes(w, 376)) | |
| bytersvd (tobytes(w, 7)) | |
| bytersvd (tobytes(w, 1)) | |
| bytersvd (tobytes(w, 1)) | |
| configuration_topology_view (std::span< const std::byte, PAGE_SIZE > page) noexcept | |
| u8 | cpu_type () const noexcept |
| auto | arch::s390x::cpu::stsi::current_configuration_number () -> u4 |
| Get current configuration level. | |
| bool | dedicated () const noexcept |
| bool | empty () const noexcept |
| topology_list_view | entries () const noexcept |
|
template<typename Fn> requires std::invocable<Fn, u16> | |
| void | for_each_cpu (u32 threads_per_core, Fn &&fn) const |
| constexpr auto | fraction () const noexcept -> double |
| bool | has_alternate () const noexcept |
| const basic_machine_cpus & | header () const noexcept |
| const configuration_topology & | header () const noexcept |
| u8 | id () const noexcept |
| std::optional< u8 > | id_at (u8 level) const noexcept |
| std::optional< u8 > | innermost () const noexcept |
| auto | arch::s390x::cpu::stsi::detail::invoke (void *sysinfo, u4 fc, u8 sel1, u8 sel2, u4 &curr_level) noexcept -> std::expected< condition_code, lib::kernel_error > |
| Issue STSI instruction to store system information. | |
| template<typename Out, stsi_fc Fc, selector1 Sel1, selector2_2 Sel2> requires ValidStsiArguments<Out, Fc, Sel1, static_cast<u8>(Sel2)> && (Sel1 == selector1::configuration_level_multi_cpu) | |
| auto | arch::s390x::cpu::stsi::invoke (Out &sysinfo) noexcept -> std::expected< condition_code, lib::kernel_error > |
| Issue STSI instruction to store system information. | |
| template<typename Out, stsi_fc Fc, selector1 Sel1, selector2_1 Sel2> requires ValidStsiArguments<Out, Fc, Sel1, static_cast<u8>(Sel2)> && (Sel1 == selector1::configuration_level_fc) | |
| auto | arch::s390x::cpu::stsi::invoke (Out &sysinfo) noexcept -> std::expected< condition_code, lib::kernel_error > |
| Issue STSI instruction to store system information. | |
| template<typename Out, stsi_fc Fc, selector1 Sel1> requires (Fc == stsi_fc::current_configuration_level) && (Sel1 == selector1::configuration_level_fc) | |
| auto | arch::s390x::cpu::stsi::invoke (Out &sysinfo, u8 sel2) noexcept -> std::expected< condition_code, lib::kernel_error > |
| Issue STSI instruction to store system information. | |
| constexpr auto | is_float () const noexcept -> bool |
| consteval bool | arch::s390x::cpu::stsi::detail::is_valid_stsi (u8 fc, u8 sel1, u8 sel2) |
| std::span< const std::byte, TOPOLOGY_NR_MAG > | mag () const noexcept |
| u64 | mask () const noexcept |
| u8 | mnest () const noexcept |
| u8 | nesting_level () const noexcept |
| bool | ok () const noexcept |
| std::optional< u8 > | outermost () const noexcept |
| cpu_polarization | polarization () const noexcept |
| topology_container_view (const topology_container &raw) noexcept | |
| topology_cpu_view (topology_core raw) noexcept | |
| topology_list_view (std::span< const std::byte > tle_bytes) noexcept | |
| constexpr auto | value () const noexcept -> std::variant< u32, float > |
|
template<typename Fn> requires std::invocable<Fn, const topology_cpu_record&> | |
| auto | visit_cpu_entries (Fn &&fn) const -> topology_parse_result |
Variables | |
| u16 | acc_offset {} |
| u8 | capacity_adjustment_indication {} |
| basic_machine_cfg_ccr | capacity_change_reason {} |
| u32 | capacity_rating {} |
| u16 | configured_cpus_count {} |
| u16 | configured_logical_cpu_count {} |
| u16 | configured_logical_cpu_count |
| topology_container | container |
| u32 | container_entries_visited {} |
| std::array< uchar, tobytes(w, 4)> | control_program_identifier |
| topology_cpu_view | cpu |
| topology_core | cpu |
| u16 | cpu_address {} |
| u16 | cpu_address_origin {} |
| u32 | cpu_capability {} |
| u32 | cpu_entries_visited {} |
| u64 | cpu_mask {} |
| u8 | cpu_type {} |
| u16 | cpus_count {} |
| u16 | dedicated_logical_cpu_count {} |
| u8 | depth {} |
| topology_parse_error | error {topology_parse_error::none} |
| extended_vm_name_enc | evmne |
| u8 | fc {} |
| u8 | format {} |
| u8 | id {} |
| std::array< u8, TOPOLOGY_MAX_NEST > | ids {} |
| u16 | lcpu_address {} |
| u16 | lcpu_id {} |
| u16 | length {} |
| u64 | lic_identifier {} |
| u8 logical_cpu_characteristic {} | |
| u32 | lpar_caf {} |
| std::array< uchar, tobytes(w, 2)> | lpar_name {} |
| u16 | lpar_numer {} |
| std::array< std::byte, TOPOLOGY_NR_MAG > | mag {} |
| std::array< uchar, tobytes(w, 4)> | manufacturer {} |
| constexpr auto | arch::s390x::cpu::stsi::MAX_VMS = 8 |
| u16 | mnest {} |
| std::array< uchar, tobytes(w, 4)> | model {} |
| std::array< uchar, tobytes(w, 4)> | model_capacity_identifer {} |
| u8 mt {} | |
| u8 mt {} | |
| u8 mt_general {} | |
| u8 mt_general {} | |
| u8 | nl {} |
| u8 | nl {} |
| uchar | nl |
| u32 | nominal_capacity_rating {} |
| u32 | nominal_cpu_capability {} |
| u32 | nominal_permanent_capacity_rating {} |
| u32 | nominal_replacement_capacity_rating {} |
| u32 | nominal_temporary_capacity_rating {} |
| topology_path | path |
| std::array< uchar, tobytes(w, 4)> | permanent_capacity_identifier {} |
| u32 | permanent_capacity_rating {} |
| std::array< uchar, tobytes(w, 1)> | plant {} |
| std::array< uchar, tobytes(w, 1)> | plant {} |
| std::array< uchar, tobytes(w, 1)> | plant {} |
| u32 | primary_cpu_speed {} |
| u8 program_specified_mtid {} | |
| u16 | raw {} |
| u32 | raw {} |
| std::array< uchar, tobytes(w, 4)> | replacement_capacity_identifier {} |
| u32 | replacement_capacity_rating {} |
| u16 | reserved_cpus_count {} |
| u16 | reserved_logical_cpu_count {} |
| u16 | reserved_logical_cpu_count |
| u32 | secondary_cpu_capability {} |
| u32 | secondary_cpu_speed {} |
| u8 | sel1 {} |
| u8 | sel2_hi {} |
| u8 | sel2_lo {} |
| std::array< uchar, tobytes(w, 4)> | sequence_code {} |
| std::array< uchar, tobytes(w, 4)> | sequence_code {} |
| std::array< uchar, tobytes(w, 4)> | sequence_code {} |
| u16 | shared_logical_cpu_count {} |
| u16 | standby_cpus_count {} |
| u16 | standby_logical_cpu_count {} |
| u16 | standby_logical_cpu_count |
| std::array< uchar, tobytes(w, 4)> | temporary_capacity_identifier {} |
| u32 | temporary_capacity_rating {} |
| topology_entry | tle [] |
| constexpr auto | arch::s390x::cpu::stsi::TOPOLOGY_MAX_NEST = TOPOLOGY_NR_MAG - 1U |
| constexpr auto | arch::s390x::cpu::stsi::TOPOLOGY_NR_MAG = 6U |
| u16 | total_logical_cpu_count {} |
| u16 | total_logical_cpu_count |
| std::array< uchar, tobytes(w, 1)> | type {} |
| std::array< u8, 5 > | type_percentages {} |
| u128 | uuid |
| constexpr std::array | arch::s390x::cpu::stsi::detail::valid_combos |
| std::array< uchar, tobytes(w, 64)> | virtual_server_name {} |
| u32 | vm_caf |
| std::array< std::array< uchar, tobytes(w, 64)>, MAX_VMS > | vm_extended_name {} |
| std::array< uchar, tobytes(w, 2)> | vm_name |
| std::array< vm_descriptor_block, MAX_VMS > | vmdbs {} |
| u128 | vsi_uuid {} |
| virtual_server_name_enc | vsne {} |
Files | |
| file | arch/s390x/cpu/stsi.zcomponent/stsi.cxxm |
| STSI (STore System Information) API. | |
| file | arch/s390x/cpu/stsi.zcomponent/common.cxxm |
| file | arch/s390x/cpu/stsi.zcomponent/stsi.cxx |