On Tue, 17 Jun 2008, Alan Horstmann wrote:
I have just confirmed that pasting
#define GFP_DMA32 ((__force gfp_t)0x04u)
into /alsa-kernel/pci/emu10k1/memory.c (not a correct fix -just taken from 2.6.24 headers) enables build to complete. So there should be no other hidden issues.
Could you try attached patch (also pasted bellow)?
Thanks, Jaroslav
diff --git a/configure.in b/configure.in index 1f24c7c..cf824be 100644 --- a/configure.in +++ b/configure.in @@ -2612,6 +2612,33 @@ if test "$CONFIG_HAVE_GFP_T" = "1"; then AC_DEFINE(CONFIG_HAVE_GFP_T) fi
+dnl Check for GFP_DMA32... +AC_MSG_CHECKING(for GFP_DMA32) +gfp_dma32="0" +ac_save_CFLAGS="$CFLAGS" +ac_save_CC="$CC" +CFLAGS="$KERNEL_CHECK_CFLAGS" +CC=$KCC +AC_TRY_COMPILE([ +#define __KERNEL__ +#include <linux/config.h> +#include <linux/types.h> +#include <linux/gfp.h> +],[ + int flags = GFP_DMA32; +], + AC_MSG_RESULT(yes);gfp_dma32="1", + AC_MSG_RESULT(no);gfp_dma32="0", + AC_MSG_RESULT(unknown);gfp_dma32="0" +) +CFLAGS=$ac_save_CFLAGS +CC=$ac_save_CC +CONFIG_HAVE_GFP_DMA32=$gfp_dma32 +dnl AC_SUBST(CONFIG_HAVE_GFP_DMA32) +if test "$CONFIG_HAVE_GFP_DMA32" = "1"; then + AC_DEFINE(CONFIG_HAVE_GFP_DMA32) +fi + dnl Check for init_utsname... if test "$kversion.$kpatchlevel" = "2.6" -a $ksublevel -ge 19; then CONFIG_HAVE_INIT_UTSNAME=1 diff --git a/include/adriver.h b/include/adriver.h index 0c32d0d..3f5f8d6 100644 --- a/include/adriver.h +++ b/include/adriver.h @@ -274,6 +274,10 @@ static inline struct proc_dir_entry *PDE(const struct inode *inode) typedef unsigned __nocast gfp_t; #endif
+#ifndef CONFIG_HAVE_GFP_DMA32 +#define GFP_DMA32 GFP_DMA +#endif + #include <linux/wait.h> #ifndef wait_event_timeout #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 0) diff --git a/include/config.h.in b/include/config.h.in index e5c4e02..23bee54 100644 --- a/include/config.h.in +++ b/include/config.h.in @@ -82,3 +82,4 @@ #undef CONFIG_SND_HAS_DEVICE_CREATE_DRVDATA #undef CONFIG_HAVE_IS_POWER_OF_2 #undef CONFIG_HAVE_DEPRECATED_CONFIG_H +#undef CONFIG_HAVE_GFP_DMA32
----- Jaroslav Kysela perex@perex.cz Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc.