예제 #1
0
static void 
angel_QueueTask(angel_RegBlock * regblock,
                angel_TaskPriority pri,
                bool new_task,
                bool yielded)
{
    int blockno;
    angel_TaskQueueItem *tqi;

    blockno = angel_AllocateFromPool(pri, new_task, yielded);
    if (blockno == -1) /* sorry, can't do it! */
    {
        LogFatalError(LOG_SERLOCK, ("angel_QueueTask: Cannot Queue Task!\n"));
        /*NOTREACHED*/
    }
    tqi = &angel_TQ_Pool[blockno];
    __rt_memcpy((void *)&(tqi->rb), (const void *)regblock,
                sizeof(angel_RegBlock));
}
void * mdrv_memcpy(void * dest, const void * src, unsigned long count)
{
    return __rt_memcpy(dest,src,count);
}