Re: + kmap_types-make-most-arches-use-generic-header-file.patch added to -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thursday 28 May 2009 21:31:06 akpm@xxxxxxxxxxxxxxxxxxxx wrote:
> 
> The patch titled
>      kmap_types: make most arches use generic header file
> has been added to the -mm tree.  Its filename is
>      kmap_types-make-most-arches-use-generic-header-file.patch

Thanks for adding it back.

> Move the KM_FENCE_ macro additions into asm-generic/kmap_types.h,
> controlled by __WITH_KM_FENCE from each arch's kmap_types.h file.

I completely missed this part of the patch before. Is this actually useful?
All architectures that define it (x86 with a twist, the check for X86_32 is
an artifact from the x86 arch merge) do

#ifdef CONFIG_DEBUG_HIGHMEM
#define  __WITH_KM_FENCE
#endif

However: alpha, ia64, m32r, parisc and sh don't even support CONFIG_HIGHMEM
and therefore also can't set CONFIG_DEBUG_HIGHMEM. Conversely, mn10300 and
sparc can set CONFIG_DEBUG_HIGHMEM but don't get the extra checking
from KM_FENCE without this.

It seems to me that it would be at least as correct but simpler to just
leave the check for CONFIG_DEBUG_HIGHMEM.
 
> Would be nice to be able to add custom KM_types per arch, but I don't yet
> see a nice, clean way to do that.

FWIW, the only types that are not in the generic file right now are

arm: KM_L2_CACHE
powerpc: KM_PPC_SYNC_ICACHE, KM_PPC_SYNC_PAGE
um: KM_UML_USERCOPY

We could easily add these as KM_SYNC_ICACHE, KM_SYNC_DCACHE and
KM_UML_USERCOPY in the generic file and get rid of all architecture
specific types here.

	Arnd <><
--
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux