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]
Date:	Thu, 12 Aug 2010 10:07:01 +0200
From:	Heiko Carstens <heiko.carstens@...ibm.com>
To:	Sachin Sant <sachinp@...ibm.com>
Cc:	linux-s390@...r.kernel.org,
	linux-kernel <linux-kernel@...r.kernel.org>,
	FUJITA Tomonori <fujita.tomonori@....ntt.co.jp>,
	Andrew Morton <akpm@...ux-foundation.org>,
	linux-arch@...r.kernel.org
Subject: Re: Latest git build failure on s390 - dma_get_cache_alignment()

On Thu, Aug 12, 2010 at 09:55:32AM +0200, Heiko Carstens wrote:
> On Thu, Aug 12, 2010 at 01:10:01PM +0530, Sachin Sant wrote:
> > Latest 2.6.35 git (2.6.35-git11 : 5af568cbd...) fails to build
> > on s390 with following errors :
> > 
> > arch/s390/mm/fault.c:396: warning: frame size of 'do_protection_exception' is 264 bytes
> > In file included from include/linux/dmaengine.h:26,
> >            from include/linux/skbuff.h:30,
> >            from include/linux/icmpv6.h:82,
> >            from include/linux/ipv6.h:220,
> >            from include/net/ipv6.h:16,
> >            from include/linux/sunrpc/clnt.h:25,
> >            from include/linux/nfs_fs.h:48,
> >            from init/do_mounts.c:20:
> > include/linux/dma-mapping.h:145: error: static declaration of 'dma_get_cache_alignment' follows non-static declaration
> > include/asm-generic/dma-mapping-broken.h:73: error: previous declaration of 'dma_get_cache_alignment' was here
> > make[1]: *** [init/do_mounts.o] Error 1
> > make[1]: *** Waiting for unfinished jobs....
> > init/do_mounts_md.c: In function 'md_setup_drive':
> > init/do_mounts_md.c:241: warning: frame size of 'md_setup_drive' is 496 bytes
> > make: *** [init] Error 2
> > make: *** Waiting for unfinished jobs....
> > 
> > The code in question was last changed via following commit
> > 
> > commit 4565f0170dfc849b3629c27d769db800467baa62
> > dma-mapping: unify dma_get_cache_alignment implementations
> 
> Cc'ing linux-arch since the original patch got posted there as well.
> 
> Patch below should fix it.
> 
> Signed-off-by: Heiko Carstens <heiko.carstens@...ibm.com>
> ---
> 
>  include/asm-generic/dma-mapping-common.h |    8 ++++++++
>  include/linux/dma-mapping.h              |    8 --------
>  2 files changed, 8 insertions(+), 8 deletions(-)

Crap. By far not all converted architectures include dma-mapping-common.h
from their private dma-mapping header file. So the patch would probably
introduce a couple of new compile errors.
Looks like we need an explicit ifdef.

Signed-off-by: Heiko Carstens <heiko.carstens@...ibm.com>
---

 include/linux/dma-mapping.h |    2 ++
 1 file changed, 2 insertions(+)


diff --git a/include/linux/dma-mapping.h b/include/linux/dma-mapping.h
index e0670a5..ce29b81 100644
--- a/include/linux/dma-mapping.h
+++ b/include/linux/dma-mapping.h
@@ -142,6 +142,7 @@ static inline int dma_set_seg_boundary(struct device *dev, unsigned long mask)
 		return -EIO;
 }
 
+#ifdef CONFIG_HAS_DMA
 static inline int dma_get_cache_alignment(void)
 {
 #ifdef ARCH_DMA_MINALIGN
@@ -149,6 +150,7 @@ static inline int dma_get_cache_alignment(void)
 #endif
 	return 1;
 }
+#endif
 
 /* flags for the coherent memory api */
 #define	DMA_MEMORY_MAP			0x01
--
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