mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2026-09-25 02:09:18 +08:00
alarm.c: Per comment add debug code for kill() failing
This is highly unlikely and would indicate a serious bug in the system or corruption. But it is better to be cautious.
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
* 3.4.1 Schedule Alarm, P1003.1b-1993, p. 79
|
||||
*/
|
||||
|
||||
/* COPYRIGHT (c) 1989-2007.
|
||||
/* COPYRIGHT (c) 1989-2013.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
@@ -32,14 +32,27 @@
|
||||
/*
|
||||
* _POSIX_signals_Alarm_TSR
|
||||
*/
|
||||
|
||||
static void _POSIX_signals_Alarm_TSR(
|
||||
Objects_Id id __attribute__((unused)),
|
||||
void *argument __attribute__((unused))
|
||||
)
|
||||
{
|
||||
kill( getpid(), SIGALRM );
|
||||
/* XXX can't print from an ISR, should this be fatal? */
|
||||
#if defined(RTEMS_DEBUG)
|
||||
int status;
|
||||
#define KILL_STATUS status =
|
||||
#else
|
||||
#define KILL_STATUS (void)
|
||||
#endif
|
||||
|
||||
KILL_STATUS kill( getpid(), SIGALRM );
|
||||
|
||||
#if defined(RTEMS_DEBUG)
|
||||
/*
|
||||
* There is no reason to think this might fail but we should be
|
||||
* cautious.
|
||||
*/
|
||||
assert(status == 0);
|
||||
#endif
|
||||
}
|
||||
|
||||
static Watchdog_Control _POSIX_signals_Alarm_timer = WATCHDOG_INITIALIZER(
|
||||
|
||||
Reference in New Issue
Block a user