Messages in this thread |  | | | Date | Thu, 10 Jan 2008 00:45:48 -0500 | | From | Jeff Garzik <> | | Subject | Re: sata_nv does not function in kernel > 2.6.20.21 |
| |
Matthew Hall wrote: > On Wed, Jan 09, 2008 at 11:40:47PM -0500, Jeff Garzik wrote: >> Error -16 is EBUSY, which causes the driver load to fail due to the "Unable >> to reserve mem region" message. >> >> This means that the sata_nv driver needed to use PCI BAR 6, but was unable >> to for some reason. Given that sata_nv uses devres like other libata >> drivers, IMO the likely cause is outside the ATA subsystem (PCI? ACPI?). > > I will follow up on this with the appropriate subsystem lists ASAP. > Thanks for getting me redirected appropriately. > >> One workaround to try is setting sata_nv module option 'adma' to zero (0), >> in the hopes that it ignores that final region and work anyway. > > I am not quite sure what to do about this part... my boot device for the > system is on one of the sata_nv channels which remains functional and > does not get disabled by the resource conflict. > > How shall I best attempt the suggested workaround without having to > delete the sata_nv driver from the kernel thus rendering the kernel > unbootable on this machine? Is there some way to pass the appropriate > option at boot instead of at module load time or some file I could > modify to enable the specified option in the code?
If you build the driver into the kernel, then pass "sata_nv.adma=0" on the kernel command line.
Otherwise, look into how your distro sets module options... probably editing /etc/modprobe.conf. You may need to regenerate critical boot files such as initramfs (aka initrd) afterwards, again distro specific (try mkinitrd). Set module option "adma=0" for the sata_nv module.
Jeff
|  |