Re: [PATCH] radeon: Do not directly dereference pointers to BIOS area.

From: David Miller
Date: Thu Mar 19 2015 - 12:29:16 EST


From: Christian König <christian.koenig@xxxxxxx>
Date: Thu, 19 Mar 2015 09:50:58 +0100

> In general I would say yes, but for this particular hardware it's a
> bit questionable to do so.
>
> For radeon hardware to work correctly the CPU access to the PCIE BARs
> should work even without using the specialized IO macros/functions,
> otherwise mapping VRAM CPU accessible isn't really possible.
>
> What's the background of the change? Some problems on a certain CPU
> platform? or just general cleanups?

It's an _iomem_ pointer, it's not a virtual address.

Therefore it is illegal to dereference the pointer.

The value is opaque and has values that only make sense when used
with the readb() et al. interfaces.

This code is relying upon the fact that on x86 it happens to be
a virtual address, but this won't work on many other architectures.
--
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/