RE: [BUG] 2.6.23-rc3-mm1 Kernel panic - not syncing: DMA: Memory would be corrupted

From: Luck, Tony
Date: Wed Aug 22 2007 - 20:06:34 EST


> Hmm. Must be something else going on then. It should be less than 1MB
> per ioc plus whatever is used for streaming I/O.
>
> | mptbase: Initiating ioc2 bringup | GSI 16 (level, low) -> CPU 2 (0xc418) vector 50
> | ioc2: LSI53C1030 C0: Capabilities={Initiator} | ACPI: PCI Interrupt 0000:00:1d.0[A] -> GSI 16 (level, low) ->
> | DMA: Out of SW-IOMMU space for 263200 bytes at device ? | uhci_hcd 0000:00:1d.0: UHCI Host Controller
> | Kernel panic - not syncing: DMA: Memory would be corrupted | uhci_hcd 0000:00:1d.0: new USB bus registered, assigned bus n

I traced the pci_alloc_consistent calls from PrimeIocFifos on my
system. There are two calls for each ioc. The first is for
266368 bytes, the second for 16320 bytes.

I wonder why Kamalesh's system wants the slightly different
amount (263200 bytes) from what my system asks for?

It also looks to be a little unfriendly to swiotlb to ask for
more than 256K at a time (see IO_TLB_SEGSIZE) in swiotlb.c

-Tony
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/