mirror of git://sourceware.org/git/glibc.git
powerpc: Fix handling of scv return error codes [BZ #27892]
When using scv for templated ASM syscalls, current code interprets any
negative return value as error, but the only valid error codes are in
the range -4095..-1 according to the ABI.
This commit also fixes 'signal.gen.test' strace test, where the issue
was first identified.
Reviewed-by: Matheus Castanho <msc@linux.ibm.com>
(cherry picked from commit 7de36744ee
)
This commit is contained in:
parent
3f5080aedd
commit
0ef0e6de7f
1
NEWS
1
NEWS
|
@ -25,6 +25,7 @@ The following bugs are resolved with this release:
|
|||
[27651] Performance regression after updating to 2.33
|
||||
[27706] select fails to update timeout on error
|
||||
[27744] Support different libpthread/ld.so load orders for gdb -p
|
||||
[27892] powerpc: scv ABI error handling fails to check IS_ERR_VALUE
|
||||
|
||||
Version 2.33
|
||||
|
||||
|
|
|
@ -398,8 +398,9 @@ LT_LABELSUFFIX(name,_name_end): ; \
|
|||
#endif
|
||||
|
||||
#define RET_SCV \
|
||||
cmpdi r3,0; \
|
||||
bgelr+; \
|
||||
li r9,-4095; \
|
||||
cmpld r3,r9; \
|
||||
bltlr+; \
|
||||
neg r3,r3;
|
||||
|
||||
#define RET_SC \
|
||||
|
|
Loading…
Reference in New Issue