class MsdArmConnection
Defined at line 41 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
This can only be accessed on the connection thread.
Public Methods
bool ExecuteAtom (size_t * remaining_data_size, magma_arm_mali_atom * atom, std::vector<std::shared_ptr<magma::PlatformSemaphore>> & semaphores, std::deque<std::shared_ptr<magma::PlatformSemaphore>> * deprecated_semaphores)
Defined at line 65 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
msd::msd_client_id_t client_id ()
Defined at line 68 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
AddressSpace * address_space_for_testing ()
Defined at line 72 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
const AddressSpace * const_address_space ()
Defined at line 75 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
void set_address_space_lost ()
Called only on device thread.
Defined at line 104 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
bool address_space_lost ()
Defined at line 105 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
AddressSpaceObserver * GetAddressSpaceObserver ()
Defined at line 107 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
std::shared_ptr<AddressSpace::Owner> GetSharedPtr ()
Defined at line 110 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
void IncrementContextCount ()
Defined at line 121 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
void DecrementContextCount ()
Defined at line 122 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
uint64_t context_count ()
Defined at line 123 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
std::thread::id GetDeviceThreadId ()
Defined at line 138 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.h
std::shared_ptr<MsdArmConnection> Create (msd::msd_client_id_t client_id, Owner * owner)
Defined at line 316 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
void ~MsdArmConnection ()
Defined at line 346 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
void InitializeInspectNode (inspect::Node * parent)
Defined at line 324 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
bool RemoveMapping (uint64_t gpu_va)
GpuMapping::Owner implementation.
Defined at line 441 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
bool UpdateCommittedMemory (GpuMapping * mapping)
CommitMemoryForBuffer or PageInAddress will hold address_lock_ before calling this, but that's
impossible to specify for the thread safety analysis.
Defined at line 464 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
bool AddMapping (std::unique_ptr<GpuMapping> mapping)
Defined at line 393 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
void SetNotificationCallback (msd::NotificationHandler * handler)
Defined at line 955 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
void SendNotificationData (MsdArmAtom * atom)
Defined at line 966 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
void MarkDestroyed ()
Defined at line 1018 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
size_t PeriodicMemoryPressureCallback ()
Returns the number of bytes freed due to the change.
Defined at line 1047 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
std::optional<ArmMaliResultCode> AllocateJitMemory (const std::shared_ptr<MsdArmSoftAtom> & atom)
Tries to allocate JIT memory for an atom. Returns a status if allocation
finished (successfully or not) or no status if the allocation needs to be
retried after a free is completed.
Defined at line 851 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
void ReleaseJitMemory (const std::shared_ptr<MsdArmSoftAtom> & atom)
Process a JIT memory free operation. Doesn't modify the result code of the atom.
Defined at line 906 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
bool PageInMemory (uint64_t address)
Defined at line 559 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
bool SetCommittedPagesForBuffer (MsdArmBuffer * buffer, uint64_t page_offset, uint64_t page_count)
Defined at line 943 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
bool CommitMemoryForBuffer (MsdArmBuffer * buffer, uint64_t page_offset, uint64_t page_count)
Defined at line 937 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
bool DecommitMemoryForBuffer (MsdArmBuffer * buffer, uint64_t page_offset, uint64_t page_count)
Defined at line 949 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
bool GetVirtualAddressFromPhysical (uint64_t address, uint64_t * virtual_address_out)
This is slow because it iterates over all pages for all mappings. It should be used only
rarely.
Defined at line 1059 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
void SendPerfCounterNotification (const msd::PerfCounterResult & results)
Defined at line 1052 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
magma_status_t EnablePerformanceCounters (std::vector<uint64_t> flags)
Defined at line 1090 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
magma_status_t DumpPerformanceCounters (std::shared_ptr<MsdArmPerfCountPool> pool, uint32_t trigger_id)
Defined at line 1120 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
magma_status_t ReleasePerformanceCounterBufferPool (std::shared_ptr<MsdArmPerfCountPool> pool)
Defined at line 1131 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
magma_status_t AddPerformanceCounterBufferOffsetToPool (std::shared_ptr<MsdArmPerfCountPool> pool, std::shared_ptr<MsdArmBuffer> buffer, uint64_t buffer_id, uint64_t buffer_offset, uint64_t buffer_size)
Defined at line 1144 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
magma_status_t RemovePerformanceCounterBufferFromPool (std::shared_ptr<MsdArmPerfCountPool> pool, std::shared_ptr<MsdArmBuffer> buffer)
Defined at line 1154 of file ../../src/graphics/drivers/msd-arm-mali/src/msd_arm_connection.cc
Records
Friends
class TestConnection