Re: 2.4.16: running *really* short on DMA buffers

Gérard Roudier (groudier@free.fr)
Wed, 5 Dec 2001 18:38:33 +0100 (CET)


On Wed, 5 Dec 2001, Heinz-Ado Arnolds wrote:

> Hi all,
>
> I get the message "kernel: Warning - running *really* short on DMA
> buffers" frequently with medium to heavy disk i/o (running several
> tar and/or moving huge directories).
>
> Can anybody give me some hints what the reason for this might be
> and how to avoid this condition.

The reason is certainly not driver allocations (either sym53c8xx version 1
or 2), since it performs all allocations of its internal data structures
directly from the page pool. OTOH, the Symbios PCI devices are quite able
to DMA the whole 32 bit physical address range.

So, they are the allocations internal to the scsi layer that may well
exhaust the ISA DMA pool. This pool is divided into 512 bytes chunks.
Under heavy reordering of IOs, it can get very fragmented and much memory
being wasted as a result.

An immediate solution might be to hack the scsi code for it to allocate
more memory.

> Do you need more information (I'm using only SCSI disks attached
> to a Symbios controller: <875> rev 0x26 on pci bus 0 device 11 func
> tion 0 irq 15)? I even can't find this error string in the kernel
> sources.

The error string in well known since years, so you shouldn't have missed
it from sources. :-)

Gérard.

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