https://bugs.kde.org/show_bug.cgi?id=410757

--- Comment #2 from Stefan Maksimovic <stefan.maksimo...@rt-rk.com> ---
Created attachment 122172
  --> https://bugs.kde.org/attachment.cgi?id=122172&action=edit
preadv2/pwritev2 check

Thanks for the suggestion Mark,

Initially we tried using the approach you described but that did not suffice
for the machine we encountered this problem on.
It seems that __NR_preadv2 and __NR_prwitev2 can be defined in unistd.h despite
the kernel not supporting those system calls.
This suggests that the defines in unistd.h are maintained by the current glibc
installation I presume?
Searching for __NR_preadv2 and __NR_prwitev2 in unistd.h on a machine with an
older glibc version gave no results.

Instead of just checking for__NR_preadv2/__NR_prwitev2  presence like the
membarrier test did, we opted to write a test
which would issue a syscall and subsequently check if the error code was set to
ENOSYS.

This works fine in our case but it required to use an AC_RUN_IFELSE directive
which will pose a problem in case of cross compilation as the test program will
most likely not run at configure time.

With this drawback in mind, would this solution be acceptable?
If not, is there an another way to check for syscall support in the kernel
without the need to actually run the test program at configure time?

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to