Re: PCI Express support for 2.4 kernel

Andi Kleen
2003-12-15T21:56:50Z

Vladimir Kondratiev <vladimir.kondratiev@intel.com> writes:
>
> As alternative between 1 page and 256M, I see also lazy allocation on
> per-bus basis: when bus is first accessed, ioremap 1Mb for it. On real
> system, it is no more then 3-4 buses. This way, we will end with
> several 1MB mappings. Finer granularity do not looks feasible, since
> bus scanning procedure tries to access all devices.

For bus scanning fixmaps are fine, but for the normal use of the
config space in the driver just doing ioremap once (e.g. at
pci_enable_device time) and caching it is preferable. The number of
PCI-E devices in a given system should be bounded, so e.g. when you
have 100 devices you will only lose 400kB of vmalloc space this way
which is quite reasonable.

I don't think dynamic fixmaps at each access would be a good idea.

-Andi