This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug nptl/17504] New: mq_timedreceive and mq_timedsend do not use a monotonic clock


https://sourceware.org/bugzilla/show_bug.cgi?id=17504

            Bug ID: 17504
           Summary: mq_timedreceive and mq_timedsend do not use a
                    monotonic clock
           Product: glibc
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: nptl
          Assignee: unassigned at sourceware dot org
          Reporter: Dean_Jenkins at mentor dot com
                CC: drepper.fsp at gmail dot com

In an embedded ARM project the system clock aka CLOCK_REALTIME starts at the
1970 EPOCH when the system is booted. mq_timedreceive() and mq_timedsend()
appear to use the CLOCK_REALTIME which I think is a POSIX requirement.

Unfortunately, in our project there is no RTC chip and the system clock is
updated by a GPS based timebase to the present time and date on each boot-up.
This can cause mq_timedreceive() and mq_timedsend() to misbehave because the
timespec used is for an absolute time which is still in 1970.

I see many discussions on the Internet about this clock limitation and
operating systems such as QNX have resolved the issue by implementing monotonic
variants of mq_timedreceive() and mq_timedsend(). Would something similar be
possible for Linux glibc ?

Are there any workarounds to this clock limitation because my Internet searches
have not found any ?

Thanks.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]