From 245886c55500b9e70ba71eab68c46d44af9f6836 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Thu, 2 Mar 2023 15:33:49 +0100 Subject: [PATCH] add lock context for pool manager --- src/fsfw/storagemanager/PoolManager.cpp | 6 +++--- src/fsfw/storagemanager/PoolManager.h | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/fsfw/storagemanager/PoolManager.cpp b/src/fsfw/storagemanager/PoolManager.cpp index 840a7dcc..c724aa25 100644 --- a/src/fsfw/storagemanager/PoolManager.cpp +++ b/src/fsfw/storagemanager/PoolManager.cpp @@ -10,7 +10,7 @@ PoolManager::PoolManager(object_id_t setObjectId, const LocalPoolConfig& localPo PoolManager::~PoolManager() { MutexFactory::instance()->deleteMutex(mutex); } ReturnValue_t PoolManager::reserveSpace(const size_t size, store_address_t* address) { - MutexGuard mutexHelper(mutex, MutexIF::TimeoutType::WAITING, mutexTimeoutMs); + MutexGuard mutexHelper(mutex, MutexIF::TimeoutType::WAITING, mutexTimeoutMs, LOCK_CTX); ReturnValue_t status = LocalPool::reserveSpace(size, address); return status; } @@ -22,12 +22,12 @@ ReturnValue_t PoolManager::deleteData(store_address_t storeId) { << storeId.poolIndex << ". id is " << storeId.packetIndex << std::endl; #endif #endif - MutexGuard mutexHelper(mutex, MutexIF::TimeoutType::WAITING, mutexTimeoutMs); + MutexGuard mutexHelper(mutex, MutexIF::TimeoutType::WAITING, mutexTimeoutMs, LOCK_CTX); return LocalPool::deleteData(storeId); } ReturnValue_t PoolManager::deleteData(uint8_t* buffer, size_t size, store_address_t* storeId) { - MutexGuard mutexHelper(mutex, MutexIF::TimeoutType::WAITING, 20); + MutexGuard mutexHelper(mutex, MutexIF::TimeoutType::WAITING, mutexTimeoutMs, LOCK_CTX); ReturnValue_t status = LocalPool::deleteData(buffer, size, storeId); return status; } diff --git a/src/fsfw/storagemanager/PoolManager.h b/src/fsfw/storagemanager/PoolManager.h index aa8c93dd..d4bb9f0d 100644 --- a/src/fsfw/storagemanager/PoolManager.h +++ b/src/fsfw/storagemanager/PoolManager.h @@ -56,6 +56,7 @@ class PoolManager : public LocalPool { protected: //! Default mutex timeout value to prevent permanent blocking. uint32_t mutexTimeoutMs = 20; + static constexpr char LOCK_CTX[] = "PoolManager"; ReturnValue_t reserveSpace(size_t size, store_address_t* address) override;