mirror of
git://sourceware.org/git/glibc.git
synced 2025-03-06 20:58:33 +01:00
Linux: Check for 0 return value from vDSO getrandom probe
As of Linux 6.13, there is no code in the vDSO that declines this
initialization request with the special ~0UL state size. If the vDSO
has the function, the call succeeds and returns 0. It's expected
that the code would follow the “a negative value indicating an error”
convention, as indicated in the __cvdso_getrandom_data function
comment, so that INTERNAL_SYSCALL_ERROR_P on glibc's side would return
true. This commit changes the commit to check for zero to indicate
success instead, which covers potential future non-zero success
return values and error returns.
Fixes commit 4f5704ea34
("powerpc: Use
correct procedure call standard for getrandom vDSO call (bug 32440)").
This commit is contained in:
parent
6f5e1e4e98
commit
b933e5cef6
1 changed files with 1 additions and 1 deletions
|
@ -246,7 +246,7 @@ __getrandom_early_init (_Bool initial)
|
|||
} params;
|
||||
long int ret = INTERNAL_VSYSCALL_CALL (GLRO(dl_vdso_getrandom),
|
||||
5, NULL, 0, 0, ¶ms, ~0UL);
|
||||
if (! INTERNAL_SYSCALL_ERROR_P (ret))
|
||||
if (ret == 0)
|
||||
{
|
||||
/* Align each opaque state to L1 data cache size to avoid false
|
||||
sharing. If the size can not be obtained, use the kernel
|
||||
|
|
Loading…
Add table
Reference in a new issue