I am using AIX 6.1. The program I use (and participate in the development) contains calls to the C library function gettimerid()
.
The problem I am facing is that the calls gettimerid()
started interrupting with an error, maybe once a day, returning -1 (indicating an error), and when I check errno
it was set to ENOSPC
(28d), which means " There is no free space on the device. "
According to the AIX documentation , it ENOSPC
does not appear as one of the possible return values, leaving me confused as to what this means.
As far as I know, this does not require any file system space, but I checked the unused file space and the use of inode file systems, and this seemed to be good with a lot of available, and as far as I can tell there is a lot of free memory ( although there may be some limit to this particular process, which I don’t know about if that matters), so I’m not sure what could lead to a return ENOSPC
as a result gettimerid()
.
Code example:
static timer_t TimerId;
if ( ( TimerId = gettimerid(TIMEOFDAY, 0) ) < 0 )
{
printf( "gettimerid fail [timer id=%d, errno=%d]", TimerId, errno );
}
Result:
gettimerid fail [timer id=-1, errno=28]
Does anyone know what might cause this return code from gettimerid()
on AIX?
Dan f source
share