lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0912160529440.5529@sister.anvils>
Date:	Wed, 16 Dec 2009 05:32:26 +0000 (GMT)
From:	Hugh Dickins <hugh.dickins@...cali.co.uk>
To:	Steven King <sfking@...dc.com>
cc:	Andrew Morton <akpm@...ux-foundation.org>,
	Linus Torvalds <torvalds@...ux-foundation.org>,
	linux-kernel@...r.kernel.org
Subject: Re: [current HEAD] commit 5ad6468801d28c4d4ac9f48ec19297817c915f6a
 breaks the build on m68knommu

On Tue, 14 Dec 2009, Steven King wrote:

> and I suspect on any nommu:
> 
> In file included from kernel/fork.c:52:
> include/linux/ksm.h:129: warning: 'enum ttu_flags' declared inside parameter 
> list
> include/linux/ksm.h:129: warning: its scope is only this definition or 
> declaration, which is probably not what you want
> include/linux/ksm.h:129: error: parameter 2 ('flags') has incomplete type
> make[1]: *** [kernel/fork.o] Error 1
> make[1]: *** Waiting for unfinished jobs....

Aargh, sorry about that: I've not built this on nommu, does it fix it?


[PATCH] fix CONFIG_KSM broke nommu build

Commit 5ad6468801d28c4d4ac9f48ec19297817c915f6a "ksm: let shared pages
be swappable" breaks the build on m68knommu and I suspect on any nommu:

In file included from kernel/fork.c:52:
include/linux/ksm.h:129: warning: 'enum ttu_flags' declared inside parameter 
list
include/linux/ksm.h:129: warning: its scope is only this definition or 
declaration, which is probably not what you want
include/linux/ksm.h:129: error: parameter 2 ('flags') has incomplete type
make[1]: *** [kernel/fork.o] Error 1
make[1]: *** Waiting for unfinished jobs....

Let's fix that with CONFIG_MMU around most of the !CONFIG_KSM declarations.

Reported-by: Steven King <sfking@...dc.com>
Signed-off-by: Hugh Dickins <hugh.dickins@...cali.co.uk>
---

 include/linux/ksm.h |   14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

--- 2.6.32-git/include/linux/ksm.h.0	2009-12-16 04:59:25.000000000 +0000
+++ linux/include/linux/ksm.h	2009-12-16 05:14:40.000000000 +0000
@@ -94,12 +94,6 @@ void ksm_migrate_page(struct page *newpa
 
 #else  /* !CONFIG_KSM */
 
-static inline int ksm_madvise(struct vm_area_struct *vma, unsigned long start,
-		unsigned long end, int advice, unsigned long *vm_flags)
-{
-	return 0;
-}
-
 static inline int ksm_fork(struct mm_struct *mm, struct mm_struct *oldmm)
 {
 	return 0;
@@ -114,6 +108,13 @@ static inline int PageKsm(struct page *p
 	return 0;
 }
 
+#ifdef CONFIG_MMU
+static inline int ksm_madvise(struct vm_area_struct *vma, unsigned long start,
+		unsigned long end, int advice, unsigned long *vm_flags)
+{
+	return 0;
+}
+
 static inline struct page *ksm_might_need_to_copy(struct page *page,
 			struct vm_area_struct *vma, unsigned long address)
 {
@@ -140,6 +141,7 @@ static inline int rmap_walk_ksm(struct p
 static inline void ksm_migrate_page(struct page *newpage, struct page *oldpage)
 {
 }
+#endif /* CONFIG_MMU */
 #endif /* !CONFIG_KSM */
 
 #endif /* __LINUX_KSM_H */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ