I just got a new dual Xeon system with 4 GB of RAM and SATA drives.
It boots fine with Debian's 2.6.15 kernel, but I just tried building a
kernel from an up-to-date Linus tree, and I get the following on boot:
scsi0 : ata_piix
ATA: abnormal status 0x7F on port 0x405F
scsi1 : ata_piix
Vendor: ATA Model: Maxtor 6L080M0 Rev: BACE
Type: Direct-Access ANSI SCSI revision: 05
SCSI device sda: 156301488 512-byte hdwr sectors (80026 MB)
sda: Write Protect is off
SCSI device sda: drive cache: write through
SCSI device sda: 156301488 512-byte hdwr sectors (80026 MB)
sda: Write Protect is off
SCSI device sda: drive cache: write through
sda:<3>nommu_map_sg: overflow 11b8a9000+4096 of device mask ffffffff
nommu_map_sg: overflow 11b8a9000+4096 of device mask ffffffff
nommu_map_sg: overflow 11b8a9000+4096 of device mask ffffffff
nommu_map_sg: overflow 11b8a9000+4096 of device mask ffffffff
nommu_map_sg: overflow 11b8a9000+4096 of device mask ffffffff
nommu_map_sg: overflow 11b8a9000+4096 of device mask ffffffff
sd 0:0:0:0: SCSI error: return code = 0x70000
and then of course it panics because it can't find the root partition.
Some RAM is being remapped above 4 GB:
BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 00000000dfff3000 (usable)
BIOS-e820: 00000000dfff3000 - 00000000dfffb000 (ACPI data)
BIOS-e820: 00000000dfffb000 - 00000000e0000000 (reserved)
BIOS-e820: 00000000fec00000 - 00000000fed00000 (reserved)
BIOS-e820: 00000000fee00000 - 00000000fee10000 (reserved)
BIOS-e820: 00000000ffc00000 - 0000000100000000 (reserved)
BIOS-e820: 0000000100000000 - 000000011bfff000 (usable)
Any suggestions? I can provide more debugging info if required.
Thanks,
Roland
> nommu_map_sg: overflow 11b8a9000+4096 of device mask ffffffff
Never mind, I'm (sort of) an idiot. The kernel that complained like
that had CONFIG_GART_IOMMU=n -- I foolishly thought, "I have a Xeon,
which can't do GART IOMMU, so I don't need that option." I didn't
realize that it also enables swiotlb. Once I read the help text I was
OK.
- R.
On Mon, Mar 20, 2006 at 07:16:37PM -0800, Roland Dreier wrote:
> > nommu_map_sg: overflow 11b8a9000+4096 of device mask ffffffff
>
> Never mind, I'm (sort of) an idiot. The kernel that complained like
> that had CONFIG_GART_IOMMU=n -- I foolishly thought, "I have a Xeon,
> which can't do GART IOMMU, so I don't need that option." I didn't
> realize that it also enables swiotlb. Once I read the help text I was
> OK.
In theory it should be possible to turn just swiotlb on, but at the
moment it requires gart due to the way pci-dma is structured. If
someone is looking for a little side project, this could be a good
one.
Cheers,
Muli
--
Muli Ben-Yehuda
http://www.mulix.org | http://mulix.livejournal.com/