On 09/05/09 04:18, Boris Derzhavets wrote:
> After fresh git clone, git checkout tune "make menuconfig" the same
> way as for RC6
>
> When build :-
>
> In file included from /usr/src/linux-2.6-xen/arch/x86/include/asm/agp.h:5,
> from
drivers/gpu/drm/ttm/ttm_agp_backend.c:40:
> include/linux/swiotlb.h:48: warning: ‘enum dma_data_direction’
> declared inside parameter list
> include/linux/swiotlb.h:48: warning: its scope is only this definition
> or declaration, which is probably not what you want
> include/linux/swiotlb.h:51: warning: ‘enum dma_data_direction’
> declared inside parameter list
> include/linux/swiotlb.h:63: warning: ‘enum dma_data_direction’
> declared inside parameter list
> include/linux/swiotlb.h:68: warning: ‘enum dma_data_direction’
> declared inside parameter list
> include/linux/swiotlb.h:72: warning: ‘enum dma_data_direction’
> declared inside parameter list
> include/linux/swiotlb.h:76: warning: ‘enum dma_data_direction’
> declared inside parameter list
> include/linux/swiotlb.h:80: warning: ‘enum dma_data_direction’
> declared inside
parameter list
> include/linux/swiotlb.h:84: warning: ‘enum dma_data_direction’
> declared inside parameter list
> include/linux/swiotlb.h:89: warning: ‘enum dma_data_direction’
> declared inside parameter list
> include/linux/swiotlb.h:94: warning: ‘enum dma_data_direction’
> declared inside parameter list
> In file included from /usr/src/linux-2.6-xen/arch/x86/include/asm/agp.h:9,
> from drivers/gpu/drm/ttm/ttm_agp_backend.c:40:
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h: In function
> ‘get_dma_ops’:
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:29: error:
> dereferencing pointer to incomplete type
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:32: error:
> dereferencing pointer to incomplete type
> In file included from
>
/usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:37,
> from /usr/src/linux-2.6-xen/arch/x86/include/asm/agp.h:9,
> from drivers/gpu/drm/ttm/ttm_agp_backend.c:40:
> include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:12: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:11: error: parameter 4
> (‘dir’) has incomplete type
> include/asm-generic/dma-mapping-common.h: In function
> ‘dma_map_single_attrs’:
> include/asm-generic/dma-mapping-common.h:18: error: implicit
> declaration of function ‘valid_dma_direction’
> In file included from
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:37,
>
from /usr/src/linux-2.6-xen/arch/x86/include/asm/agp.h:9,
> from drivers/gpu/drm/ttm/ttm_agp_backend.c:40:
> include/asm-generic/dma-mapping-common.h:19: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:31: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:30: error: parameter 4
> (‘dir’) has incomplete type
> include/asm-generic/dma-mapping-common.h: In function
> ‘dma_unmap_single_attrs’:
> include/asm-generic/dma-mapping-common.h:36: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h:37: error: dereferencing
> pointer to incomplete type
>
include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:43: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:42: error: parameter 4
> (‘dir’) has incomplete type
> include/asm-generic/dma-mapping-common.h: In function ‘dma_map_sg_attrs’:
> include/asm-generic/dma-mapping-common.h:52: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:60: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:59: error: parameter 4
> (‘dir’) has incomplete type
> include/asm-generic/dma-mapping-common.h: In function
> ‘dma_unmap_sg_attrs’:
> include/asm-generic/dma-mapping-common.h:66: error:
dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h:67: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:72: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:72: error: parameter 5
> (‘dir’) has incomplete type
> include/asm-generic/dma-mapping-common.h: In function ‘dma_map_page’:
> include/asm-generic/dma-mapping-common.h:79: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:86: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:86: error: parameter 4
> (‘dir’) has incomplete
type
> include/asm-generic/dma-mapping-common.h: In function ‘dma_unmap_page’:
> include/asm-generic/dma-mapping-common.h:91: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h:92: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:98: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:98: error: parameter 4
> (‘dir’) has incomplete type
> include/asm-generic/dma-mapping-common.h: In function
> ‘dma_sync_single_for_cpu’:
> include/asm-generic/dma-mapping-common.h:103: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h:104: error: dereferencing
> pointer to incomplete type
>
include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:111: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:111: error: parameter 4
> (‘dir’) has incomplete type
> include/asm-generic/dma-mapping-common.h: In function
> ‘dma_sync_single_for_device’:
> include/asm-generic/dma-mapping-common.h:116: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common..h:117: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:126: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:126: error: parameter 5
> (‘dir’) has incomplete type
>
include/asm-generic/dma-mapping-common.h: In function
> ‘dma_sync_single_range_for_cpu’:
> include/asm-generic/dma-mapping-common.h:131: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h:132: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h:137: error: type of formal
> parameter 4 is incomplete
> include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:144: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:144: error: parameter 5
> (‘dir’) has incomplete type
> include/asm-generic/dma-mapping-common.h: In function
> ‘dma_sync_single_range_for_device’:
> include/asm-generic/dma-mapping-common.h:149: error: dereferencing
> pointer to incomplete type
>
include/asm-generic/dma-mapping-common.h:150: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h:155: error: type of formal
> parameter 4 is incomplete
> include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:160: warning: ‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:160: error: parameter 4
> (‘dir’) has incomplete type
> include/asm-generic/dma-mapping-common.h: In function
> ‘dma_sync_sg_for_cpu’:
> include/asm-generic/dma-mapping-common.h:165: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h:166: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h: At top level:
> include/asm-generic/dma-mapping-common.h:173: warning:
‘enum
> dma_data_direction’ declared inside parameter list
> include/asm-generic/dma-mapping-common.h:173: error: parameter 4
> (‘dir’) has incomplete type
> include/asm-generic/dma-mapping-common.h: In function
> ‘dma_sync_sg_for_device’:
> include/asm-generic/dma-mapping-common.h:178: error: dereferencing
> pointer to incomplete type
> include/asm-generic/dma-mapping-common.h:179: error: dereferencing
> pointer to incomplete type
> In file included from /usr/src/linux-2.6-xen/arch/x86/include/asm/agp.h:9,
> from drivers/gpu/drm/ttm/ttm_agp_backend.c:40:
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h: In function
> ‘dma_mapping_error’:
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:42: error:
> dereferencing pointer to incomplete type
>
/usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:43: error:
> dereferencing pointer to incomplete type
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h: At top level:
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:60: warning:
> ‘enum dma_data_direction’ declared inside parameter list
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:60: error:
> parameter 4 (‘dir’) has incomplete type
> /usr/src/linux-2..6-xen/arch/x86/include/asm/dma-mapping.h: In function
> ‘dma_alloc_coherent_mask’:
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:77: error:
> dereferencing pointer to incomplete type
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:79: error:
> implicit declaration of function ‘DMA_BIT_MASK’
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h: In function
>
‘dma_alloc_coherent’:
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:114: error:
> implicit declaration of function ‘is_device_dma_capable’
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:117: error:
> dereferencing pointer to incomplete type
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:120: error:
> dereferencing pointer to incomplete type
> In file included from /usr/src/linux-2.6-xen/arch/x86/include/asm/agp.h:9,
> from drivers/gpu/drm/ttm/ttm_agp_backend.c:40:
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h: In function
> ‘dma_free_coherent’:
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:138: error:
> dereferencing pointer to incomplete type
> /usr/src/linux-2.6-xen/arch/x86/include/asm/dma-mapping.h:139: error:
> dereferencing
pointer to incomplete type
> make[4]: *** [drivers/gpu/drm/ttm/ttm_agp_backend.o] Error 1
> make[3]: *** [drivers/gpu/drm/ttm] Error 2
> make[2]: *** [drivers/gpu/drm] Error 2
> make[1]: *** [drivers/gpu] Error 2
> make: *** [drivers] Error 2
>
Does this help?
diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
index cb1a663..f4ebffb 100644
--- a/include/linux/swiotlb.h
+++ b/include/linux/swiotlb.h
@@ -2,6 +2,7 @@
#define __LINUX_SWIOTLB_H
#include <linux/types.h>
+#include <linux/dma-mapping.h>
struct device;
struct dma_attrs;
J
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxhttp://lists.xensource.com/xen-devel