View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000095 | 1003.1(2008)/Issue 7 | System Interfaces | public | 2009-06-29 20:07 | 2009-07-01 18:04 |
| Reporter | msbrown | Assigned To | ajosey | ||
| Priority | normal | Severity | Comment | Type | Omission |
| Status | Closed | Resolution | Rejected | ||
| Name | Michael Kerrisk | ||||
| Organization | Linux Foundation | ||||
| User Reference | |||||
| Section | timer_getoverrun() | ||||
| Page Number | 2114 | ||||
| Line Number | 66945 | ||||
| Interp Status | |||||
| Final Accepted Text | |||||
| Summary | 0000095: timer_getoverrun() and notification | ||||
| Description | _____________________________________________________________________________ COMMENT Enhancement Request Number 25 mtk.lists:xxxxxxxxx Defect in XSH timer_getoverrun() (rdvk# 2) {timer_getoverrun} Wed, 11 Feb 2009 00:32:04 GMT _____________________________________________________________________________ The discussion of timer overruns in lines 66945 to 66956 is phrased entirely in terms of timer notification via signals (SIGEV_SIGNAL). However, a timer overrun can also occur for for notification via a thread (SIGEV_THREAD), since there may be a delay between the timer expiration and the invocation of the corresponding thread, and in that time, further expirations may occur. Linux, at least, supports timer_getoverrun() in the context of timer notification via a thread, and perhaps other systems also do. I suspect the standard should say something about this, an that it may be an accident of history that it doesn't. | ||||
| Desired Action | After line 66956, add text something like the following: An implementation may also support the use of timer_gettoverrun() for retrieving the overrun count when timer expirations are notified via invocation of a thread (SIGEV_THREAD). In this case, the overrun count reflects the number of extra timer expirations that have occurred between the first timer expiration and the time that the notification thread was invoked. | ||||
| Tags | No tags attached. | ||||
|
|
This aardvark request was rejected since time_getoverrun() is only defined if the expiration causes signals to be generated. timer_setoverrun() reports the number of signals not generated because of overruns. When threads are used instead of signals, a thread will be created for each event, independent of whether prior threads handling these events have started or completed. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2009-06-29 20:07 | msbrown | New Issue | |
| 2009-06-29 20:07 | msbrown | Status | New => Under Review |
| 2009-06-29 20:07 | msbrown | Assigned To | => ajosey |
| 2009-06-29 20:07 | msbrown | Name | => Mark Brown |
| 2009-06-29 20:07 | msbrown | Organization | => IBM |
| 2009-06-29 20:07 | msbrown | Section | => timer_getoverrun() |
| 2009-06-29 20:07 | msbrown | Page Number | => 2114 |
| 2009-06-29 20:07 | msbrown | Line Number | => 66945 |
| 2009-06-29 20:07 | msbrown | Note Added: 0000136 | |
| 2009-06-29 20:07 | msbrown | Status | Under Review => Closed |
| 2009-06-29 20:07 | msbrown | Resolution | Open => Rejected |
| 2009-07-01 18:04 | Don Cragun | Name | Mark Brown => Michael Kerrisk |
| 2009-07-01 18:04 | Don Cragun | Organization | IBM => Linux Foundation |