public inbox for libc-help@sourceware.org
 help / color / mirror / Atom feed
* question about prctl return value type
@ 2019-07-24 10:01 Yang Xu
  2019-07-24 10:48 ` Florian Weimer
  0 siblings, 1 reply; 3+ messages in thread
From: Yang Xu @ 2019-07-24 10:01 UTC (permalink / raw)
  To: libc-help

Hi All

Since kernel syscall use long value for return, why we set int in sys/prctl.h(glibc). as below:

/include/sys/prctl.h

   1 #ifndef _SYS_PRCTL_H
   2 #include_next <sys/prctl.h>
   3 
   4 # ifndef _ISOMAC
   5 
   6 extern int __prctl (int __option, ...);
   7 
   8 # endif /* !_ISOMAC */
   9 #endif

If we calling prctl(PR_SET_TIMERSLACK, ULONG_MAX) and then calling prctl(PR_GET_TIMERSLACK), the value
will be truncated into INT_MAX(or convered into unsinged,it is UINT_MAX) on 64bit machine. Or, this is a 
glibc limitation for prctl interfaces?

ps:After kernel commit da8b44d5a9f ("timer: convert timer_slack_ns from unsigned long to u64"),
we limit under ULONG_MAX when calling PR_GET_TIMERSLACK. I think we can use long instead of int in sys/prctl.h.

Thanks
Yang Xu 



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-07-25  7:53 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-24 10:01 question about prctl return value type Yang Xu
2019-07-24 10:48 ` Florian Weimer
2019-07-25  7:53   ` Yang Xu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).