On Wed, May 05, 1999 at 09:58:33PM -0400, Douglas Gilbert wrote:
> Proposal
> --------
> The proposal is to add a kernel configuration switch:
> CONFIG_SCSI_NO_ISA [default initially "N"]
>
> It would have the following effect when "Y":
> - Any attempt to load an ISA adapter (or more precisely
> "unchecked_isa_dma == 1") at boot time or as a module is rejected
> by the SCSI mid-level with an appropriate message to the console,
> log and/or insmod.
> - the SCSI mid-level does _not_ restrict itself below the 16MB level
> when allocating new command blocks or enlarging its buffer pool.
Why not have the mid-level code be intelligent, and only decide at run-time
to try to get mem below 16M (GFP_DMA), if the command is for an adapter with
unchecked_isa_dma==1 ??
The buffer pool is shared between the adapters, so it's a little bit hard to
do. So we need a two-class buffer pool:
1. Normal buffers for sane adapters
2. backup buffers (below 16M), which we would use, when
(a) a command is for an ISA adapter
(b) we run out of class 1 buffers
When we run out of class 2 buffers, we allocate more cl.1 or cl.2 buffers,
depending on what adapter caused the running out.
It does not look too difficult. It doesn't make the code more clean, though,
I admit. But cleaning up will be a 2.3 issue ...
I'd prefer this approach, but I'd also agree to have your proposal
implemented.
Regards,
--
Kurt Garloff <[EMAIL PROTECTED]> SuSE GmbH, N�rnberg, FRG
Linux kernel development; SCSI driver: DC390 (tmscsim/AM53C974)
PGP signature