public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/10] memremap for 4.3
@ 2015-08-11  3:37 Dan Williams
  2015-08-11  3:37 ` [PATCH v4 01/10] mm: enhance region_is_ram() to region_intersects() Dan Williams
                   ` (9 more replies)
  0 siblings, 10 replies; 16+ messages in thread
From: Dan Williams @ 2015-08-11  3:37 UTC (permalink / raw)
  To: linux-kernel
  Cc: Toshi Kani, Arnd Bergmann, linux-nvdimm, Greg Kroah-Hartman,
	mcgrof, hch, Benjamin Romer, David Kershner, ross.zwisler

Changes since v3: [1]

1/ Include devm_memremap() support (Christoph)

2/ Rebase the series to defer the removal of ioremap_cache() and drop
   any of the ioremap_cache()-to-memremap() conversions that have yet to be
   acked by the appropriate maintainer. This avoids any potential for
   bisection breakage during the 4.3 merge and the cleanup can be done for
   4.4. (Christoph)

[1]: https://lists.01.org/pipermail/linux-nvdimm/2015-July/001649.html
---

While developing the pmem driver we noticed that the __iomem annotation
on the return value from ioremap_cache() was being mishandled by several
callers.  We also observed that all of the call sites expected to be
able to treat the return value from ioremap_cache() as normal
(non-__iomem) pointer to memory.

See also, the LWN write up: https://lwn.net/Articles/653585/

This has passed a 0day run and will appear in libnvdimm-for-next
shortly.

---

Christoph Hellwig (2):
      devres: add devm_memremap
      pmem: switch to devm_ allocations

Dan Williams (8):
      mm: enhance region_is_ram() to region_intersects()
      arch, drivers: don't include <asm/io.h> directly, use <linux/io.h> instead
      cleanup IORESOURCE_CACHEABLE vs ioremap()
      arch: introduce memremap()
      visorbus: switch from ioremap_cache to memremap
      libnvdimm, pmem: push call to ioremap_cache out of line
      pmem: switch from ioremap_wt to memremap
      pmem: convert to generic memremap


 arch/arm/mach-clps711x/board-cdb89712.c        |    2 
 arch/arm/mach-shmobile/pm-rcar.c               |    2 
 arch/ia64/include/asm/io.h                     |    1 
 arch/ia64/kernel/cyclone.c                     |    2 
 arch/powerpc/kernel/pci_of_scan.c              |    2 
 arch/sh/include/asm/io.h                       |    1 
 arch/sparc/kernel/pci.c                        |    3 -
 arch/x86/include/asm/io.h                      |    7 -
 arch/x86/mm/ioremap.c                          |   10 ++
 arch/xtensa/include/asm/io.h                   |    1 
 drivers/isdn/icn/icn.h                         |    2 
 drivers/mtd/devices/slram.c                    |    2 
 drivers/mtd/nand/diskonchip.c                  |    2 
 drivers/mtd/onenand/generic.c                  |    2 
 drivers/nvdimm/pmem.c                          |   36 ++----
 drivers/pci/probe.c                            |    3 -
 drivers/pnp/manager.c                          |    2 
 drivers/scsi/aic94xx/aic94xx_init.c            |    7 -
 drivers/scsi/arcmsr/arcmsr_hba.c               |    5 -
 drivers/scsi/mvsas/mv_init.c                   |   15 +--
 drivers/scsi/sun3x_esp.c                       |    2 
 drivers/staging/comedi/drivers/ii_pci20kc.c    |    1 
 drivers/staging/unisys/visorbus/visorchannel.c |   16 ++-
 drivers/staging/unisys/visorbus/visorchipset.c |   17 ++-
 drivers/tty/serial/8250/8250_core.c            |    2 
 drivers/video/fbdev/ocfb.c                     |    1 
 drivers/video/fbdev/s1d13xxxfb.c               |    3 -
 drivers/video/fbdev/stifb.c                    |    1 
 include/linux/io-mapping.h                     |    2 
 include/linux/io.h                             |   13 ++
 include/linux/mm.h                             |    9 +-
 include/linux/mtd/map.h                        |    2 
 include/linux/pmem.h                           |   30 +++--
 include/video/vga.h                            |    2 
 kernel/Makefile                                |    2 
 kernel/memremap.c                              |  138 ++++++++++++++++++++++++
 kernel/resource.c                              |   61 ++++++-----
 lib/devres.c                                   |   13 +-
 lib/pci_iomap.c                                |    7 -
 tools/testing/nvdimm/Kbuild                    |    4 -
 tools/testing/nvdimm/test/iomap.c              |   46 ++++++--
 41 files changed, 323 insertions(+), 156 deletions(-)
 create mode 100644 kernel/memremap.c

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2015-08-11 16:21 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-11  3:37 [PATCH v4 00/10] memremap for 4.3 Dan Williams
2015-08-11  3:37 ` [PATCH v4 01/10] mm: enhance region_is_ram() to region_intersects() Dan Williams
2015-08-11  3:38 ` [PATCH v4 02/10] arch, drivers: don't include <asm/io.h> directly, use <linux/io.h> instead Dan Williams
2015-08-11  3:38 ` [PATCH v4 03/10] cleanup IORESOURCE_CACHEABLE vs ioremap() Dan Williams
2015-08-11  3:38 ` [PATCH v4 04/10] arch: introduce memremap() Dan Williams
2015-08-11 12:47   ` Christoph Hellwig
2015-08-11  3:38 ` [PATCH v4 05/10] visorbus: switch from ioremap_cache to memremap Dan Williams
2015-08-11  3:38 ` [PATCH v4 06/10] libnvdimm, pmem: push call to ioremap_cache out of line Dan Williams
2015-08-11 12:51   ` Christoph Hellwig
2015-08-11 16:20     ` Dan Williams
2015-08-11  3:38 ` [PATCH v4 07/10] pmem: switch from ioremap_wt to memremap Dan Williams
2015-08-11 12:52   ` Christoph Hellwig
2015-08-11  3:38 ` [PATCH v4 08/10] pmem: convert to generic memremap Dan Williams
2015-08-11 12:55   ` Christoph Hellwig
2015-08-11  3:38 ` [PATCH v4 09/10] devres: add devm_memremap Dan Williams
2015-08-11  3:38 ` [PATCH v4 10/10] pmem: switch to devm_ allocations Dan Williams

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox