[PATCH] ia64: re-implement dma_get_cache_alignment to avoid EXPORT_SYMBOL
authorJohn W. Linville <linville@tuxdriver.com>
Mon, 7 Nov 2005 08:57:54 +0000 (00:57 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 7 Nov 2005 15:53:23 +0000 (07:53 -0800)
The current ia64 implementation of dma_get_cache_alignment does not work
for modules because it relies on a symbol which is not exported.  Direct
access to a global is a little ugly anyway, so this patch re-implements
dma_get_cache_alignment in a manner similar to what is currently used for
x86_64.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/ia64/kernel/setup.c
include/asm-ia64/dma-mapping.h

index fc56ca2..3af6de3 100644 (file)
@@ -92,6 +92,13 @@ extern void efi_initialize_iomem_resources(struct resource *,
 extern char _text[], _end[], _etext[];
 
 unsigned long ia64_max_cacheline_size;
+
+int dma_get_cache_alignment(void)
+{
+        return ia64_max_cacheline_size;
+}
+EXPORT_SYMBOL(dma_get_cache_alignment);
+
 unsigned long ia64_iobase;     /* virtual address for I/O accesses */
 EXPORT_SYMBOL(ia64_iobase);
 struct io_space io_space[MAX_IO_SPACES];
index 6347c98..df67d40 100644 (file)
@@ -48,12 +48,7 @@ dma_set_mask (struct device *dev, u64 mask)
        return 0;
 }
 
-static inline int
-dma_get_cache_alignment (void)
-{
-       extern int ia64_max_cacheline_size;
-       return ia64_max_cacheline_size;
-}
+extern int dma_get_cache_alignment(void);
 
 static inline void
 dma_cache_sync (void *vaddr, size_t size, enum dma_data_direction dir)