On Saturday 09 January 2010 04:46:55 am Émeric Maschino wrote: > > 2010/1/9 Bjorn Helgaas <bjorn.helgaas@xxxxxx>: > > Then for some reason we must be calling hp_zx1_setup() again, and this > > time it failed because the cookie is gone. This could happen if > > agp_add_bridge() failed, but I don't see a way it could fail after > > printing the "AGP aperture is 512M" message. > > > > Can you try the attached patch, please? > > Please find below the dmesg output with the patches attached in your > previous message. I don't have the impression that hp_zx1_setup() is > called twice: > [ 12.778181] Linux agpgart interface v0.103 > [ 12.786149] agp_hp_init > [ 12.885078] agpgart: HP ZX1 IOC: IOPDIR shared with sba_iommu > [ 12.885115] GART at 0xe000004080ec0000 > [ 12.885147] read cookie at 0xe000004080ec0000: 0xbadbadc0ffee > [ 12.885187] hp_zx1_create_gatt_table > [ 12.885833] (null): AGP aperture is 512M @ 0x60000000 > [ 12.885866] agp_add_bridge: returning 0 (success) > [ 12.885899] hp_zx1_setup: agp_add_bridge returned 0 Here's what I don't understand. My code looks like this: error = hp_zx1_setup(sba_hpa + HP_ZX1_IOC_OFFSET, lba_hpa); printk("%s: hp_zx1_setup returned %d\n", __func__, error); if (error) return AE_OK; printk(KERN_INFO PFX "Detected HP ZX1 %s AGP chipset " "(ioc=%llx, lba=%llx)\n", (char *)context, sba_hpa + HP_ZX1_IOC_OFFSET, lba_hpa); If hp_zx1_setup returned 0, we should see the "Detected HP ZX1 HWP0003 AGP chipset" message next, but we don't: > [ 12.885932] zx1_gart_probe: hp_zx1_setup returned 0 > [ 12.885966] agpgart: HP ZX1 IOC: IOPDIR shared with sba_iommu > [ 12.886001] GART at 0xe000004080ec0000 > [ 12.886032] read cookie at 0xe000004080ec0000: 0x0 > [ 12.886065] agpgart: No reserved IO PDIR entry found; GART disabled > [ 12.886099] hp_zx1_cleanup Is your code different? Can you instrument this area and figure out what's going on? From the output, it seems like we're taking the "return AE_OK" path, but we shouldn't be. Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-ia64" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
![]() |