for (i = 0; i < srb->sg_count; i++) kunmap(virt_to_page(srb->virt_map[i])); 
static void pci_unmap_srb(struct AdapterCtlBlk *acb, struct ScsiReqBlk *srb){	struct scsi_cmnd *cmd = srb->cmd;	enum dma_data_direction dir = cmd->sc_data_direction;	if (cmd->use_sg && dir != PCI_DMA_NONE) {		int i;		/* unmap DC395x SG list */		dprintkdbg(DBG_SG, "pci_unmap_srb: list=%08x(%05x)\n",			srb->sg_bus_addr, SEGMENTX_LEN);		pci_unmap_single(acb->dev, srb->sg_bus_addr,				 SEGMENTX_LEN,				 PCI_DMA_TODEVICE);		dprintkdbg(DBG_SG, "pci_unmap_srb: segs=%i buffer=%p\n",			cmd->use_sg, cmd->request_buffer);		/* unmap the sg segments */		for (i = 0; i < srb->sg_count; i++)			kunmap(virt_to_page(srb->virt_map[i]));		pci_unmap_sg(acb->dev,			     (struct scatterlist *)cmd->request_buffer,			     cmd->use_sg, dir);	} else if (cmd->request_buffer && dir != PCI_DMA_NONE) {		dprintkdbg(DBG_SG, "pci_unmap_srb: buffer=%08x(%05x)\n",			srb->segment_x[0].address, cmd->request_bufflen);		pci_unmap_single(acb->dev, srb->segment_x[0].address,				 cmd->request_bufflen, dir);	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b4b08e581fac8e0ba9ae348bdc13246c9798c99e/dc395x.c/buggy/drivers/scsi/dc395x.c