FIX: atomic_store_explicit call in random.c for some arm platform

This commit is contained in:
Troy Liu 2023-02-10 09:34:12 +08:00
parent 6a230f8329
commit 5127ff871d

View file

@ -260,7 +260,7 @@ static bool os_random_buf(void* buf, size_t buf_len) {
ssize_t ret = syscall(SYS_getrandom, buf, buf_len, GRND_NONBLOCK); ssize_t ret = syscall(SYS_getrandom, buf, buf_len, GRND_NONBLOCK);
if (ret >= 0) return (buf_len == (size_t)ret); if (ret >= 0) return (buf_len == (size_t)ret);
if (errno != ENOSYS) return false; if (errno != ENOSYS) return false;
mi_atomic_store_release(&no_getrandom, 1UL); // don't call again, and fall back to /dev/urandom mi_atomic_store_release(&no_getrandom, (uintptr_t)1); // don't call again, and fall back to /dev/urandom
} }
#endif #endif
int flags = O_RDONLY; int flags = O_RDONLY;