Details

[Home]

Issue of the Standard # S0544

Brief

After compiling with lsbcc on IA64 or s390x architecture code with timer_create() call, timer_getoverrun(), timer_delete(), timer_settime(), timer_gettime() functions crashe

Detailed Description

According to POSIX, "if the call succeeds, timer_create() shall return zero and update the location referenced by timerid to a timer_t, which can be passed to the per-process timer calls".

But in the following code all timer related functions crash after successful call to timer_create().

#include 
#include 


int main (void)
{
        timer_t tm;
        printf("timer_create() result: %d\n", timer_create(CLOCK_REALTIME, NULL, &tm));
        printf("%d\n", timer_delete(tm)); // Any timer related function here

    return 0;
}

This crash occures only if the code is compiled with lsbcc from LSB 3.1 SDK on IA64 and s390x architectures. If it is compiled with gcc then everything is ok.

Problem location(s) in the standard

Linux Standard Base Core Specification 3.1, Chapter 13. Base Libraries, 13.5. Interface Definitions for libc, description of timer_create(), timer_getoverrun(), timer_delete(), timer_settime(), timer_gettime() functions.

Status

Fixed in LSB 3.2

[Home]