IPW_DEBUG_ERROR("%s: alloc failed form tx buffers.\n", 
printk(KERN_ERR DRV_NAME ": %s: alloc failed form tx buffers.\n", 
static int ipw2100_tx_allocate(struct ipw2100_priv *priv){	int i, j, err = -EINVAL;	void *v;	dma_addr_t p;	IPW_DEBUG_INFO("enter\n");	err = bd_queue_allocate(priv, &priv->tx_queue, TX_QUEUE_LENGTH);	if (err) {		IPW_DEBUG_ERROR("%s: failed bd_queue_allocate\n",		       priv->net_dev->name);		return err;	}	priv->tx_buffers = (struct ipw2100_tx_packet *)kmalloc(		TX_PENDED_QUEUE_LENGTH * sizeof(struct ipw2100_tx_packet),		GFP_ATOMIC);	if (!priv->tx_buffers) {		IPW_DEBUG_ERROR("%s: alloc failed form tx buffers.\n",		       priv->net_dev->name);		bd_queue_free(priv, &priv->tx_queue);		return -ENOMEM;	}	for (i = 0; i < TX_PENDED_QUEUE_LENGTH; i++) {		v = pci_alloc_consistent(			priv->pci_dev, sizeof(struct ipw2100_data_header), &p);		if (!v) {			IPW_DEBUG_ERROR("%s: PCI alloc failed for tx "			       "buffers.\n", priv->net_dev->name);			err = -ENOMEM;			break;		}		priv->tx_buffers[i].type = DATA;		priv->tx_buffers[i].info.d_struct.data = (struct ipw2100_data_header*)v;		priv->tx_buffers[i].info.d_struct.data_phys = p;		priv->tx_buffers[i].info.d_struct.txb = NULL;	}	if (i == TX_PENDED_QUEUE_LENGTH)		return 0;	for (j = 0; j < i; j++) {		pci_free_consistent(			priv->pci_dev,			sizeof(struct ipw2100_data_header),			priv->tx_buffers[j].info.d_struct.data,			priv->tx_buffers[j].info.d_struct.data_phys);	}	kfree(priv->tx_buffers);	priv->tx_buffers = NULL;	return err;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/797b4f7652a4dcf06bdf6a8c870991acdf56c03d/ipw2100.c/buggy/drivers/net/wireless/ipw2100.c