summaryrefslogtreecommitdiff
path: root/include/ibm
diff options
context:
space:
mode:
authorPatrick Williams <patrick@stwcx.xyz>2023-05-11 01:29:00 +0300
committerPatrick Williams <patrick@stwcx.xyz>2023-05-12 19:07:15 +0300
commit26b3630b181d1093483e4d5ebe6aeeb91a6a2976 (patch)
tree67cc0619cb1085f29a81a64127b7742337dde98d /include/ibm
parentad539545b8638d934f917e4d711fa7ef48011326 (diff)
downloadbmcweb-26b3630b181d1093483e4d5ebe6aeeb91a6a2976.tar.xz
ibm-locks: shut up clang-tidy by disabling code
There is code in ibm/locks that has had clang-tidy warnings disabled for a while due to multiple safety and endianness issues. The code has not been fixed in a while and with clang-16 it is unable to be exempted further. Disable it until someone who cares can fix this in the proper way. ``` ../include/ibm/locks.hpp:522:14: error: 'p' is an unsafe pointer used for buffer access [-Werror,-Wunsafe-buffer-usage] uint8_t* p = reinterpret_cast<uint8_t*>(&resourceId1); ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../include/ibm/locks.hpp:527:25: note: used in buffer access here uint8_t pPosition = p[position]; ^ ../include/ibm/locks.hpp:524:14: error: 'q' is an unsafe pointer used for buffer access [-Werror,-Wunsafe-buffer-usage] uint8_t* q = reinterpret_cast<uint8_t*>(&resourceId2); ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../include/ibm/locks.hpp:529:25: note: used in buffer access here uint8_t qPosition = q[position]; ``` Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I8a7fcbed1099419ad1715c86ffcbfef20820251e
Diffstat (limited to 'include/ibm')
-rw-r--r--include/ibm/locks.hpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/include/ibm/locks.hpp b/include/ibm/locks.hpp
index f0e1612588..0b3165e417 100644
--- a/include/ibm/locks.hpp
+++ b/include/ibm/locks.hpp
@@ -514,9 +514,15 @@ inline bool Lock::isConflictRequest(const LockRequests& refLockRequestStructure)
// are same, then the last comparison would be to check for the respective
// bytes in the resourceid based on the segment length.
-inline bool Lock::checkByte(uint64_t resourceId1, uint64_t resourceId2,
- uint32_t position)
+inline bool Lock::checkByte(uint64_t /*resourceId1*/, uint64_t /*resourceId2*/,
+ uint32_t /*position*/)
{
+ BMCWEB_LOG_ERROR
+ << "This code is disabled due to clang-tidy issues that prevent CI "
+ "from passing.";
+ std::terminate();
+
+#if 0
// NOLINTNEXTLINE(cppcoreguidelines-pro-type-reinterpret-cast)
uint8_t* p = reinterpret_cast<uint8_t*>(&resourceId1);
// NOLINTNEXTLINE(cppcoreguidelines-pro-type-reinterpret-cast)
@@ -530,6 +536,7 @@ inline bool Lock::checkByte(uint64_t resourceId1, uint64_t resourceId2,
BMCWEB_LOG_DEBUG << "Comparing bytes " << std::to_string(pPosition) << ","
<< std::to_string(qPosition);
return pPosition == qPosition;
+#endif
}
inline bool Lock::isConflictRecord(const LockRequest& refLockRecord1,