On Tue, 18 Sep 2007, Linus Torvalds wrote:Side note: just allowing readl/writel on the iomap'ed pointers obviously avoids that proliferation, but iomap really is architecture-specific, so not only will different architectures act very differently, it's not necessarily the case that iomap() will always have the same pointer as the old ioremap(), even though the routines in the *default* implementation in lib/iomap.c do that. In fact, for IO port accesses, we already do some debugging to make sure that people don't misuse the iomap() interfaces (ie the whole "Bad IO access.." thing). I could well see the same thing happening for MMIO under some debugging option, explicitly using some high bits in a 64-bit address as a cookie - and that would make using regular readl/writel on the cookie just fail spectacularly. That said, it does seem unlikely (ie if we added a cookie for MMIO pointers, we'd probably do it *both* for iomap and for ioremap(), and readl/writel would continue to work). So in practice the readl/writel probably works. Linus -
| Heiko Carstens | Re: -mm merge plans for 2.6.23 -- sys_fallocate |
| Linus Torvalds | Linux 2.6.21-rc4 |
| Michael Kerrisk | nanosleep() uses CLOCK_MONOTONIC, should be CLOCK_REALTIME? |
| Linus Torvalds | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
git: | |
| Gary Thomas | Marvell 88E609x switch? |
| Gerrit Renker | [PATCH 15/37] dccp: Set per-connection CCIDs via socket options |
| David Miller | [GIT]: Networking |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
