Commit 02755af0 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull parisc fixes from Helge Deller:

 - Fix a parisc-specific fallout of Christoph's
   dma_set_mask_and_coherent() patches (Sven)

 - Fix a vmap memory leak in ioremap()/ioremap() (Helge)

 - Some minor cleanups and documentation updates (Nick, Helge)

* 'parisc-5.4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
  parisc: Remove 32-bit DMA enforcement from sba_iommu
  parisc: Fix vmap memory leak in ioremap()/iounmap()
  parisc: prefer __section from compiler_attributes.h
  parisc: sysctl.c: Use CONFIG_PARISC instead of __hppa_ define
  MAINTAINERS: Add hp_sdc drivers to parisc arch
parents 37b238da c32c47aa
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -12312,12 +12312,15 @@ F: arch/parisc/
F:	Documentation/parisc/
F:	drivers/parisc/
F:	drivers/char/agp/parisc-agp.c
F:	drivers/input/misc/hp_sdc_rtc.c
F:	drivers/input/serio/gscps2.c
F:	drivers/input/serio/hp_sdc*
F:	drivers/parport/parport_gsc.*
F:	drivers/tty/serial/8250/8250_gsc.c
F:	drivers/video/fbdev/sti*
F:	drivers/video/console/sti*
F:	drivers/video/logo/logo_parisc*
F:	include/linux/hp_sdc.h
PARMAN
M:	Jiri Pirko <jiri@mellanox.com>
+1 −1
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@

#define ARCH_DMA_MINALIGN	L1_CACHE_BYTES

#define __read_mostly __attribute__((__section__(".data..read_mostly")))
#define __read_mostly __section(.data..read_mostly)

void parisc_cache_init(void);	/* initializes cache-flushing */
void disable_sr_hashing_asm(int); /* low level support for above */
+1 −1
Original line number Diff line number Diff line
@@ -52,7 +52,7 @@
})

#ifdef CONFIG_SMP
# define __lock_aligned __attribute__((__section__(".data..lock_aligned")))
# define __lock_aligned __section(.data..lock_aligned)
#endif

#endif /* __PARISC_LDCW_H */
+7 −5
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@
 * arch/parisc/mm/ioremap.c
 *
 * (C) Copyright 1995 1996 Linus Torvalds
 * (C) Copyright 2001-2006 Helge Deller <deller@gmx.de>
 * (C) Copyright 2001-2019 Helge Deller <deller@gmx.de>
 * (C) Copyright 2005 Kyle McMartin <kyle@parisc-linux.org>
 */

@@ -84,7 +84,7 @@ void __iomem * __ioremap(unsigned long phys_addr, unsigned long size, unsigned l
	addr = (void __iomem *) area->addr;
	if (ioremap_page_range((unsigned long)addr, (unsigned long)addr + size,
			       phys_addr, pgprot)) {
		vfree(addr);
		vunmap(addr);
		return NULL;
	}

@@ -92,9 +92,11 @@ void __iomem * __ioremap(unsigned long phys_addr, unsigned long size, unsigned l
}
EXPORT_SYMBOL(__ioremap);

void iounmap(const volatile void __iomem *addr)
void iounmap(const volatile void __iomem *io_addr)
{
	if (addr > high_memory)
		return vfree((void *) (PAGE_MASK & (unsigned long __force) addr));
	unsigned long addr = (unsigned long)io_addr & PAGE_MASK;

	if (is_vmalloc_addr((void *)addr))
		vunmap((void *)addr);
}
EXPORT_SYMBOL(iounmap);
+0 −8
Original line number Diff line number Diff line
@@ -678,14 +678,6 @@ static int sba_dma_supported( struct device *dev, u64 mask)
		return(0);
	}

	/* Documentation/DMA-API-HOWTO.txt tells drivers to try 64-bit
	 * first, then fall back to 32-bit if that fails.
	 * We are just "encouraging" 32-bit DMA masks here since we can
	 * never allow IOMMU bypass unless we add special support for ZX1.
	 */
	if (mask > ~0U)
		return 0;

	ioc = GET_IOC(dev);
	if (!ioc)
		return 0;
Loading