Beispiel #1
0
/*
 * isns_thread_create()
 */
int
isns_thread_create(struct isns_config_s *cfg_p)
{
	char namebuf[ISNS_THREAD_MAX_NAMELEN];
	int error;
	pthread_attr_t attr;

	DBG("isns_thread_create: entered\n");

	strcpy(namebuf, "isns_control");
	error = pthread_attr_init(&attr);
	if (error != 0) {
		DBG("isns_thread_create: error on pthread_threadattr_init\n");
		return error;
	}

	error = pthread_attr_setname_np(&attr, namebuf, NULL);
	if (error != 0) {
		DBG("isns_thread_create: "
		    "error on pthread_threadattr_setname\n");
		pthread_attr_destroy(&attr);
		return error;
	}

	error = pthread_create(cfg_p->control_thread_p,
	    &attr, isns_control_thread, cfg_p);
	pthread_attr_destroy(&attr);

	if (error != 0) {
		DBG("isns_thread_create: error on pthread_thread_create\n");
		return error;
    	}

	return error;
}
Beispiel #2
0
int __xeno_user_init (void)
{
    int rc;
    pthread_attr_t attr;
    

    pthread_attr_init(&attr);
    pthread_attr_setname_np(&attr, "root");
    
    rc=pthread_create(&root_thread_tcb, &attr, root_thread, NULL);

    pthread_attr_destroy(&attr);

    return rc;
}