Re: [PATCH] RFC: kills consistent_dma_mask

Pete Zaitcev
2003-08-18T15:15:26Z

> From: Krzysztof Halasa <khc@pm.waw.pl>
> Date: 18 Aug 2003 00:34:17 +0200

> It's unneeded (it can be easily done in a driver, should a need arrive,
> without polluting the PCI subsystem) and is not supported by "DMA" API.

Are you talking about doing tripple calls, e.g.

pci_set_dma_mask(pdev, 0xFFFFFFFF);
foo = pci_alloc_consistent(pdev, size, &handle);
// Restore for upcoming streaming allocations
pci_set_dma_mask(pdev, 0xFFFFFFFFFFFFFFFF);

Possibly Jes considered that alternative and decided that it
did not allow for sufficient performance.

> It isn't even implemented on most platforms - only x86_64 and ia64 have
> support for it, while on the remaining archs using it according to the
> docs (with non-default value) could mean Oops or something like that.

Before you go for that, I'd rather see you implementing the
double/tripple calls in drivers, check for effects, THEN
go for removal of the mask. If you cannot do it, plea SGI people
to test it on SN-2 for you (or same for Intel Tiger box).

> This patch doesn't actually change any current kernel behaviour.

Sure it does. It blows all non-mmu ia64 out of the water.

The consistent mask looks a little distasteful to me, and I think
it should not buy us performance because consistent allocations
are not supposed to be fast. They are bad, but what you are doing
is worse: you are trying to ruin the day of legitimate users.
Please, be reasonable. Get SGI buy-in and come back.

-- Pete