 q = blk_init_queue(do_ide_request, &ide_lock); 
 q = blk_init_queue_node(do_ide_request, &ide_lock, pcibus_to_node(drive->hwif->pci_dev->bus)); 
static int ide_init_queue(ide_drive_t *drive){	request_queue_t *q;	ide_hwif_t *hwif = HWIF(drive);	int max_sectors = 256;	int max_sg_entries = PRD_ENTRIES;	/*	 *	Our default set up assumes the normal IDE case,	 *	that is 64K segmenting, standard PRD setup	 *	and LBA28. Some drivers then impose their own	 *	limits and LBA48 we could raise it but as yet	 *	do not.	 */	 	q = blk_init_queue(do_ide_request, &ide_lock);	if (!q)		return 1;	q->queuedata = drive;	blk_queue_segment_boundary(q, 0xffff);	if (!hwif->rqsize) {		if (hwif->no_lba48 || hwif->no_lba48_dma)			hwif->rqsize = 256;		else			hwif->rqsize = 65536;	}	if (hwif->rqsize < max_sectors)		max_sectors = hwif->rqsize;	blk_queue_max_sectors(q, max_sectors);#ifdef CONFIG_PCI	/* When we have an IOMMU, we may have a problem where pci_map_sg()	 * creates segments that don't completely match our boundary	 * requirements and thus need to be broken up again. Because it	 * doesn't align properly either, we may actually have to break up	 * to more segments than what was we got in the first place, a max	 * worst case is twice as many.	 * This will be fixed once we teach pci_map_sg() about our boundary	 * requirements, hopefully soon. *FIXME*	 */	if (!PCI_DMA_BUS_IS_PHYS)		max_sg_entries >>= 1;#endif /* CONFIG_PCI */	blk_queue_max_hw_segments(q, max_sg_entries);	blk_queue_max_phys_segments(q, max_sg_entries);	/* assign drive queue */	drive->queue = q;	/* needs drive->queue to be set */	ide_toggle_bounce(drive, 1);	/* enable led activity for disk drives only */	if (drive->media == ide_disk && hwif->led_act)		blk_queue_activity_fn(q, hwif->led_act, drive);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/1946089a109251655c5438d92c539bd2930e71ea/ide-probe.c/buggy/drivers/ide/ide-probe.c