spin_lock_init(&card->lock); 
qeth_setup_card(struct qeth_card *card){	QETH_DBF_TEXT(setup, 2, "setupcrd");	QETH_DBF_HEX(setup, 2, &card, sizeof(void *));	card->read.state  = CH_STATE_DOWN;	card->write.state = CH_STATE_DOWN;	card->data.state  = CH_STATE_DOWN;	card->state = CARD_STATE_DOWN;	card->lan_online = 0;	card->use_hard_stop = 0;	card->dev = NULL;#ifdef CONFIG_QETH_VLAN	spin_lock_init(&card->vlanlock);	card->vlangrp = NULL;#endif	spin_lock_init(&card->ip_lock);	spin_lock_init(&card->thread_mask_lock);	card->thread_start_mask = 0;	card->thread_allowed_mask = 0;	card->thread_running_mask = 0;	INIT_WORK(&card->kernel_thread_starter,		  (void *)qeth_start_kernel_thread,card);	INIT_LIST_HEAD(&card->ip_list);	card->ip_tbd_list = kmalloc(sizeof(struct list_head), GFP_KERNEL);	if (!card->ip_tbd_list) {		QETH_DBF_TEXT(setup, 0, "iptbdnom");		return -ENOMEM;	}	INIT_LIST_HEAD(card->ip_tbd_list);	INIT_LIST_HEAD(&card->cmd_waiter_list);	init_waitqueue_head(&card->wait_q);	/* intial options */	qeth_set_intial_options(card);	/* IP address takeover */	INIT_LIST_HEAD(&card->ipato.entries);	card->ipato.enabled = 0;	card->ipato.invert4 = 0;	card->ipato.invert6 = 0;	/* init QDIO stuff */	qeth_init_qdio_info(card);	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/9123e0d78990246304fe681167b8d8097f1e02d7/qeth_main.c/buggy/drivers/s390/net/qeth_main.c