Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/IBM/ACE-RISCV
/ functions
Functions
620 in github.com/IBM/ACE-RISCV
⨍
Functions
620
◇
Types & classes
158
↓ 2 callers
Method
confidential_hart_mut
(&mut self)
security-monitor/src/core/control_data/hardware_hart.rs:87
↓ 2 callers
Function
decode_result_register
TODO: remove below once riscv_decode supports compressed instructions
security-monitor/src/core/architecture/riscv/extensions/compressed_instructions.rs:8
↓ 2 callers
Method
delegate_to_opensbi
(self)
security-monitor/src/non_confidential_flow/finite_state_machine.rs:79
↓ 2 callers
Method
disable_bits_on_saved_value
(&mut self, bit_mask: usize)
security-monitor/src/core/architecture/riscv/control_status_registers.rs:367
↓ 2 callers
Method
enable
Reconfigures hardware to enable memory accesses initiated from this physical hart to memory regions owned by the hypervisor and denies accesses to all
security-monitor/src/core/memory_protector/hypervisor_memory_protector.rs:46
↓ 2 callers
Function
enable_address_translation_and_protection
(hgatp: &Hgatp)
security-monitor/src/core/architecture/riscv/mmu/mod.rs:31
↓ 2 callers
Method
entry_size
returns the size of the entry in bytes
security-monitor/src/core/architecture/riscv/mmu/paging_system.rs:49
↓ 2 callers
Method
execute
(&mut self, request: &ConfidentialHartRemoteCommand)
security-monitor/src/core/control_data/confidential_hart.rs:336
↓ 2 callers
Function
fence_wo
()
security-monitor/src/core/architecture/riscv/fence.rs:6
↓ 2 callers
Method
gpr_storing_load_result
(&self)
security-monitor/src/confidential_flow/handlers/mmio/mmio_load_pending.rs:21
↓ 2 callers
Method
gprs
(&self)
security-monitor/src/core/architecture/riscv/sbi/nacl_extension.rs:93
↓ 2 callers
Method
gprs
(&self)
security-monitor/src/core/control_data/confidential_hart.rs:217
↓ 2 callers
Function
hfence_gvma
()
security-monitor/src/core/architecture/riscv/fence.rs:10
↓ 2 callers
Method
initialize_children_if_needed
(&mut self, this_node_page_size: PageSize)
security-monitor/src/core/page_allocator/allocator.rs:518
↓ 2 callers
Method
instruction_length
(&self)
security-monitor/src/confidential_flow/handlers/mmio/mmio_load_pending.rs:17
↓ 2 callers
Method
is_dummy
(&self)
security-monitor/src/core/control_data/confidential_hart.rs:245
↓ 2 callers
Method
lifecycle_state
(&self)
security-monitor/src/core/control_data/confidential_hart.rs:280
↓ 2 callers
Method
lower
(&self)
security-monitor/src/core/architecture/riscv/mmu/page_table_level.rs:24
↓ 2 callers
Method
map_page
This is a recursive function, which deepest execution is not larger than the number of paging system levels. # Confidential VM execution correctness
security-monitor/src/core/architecture/riscv/mmu/page_table.rs:194
↓ 2 callers
Method
memory
(&self)
security-monitor/rust-crates/flattened_device_tree/src/lib.rs:60
↓ 2 callers
Method
memory_page_size
(&self, level: PageTableLevel)
security-monitor/src/core/architecture/riscv/mmu/paging_system.rs:43
↓ 2 callers
Method
memory_protector
(&self)
security-monitor/src/core/control_data/confidential_vm.rs:68
↓ 2 callers
Method
opensbi_context
(&mut self, function: F)
security-monitor/src/core/control_data/hardware_hart.rs:63
↓ 2 callers
Method
process_confidential_hart_remote_commands
Processes pending requests from other confidential harts by applying the corresponding state transformation to this confidential hart. This function
security-monitor/src/confidential_flow/finite_state_machine.rs:261
↓ 2 callers
Method
property_str
(&self, name: &str)
security-monitor/rust-crates/flattened_device_tree/src/lib.rs:109
↓ 2 callers
Method
read_at_offset
Reads usize from the NACL shared memory at the given offset. # Safety Given offset must be a valid offset of an entry in the NACL shared memory.
security-monitor/src/core/architecture/riscv/sbi/nacl_extension.rs:112
↓ 2 callers
Method
read_u64
(&mut self)
security-monitor/rust-crates/riscv_cove_tap/src/parser.rs:115
↓ 2 callers
Method
restore_from_main_memory
Restores the state of the hypervisor hart from the main memory. This is part of the heavy context switch.
security-monitor/src/core/control_data/hypervisor_hart.rs:58
↓ 2 callers
Method
save_in_main_memory
Saves the state of the hypervisor hart in the main memory. This is part of the heavy context switch.
security-monitor/src/core/control_data/hypervisor_hart.rs:40
↓ 2 callers
Method
sbi_error_code
(&self)
security-monitor/src/error.rs:117
↓ 2 callers
Method
serialize
(&self)
security-monitor/src/core/architecture/riscv/mmu/page_table_entry.rs:31
↓ 2 callers
Method
set_confidential_vm_id
(&mut self, confidential_vm_id: ConfidentialVmId)
security-monitor/src/core/control_data/confidential_hart.rs:200
↓ 2 callers
Function
shutdown_confidential_hart
Shuts down the currently executing confidential hart (and the corresponding confidential VM, if possible). After cleaning up, this functions passes th
security-monitor/src/confidential_flow/handlers/shutdown/shutdown_confidential_hart.rs:15
↓ 2 callers
Method
sstc_mut
(&mut self)
security-monitor/src/core/control_data/confidential_hart.rs:237
↓ 2 callers
Method
sstc_mut
(&mut self)
security-monitor/src/core/control_data/hypervisor_hart.rs:104
↓ 2 callers
Method
start_addr
(&self)
security-monitor/src/core/heap_allocator/allocator.rs:40
↓ 2 callers
Method
store_page_token
( &mut self, this_node_base_address: usize, this_node_page_size: PageSize, page_token: Page<UnAllocate
security-monitor/src/core/page_allocator/allocator.rs:396
↓ 2 callers
Method
store_page_token_in_this_node
(&mut self, page_token: Page<UnAllocated>)
security-monitor/src/core/page_allocator/allocator.rs:542
↓ 2 callers
Method
swap
(&self, value: usize)
security-monitor/src/core/architecture/riscv/control_status_registers.rs:421
↓ 2 callers
Method
transition_to_shutdown
(&mut self)
security-monitor/src/core/control_data/confidential_hart.rs:329
↓ 2 callers
Method
try_confidential_hart_remote_commands
(&self, confidential_hart_id: usize, op: O)
security-monitor/src/core/control_data/confidential_vm.rs:208
↓ 2 callers
Method
write_at_offset
Writes usize to the NACL shared memory at the given offset. # Safety Given offset must be a valid offset of an entry in the NACL shared memory.
security-monitor/src/core/architecture/riscv/sbi/nacl_extension.rs:130
↓ 1 callers
Function
__print_pmp_configuration
()
security-monitor/src/debug.rs:27
↓ 1 callers
Method
acquire_page_token
( &mut self, this_node_base_address: usize, this_node_page_size: PageSize, page_size_to_acquire: PageS
security-monitor/src/core/page_allocator/allocator.rs:456
↓ 1 callers
Method
add_memory_region
( &mut self, memory_region_start: ConfidentialMemoryAddress, memory_region_end: *const usize, )
security-monitor/src/core/page_allocator/allocator.rs:177
↓ 1 callers
Method
add_mmio_region
(&mut self, region: ConfidentialVmMmioRegion)
security-monitor/src/core/control_data/confidential_vm.rs:138
↓ 1 callers
Function
align_up
(addr: usize, align: usize)
security-monitor/src/core/heap_allocator/allocator.rs:11
↓ 1 callers
Method
allow_external_interrupt
(&mut self, external_interrupt: usize)
security-monitor/src/core/control_data/confidential_vm.rs:131
↓ 1 callers
Method
allowed_external_interrupts
(&self)
security-monitor/src/core/control_data/confidential_vm.rs:127
↓ 1 callers
Function
attach_tap
( kernel_file: String, tap_file_name: String, output_file: Option<String>, )
tools/cove_tap_tool/src/attach.rs:12
↓ 1 callers
Method
authenticate_and_authorize_vm
Performs local attestation. It decides if the VM can be promote into a confidential VM and decrypts the attestation secret intended for this confident
security-monitor/src/non_confidential_flow/handlers/cove_host_extension/promote_to_confidential_vm.rs:199
↓ 1 callers
Method
bits
(&self)
security-monitor/src/core/architecture/riscv/mmu/hgatp.rs:43
↓ 1 callers
Method
clear_confidential_memory
Clears all confidential memory, writting to it 0s. # Safety Caller must guarantee that there is no other thread that can write to confidential memor
security-monitor/src/core/memory_layout/mod.rs:198
↓ 1 callers
Method
code
(self)
security-monitor/src/core/architecture/riscv/mmu/hgatp.rs:14
↓ 1 callers
Method
confidential_address_at_offset
( &self, address: &ConfidentialMemoryAddress, offset_in_bytes: usize, )
security-monitor/src/core/memory_layout/mod.rs:144
↓ 1 callers
Method
confidential_hart
(&self)
security-monitor/src/core/control_data/hardware_hart.rs:83
↓ 1 callers
Method
confidential_hart_lifecycle_state
Returns the lifecycle state of the confidential hart
security-monitor/src/core/control_data/confidential_vm.rs:160
↓ 1 callers
Method
confidential_hart_state
(&self)
security-monitor/src/core/control_data/confidential_hart.rs:241
↓ 1 callers
Method
confidential_memory_boundary
(&self)
security-monitor/src/core/memory_layout/mod.rs:223
↓ 1 callers
Method
confidential_vm
(&self, id: ConfidentialVmId)
security-monitor/src/core/control_data/storage.rs:47
↓ 1 callers
Method
confidential_vm_id
(&self)
security-monitor/src/core/control_data/confidential_vm.rs:64
↓ 1 callers
Method
confidential_vm_mut
(&self, id: ConfidentialVmId)
security-monitor/src/core/control_data/storage.rs:51
↓ 1 callers
Function
copy_mmu_configuration_from_non_confidential_memory
(hgatp: &Hgatp)
security-monitor/src/core/architecture/riscv/mmu/mod.rs:24
↓ 1 callers
Method
create_confidential_vm
( &self, large_page: &mut Page<Allocated>, shared_memory: &NaclSharedMemory, )
security-monitor/src/non_confidential_flow/handlers/cove_host_extension/promote_to_confidential_vm.rs:79
↓ 1 callers
Method
csr
(&self, csr_code: usize)
security-monitor/src/core/architecture/riscv/sbi/nacl_extension.rs:77
↓ 1 callers
Method
csrs
(&self)
security-monitor/src/core/architecture/riscv/hart_architectural_state.rs:47
↓ 1 callers
Method
deallocate
(self)
security-monitor/src/core/control_data/confidential_vm.rs:84
↓ 1 callers
Method
declassify_to_confidential_hart
(&self, confidential_hart: &mut ConfidentialHart)
security-monitor/src/non_confidential_flow/handlers/cove_host_extension/run_confidential_hart.rs:50
↓ 1 callers
Method
declassify_to_confidential_hart
(mut self, declassifier: DeclassifyToConfidentialVm)
security-monitor/src/confidential_flow/finite_state_machine.rs:192
↓ 1 callers
Method
declassify_to_hypervisor_hart
(mut self, declassify: DeclassifyToHypervisor)
security-monitor/src/non_confidential_flow/finite_state_machine.rs:93
↓ 1 callers
Method
declassify_to_hypervisor_hart
(&self, hypervisor_hart: &mut HypervisorHart)
security-monitor/src/confidential_flow/handlers/sbi/request.rs:21
↓ 1 callers
Method
decode
(&self, decapsulation_key: &[u8], esk: &[u8], nonce: &[u8], tag: &[u8], tsk: &mut Vec<u8>)
security-monitor/rust-crates/riscv_cove_tap/src/spec.rs:95
↓ 1 callers
Function
decode_hex
(s: &str)
tools/cove_tap_tool/src/main.rs:73
↓ 1 callers
Method
decrypt_aes_gcm_256
(&mut self, symmetric_key: &[u8])
security-monitor/rust-crates/riscv_cove_tap/src/parser.rs:85
↓ 1 callers
Method
divide
(self)
security-monitor/src/core/page_allocator/page.rs:142
↓ 1 callers
Method
divide_page_token_if_necessary
(&mut self, this_node_base_address: usize, this_node_page_size: PageSize)
security-monitor/src/core/page_allocator/allocator.rs:578
↓ 1 callers
Method
enable_hypervisor_memory_protector
(&self)
security-monitor/src/core/control_data/hypervisor_hart.rs:74
↓ 1 callers
Method
encode
(&self, encapsulation_key: &Vec<u8>, tsk: &mut Vec<u8>)
security-monitor/rust-crates/riscv_cove_tap/src/spec.rs:60
↓ 1 callers
Method
encrypt_aes_gcm_256
(&self, mut digests: Vec<u8>, mut secrets: Vec<u8>)
security-monitor/rust-crates/riscv_cove_tap/src/serializer.rs:83
↓ 1 callers
Function
fence_i
()
security-monitor/src/core/architecture/riscv/fence.rs:22
↓ 1 callers
Method
fill_tsm_info_state
(&self)
security-monitor/src/non_confidential_flow/handlers/cove_host_extension/get_security_monitor_info.rs:39
↓ 1 callers
Method
finalize
Recursively extends measurements of all data pages in the order from the page with the lowest to the highest guest physical address. Returns error if
security-monitor/src/core/architecture/riscv/mmu/page_table.rs:263
↓ 1 callers
Function
find_placehoder
(output_file_name: &str)
tools/cove_tap_tool/src/attach.rs:39
↓ 1 callers
Method
find_region
Looks for a free region with the given size and alignment and removes it from the list. Returns a tuple of the list node and the start address of the
security-monitor/src/core/heap_allocator/allocator.rs:79
↓ 1 callers
Function
fw_platform_calculate_heap_size
security-monitor/platform/generic/platform.c:65
↓ 1 callers
Function
fw_platform_lookup_special
security-monitor/platform/generic/platform.c:44
↓ 1 callers
Function
generate_tap
( pcrs: Vec<(u16, Vec<u8>)>, confidential_vm_secrets: Vec<(u64, Vec<u8>)>, tee_public_keys_files:
tools/cove_tap_tool/src/generate.rs:16
↓ 1 callers
Method
get_version
(&self)
security-monitor/src/non_confidential_flow/handlers/cove_host_extension/get_security_monitor_info.rs:60
↓ 1 callers
Method
hardware_hart_id
Returns the id of the hardware hart executing the confidential hart.
security-monitor/src/core/control_data/confidential_hart.rs:213
↓ 1 callers
Method
hgatp_mode
(&self)
security-monitor/src/core/architecture/riscv/mmu/page_table.rs:296
↓ 1 callers
Method
hypervisor_hart
(&self)
security-monitor/src/core/control_data/hardware_hart.rs:91
↓ 1 callers
Method
hypervisor_hart_state
(&self)
security-monitor/src/core/control_data/hypervisor_hart.rs:108
↓ 1 callers
Method
hypervisor_hart_state_mut
(&mut self)
security-monitor/src/core/control_data/hypervisor_hart.rs:112
↓ 1 callers
Function
init_heap
(start_address: ConfidentialMemoryAddress, heap_size: usize)
security-monitor/src/core/heap_allocator/mod.rs:13
↓ 1 callers
Function
init_security_monitor
Initializes the security monitor. # Security The input address points to the flattened device tree, which content is trusted. # Safety See `Flatte
security-monitor/src/core/initialization/mod.rs:61
↓ 1 callers
Function
init_security_monitor_asm
(cold_boot: bool, flattened_device_tree_address: *const u8)
security-monitor/src/core/initialization/mod.rs:42
↓ 1 callers
Function
initalize_security_monitor_state
This function is called only once during the initialization of the security monitor during the boot process. This function initializes secure monitor'
security-monitor/src/core/initialization/mod.rs:155
↓ 1 callers
Function
initialize_memory_layout
Reads the layout of physical memory from the flattened device tree (FDT), splitting it (logically) into confidential and non-confidential memory regio
security-monitor/src/core/initialization/mod.rs:118
↓ 1 callers
Method
initrd
(&self)
security-monitor/rust-crates/flattened_device_tree/src/lib.rs:73
↓ 1 callers
Method
insert_confidential_vm
(&mut self, confidential_vm: ConfidentialVm)
security-monitor/src/core/control_data/storage.rs:40
← previous
next →
101–200 of 620, ranked by callers