1 #include "qemu/osdep.h" 2 #include "qemu/main-loop.h" 3 4 static bool bql_is_locked = false; 5 static uint32_t bql_unlock_blocked; 6 7 bool bql_locked(void) 8 { 9 return bql_is_locked; 10 } 11 12 void rust_bql_mock_lock(void) 13 { 14 bql_is_locked = true; 15 } 16 17 void bql_lock_impl(const char *file, int line) 18 { 19 } 20 21 void bql_unlock(void) 22 { 23 assert(!bql_unlock_blocked); 24 } 25 26 void bql_block_unlock(bool increase) 27 { 28 uint32_t new_value; 29 30 assert(bql_locked()); 31 32 /* check for overflow! */ 33 new_value = bql_unlock_blocked + increase - !increase; 34 assert((new_value > bql_unlock_blocked) == increase); 35 bql_unlock_blocked = new_value; 36 } 37