Re: Latest git build failure on s390 - dma_get_cache_alignment()

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

 



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@xxxxxxxxxx>
> ---
> 
>  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@xxxxxxxxxx>
---

 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-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