"Failed to make memory DMA'able\n."); 
"Failed to make memory DMA'able.\n"); 
islpci_mgmt_rx_fill(struct net_device *ndev){	islpci_private *priv = netdev_priv(ndev);	isl38xx_control_block *cb =	/* volatile not needed */	    (isl38xx_control_block *) priv->control_block;	u32 curr = le32_to_cpu(cb->driver_curr_frag[ISL38XX_CB_RX_MGMTQ]);#if VERBOSE > SHOW_ERROR_MESSAGES	DEBUG(SHOW_FUNCTION_CALLS, "islpci_mgmt_rx_fill \n");#endif	while (curr - priv->index_mgmt_rx < ISL38XX_CB_MGMT_QSIZE) {		u32 index = curr % ISL38XX_CB_MGMT_QSIZE;		struct islpci_membuf *buf = &priv->mgmt_rx[index];		isl38xx_fragment *frag = &cb->rx_data_mgmt[index];		if (buf->mem == NULL) {			buf->mem = kmalloc(MGMT_FRAME_SIZE, GFP_ATOMIC);			if (!buf->mem) {				printk(KERN_WARNING				       "Error allocating management frame.\n");				return -ENOMEM;			}			buf->size = MGMT_FRAME_SIZE;		}		if (buf->pci_addr == 0) {			buf->pci_addr = pci_map_single(priv->pdev, buf->mem,						       MGMT_FRAME_SIZE,						       PCI_DMA_FROMDEVICE);			if (!buf->pci_addr) {				printk(KERN_WARNING				       "Failed to make memory DMA'able\n.");				return -ENOMEM;			}		}		/* be safe: always reset control block information */		frag->size = cpu_to_le16(MGMT_FRAME_SIZE);		frag->flags = 0;		frag->address = cpu_to_le32(buf->pci_addr);		curr++;		/* The fragment address in the control block must have		 * been written before announcing the frame buffer to		 * device */		wmb();		cb->driver_curr_frag[ISL38XX_CB_RX_MGMTQ] = cpu_to_le32(curr);	}	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/3fa63c7d82ab9a12a5d0a299069f8df9f35aa011/islpci_mgt.c/clean/drivers/net/wireless/prism54/islpci_mgt.c