%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/lib/perl5/site_perl/mach/5.32/sys/
Upload File :
Create Path :
Current File : //usr/local/lib/perl5/site_perl/mach/5.32/sys/taskqueue.ph

require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&_SYS_TASKQUEUE_H_)) {
    eval 'sub _SYS_TASKQUEUE_H_ () {1;}' unless defined(&_SYS_TASKQUEUE_H_);
    unless(defined(&_KERNEL)) {
	die("no user-serviceable parts inside");
    }
    require 'sys/queue.ph';
    require 'sys/_task.ph';
    require 'sys/_callout.ph';
    require 'sys/_cpuset.ph';
    eval("sub TASKQUEUE_CALLBACK_TYPE_INIT () { 0; }") unless defined(&TASKQUEUE_CALLBACK_TYPE_INIT);
    eval("sub TASKQUEUE_CALLBACK_TYPE_SHUTDOWN () { 1; }") unless defined(&TASKQUEUE_CALLBACK_TYPE_SHUTDOWN);
    eval 'sub TASKQUEUE_CALLBACK_TYPE_MIN () { &TASKQUEUE_CALLBACK_TYPE_INIT;}' unless defined(&TASKQUEUE_CALLBACK_TYPE_MIN);
    eval 'sub TASKQUEUE_CALLBACK_TYPE_MAX () { &TASKQUEUE_CALLBACK_TYPE_SHUTDOWN;}' unless defined(&TASKQUEUE_CALLBACK_TYPE_MAX);
    eval 'sub TASKQUEUE_NUM_CALLBACKS () { &TASKQUEUE_CALLBACK_TYPE_MAX + 1;}' unless defined(&TASKQUEUE_NUM_CALLBACKS);
    eval 'sub TASKQUEUE_NAMELEN () {32;}' unless defined(&TASKQUEUE_NAMELEN);
    eval 'sub TASK_INITIALIZER {
        my($priority, $func, $context) = @_;
	    eval q({ . &ta_priority = ($priority), . &ta_func = ($func), . &ta_context = ($context) });
    }' unless defined(&TASK_INITIALIZER);
    eval 'sub TASK_INIT_FLAGS {
        my($task, $priority, $func, $context, $flags) = @_;
	    eval q( &do { ($task)-> &ta_pending = 0; ($task)-> &ta_priority = ($priority); ($task)-> &ta_flags = ($flags); ($task)-> &ta_func = ($func); ($task)-> &ta_context = ($context); }  &while (0));
    }' unless defined(&TASK_INIT_FLAGS);
    eval 'sub TASK_INIT {
        my($t, $p, $f, $c) = @_;
	    eval q( &TASK_INIT_FLAGS($t, $p, $f, $c, 0));
    }' unless defined(&TASK_INIT);
    eval 'sub TIMEOUT_TASK_INIT {
        my($queue, $timeout_task, $priority, $func, $context) = @_;
	    eval q( &do {  &_Static_assert(($priority) >= 0 && ($priority) <= 255, \\"struct task priority is 8 bit in size\\");  &_timeout_task_init($queue, $timeout_task, $priority, $func, $context); }  &while (0));
    }' unless defined(&TIMEOUT_TASK_INIT);
    eval 'sub TASKQUEUE_DECLARE {
        my($name) = @_;
	    eval q( &extern \'struct taskqueue\' * &taskqueue_$name);
    }' unless defined(&TASKQUEUE_DECLARE);
    eval 'sub TASKQUEUE_DEFINE {
        my($name, $enqueue, $context, $init) = @_;
	    eval q(\'struct taskqueue\' * &taskqueue_$name;  &static  &void  &taskqueue_define_$name( &void * &arg) {  &taskqueue_$name =  &taskqueue_create($name,  &M_WAITOK, ($enqueue), ($context)); $init; }  &SYSINIT( &taskqueue_$name,  &SI_SUB_TASKQ,  &SI_ORDER_SECOND,  &taskqueue_define_$name,  &NULL); \'struct __hack\');
    }' unless defined(&TASKQUEUE_DEFINE);
    eval 'sub TASKQUEUE_DEFINE_THREAD {
        my($name) = @_;
	    eval q( &TASKQUEUE_DEFINE($name,  &taskqueue_thread_enqueue,  &taskqueue_$name,  &taskqueue_start_threads( &taskqueue_$name, 1,  &PWAIT, \\"%s taskq\\", $name)));
    }' unless defined(&TASKQUEUE_DEFINE_THREAD);
    eval 'sub TASKQUEUE_FAST_DEFINE {
        my($name, $enqueue, $context, $init) = @_;
	    eval q(\'struct taskqueue\' * &taskqueue_$name;  &static  &void  &taskqueue_define_$name( &void * &arg) {  &taskqueue_$name =  &taskqueue_create_fast($name,  &M_WAITOK, ($enqueue), ($context)); $init; }  &SYSINIT( &taskqueue_$name,  &SI_SUB_TASKQ,  &SI_ORDER_SECOND,  &taskqueue_define_$name,  &NULL); \'struct __hack\');
    }' unless defined(&TASKQUEUE_FAST_DEFINE);
    eval 'sub TASKQUEUE_FAST_DEFINE_THREAD {
        my($name) = @_;
	    eval q( &TASKQUEUE_FAST_DEFINE($name,  &taskqueue_thread_enqueue,  &taskqueue_$name,  &taskqueue_start_threads( &taskqueue_$name 1,  &PWAIT, \\"%s taskq\\", $name)));
    }' unless defined(&TASKQUEUE_FAST_DEFINE_THREAD);
}
1;

Zerion Mini Shell 1.0