I discovered a strange error on my machine. 32-bit PAE 4.2.0 without
IOMMU code (yeah, I know).
When writing to an ext4 filesystem on a USB disk my kernel would hang
and not return control to userspace. It would spew kernel messages to
syslog as fast as it could without giving userspace any time, ie "hang"
as far as a user sees it. The device itself is ok and the filesystem is
clean.
I get messages like this, millions of them.
Oct 2 14:33:06 voodoochild kernel: [ 223.287447] nommu_map_sg:
overflow 25dcac000+1024 of device mask ffffffff
Oct 2 14:33:06 voodoochild kernel: [ 223.287448] nommu_map_sg:
overflow 25dcac000+1024 of device mask ffffffff
Oct 2 14:33:06 voodoochild kernel: [ 223.287449] nommu_map_sg:
overflow 25dcac000+1024 of device mask ffffffff
I disovered that SWIOTLB was not on. It is only provided for 64-bit
machines where it is default. On 32-bit SWIOTLB seems disabled unless
you are running with some IOMMU/AGPGART code.
But what about 32-bit PAE? Would that not qualify for SWIOTLB without IOMMU?
I am a novice in this area. Maybe this is a Kconfig "bug" for us that
like to hang ourselves with CONFIG_* rope? :) I'd like to think that
SWIOTLB should be default for 32-bit PAE too?
Best regards,
Christian
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html