diff options
author | Jaroslav Kysela <perex@perex.cz> | 2011-03-08 10:52:26 +0100 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2011-03-08 10:52:26 +0100 |
commit | 168f7a54b1287c6c402ce18498c6bce2b75b3e0b (patch) | |
tree | 5dc758c12e0e2f3b1a464992fc2d53e8f0b59659 | |
parent | 04a3b4d1d426200ba3fb8122a6350ce78ef0ec8a (diff) | |
download | alsa-driver-build-unstable-168f7a54b1287c6c402ce18498c6bce2b75b3e0b.tar.gz |
add check for vzalloc() to configure (Fedora 14 kernel issue)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
-rw-r--r-- | configure.in | 35 | ||||
-rw-r--r-- | include/adriver.h | 3 | ||||
-rw-r--r-- | include/config.h.in | 1 |
3 files changed, 37 insertions, 2 deletions
diff --git a/configure.in b/configure.in index d506d46cd..e586e494b 100644 --- a/configure.in +++ b/configure.in @@ -1930,6 +1930,41 @@ if test "$CONFIG_HAVE_VMALLOC_TO_PAGE" = "1"; then AC_DEFINE(CONFIG_HAVE_VMALLOC_TO_PAGE) fi +dnl Check for vzalloc... +AC_MSG_CHECKING(for vzalloc) +vzalloc="0" +ac_save_CFLAGS="$CFLAGS" +ac_save_CC="$CC" +CFLAGS="$KERNEL_CHECK_CFLAGS" +CC=$KCC +AC_TRY_COMPILE([ +#define __KERNEL__ +#ifdef CONFIG_HAVE_DEPRECATED_CONFIG_H +#include <$INCLUDE_AUTOCONF_H> +#else +#include <linux/config.h> +#endif +#include <linux/time.h> +#include <linux/sched.h> +#include <linux/interrupt.h> +#include <linux/mm.h> +#include <linux/vmalloc.h> +],[ + void * (*func)(unsigned long); + func = vzalloc; +], + AC_MSG_RESULT(yes);vzalloc="1", + AC_MSG_RESULT(no);vzalloc="0", + AC_MSG_RESULT(unknown);vzalloc="0" +) +CFLAGS=$ac_save_CFLAGS +CC=$ac_save_CC +CONFIG_HAVE_VZALLOC=$vzalloc +dnl AC_SUBST(CONFIG_HAVE_VZALLOC) +if test "$CONFIG_HAVE_VZALLOC" = "1"; then + AC_DEFINE(CONFIG_HAVE_VZALLOC) +fi + dnl Check for old kmod... AC_MSG_CHECKING(for old kmod) old_kmod="0" diff --git a/include/adriver.h b/include/adriver.h index 3ce74f99b..57a129072 100644 --- a/include/adriver.h +++ b/include/adriver.h @@ -1922,8 +1922,7 @@ static inline int hex_to_bin(char c) } #endif -/* vzalloc() wrapper */ -#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 37) +#ifndef CONFIG_HAVE_VZALLOC #include <linux/vmalloc.h> static inline void *vzalloc(unsigned long size) { diff --git a/include/config.h.in b/include/config.h.in index ca75ba55f..c9478ba97 100644 --- a/include/config.h.in +++ b/include/config.h.in @@ -90,3 +90,4 @@ #undef CONFIG_SND_HAVE_PM_QOS_REQUEST #undef CONFIG_SND_HAVE_PM_QOS_REQUEST_STATIC #undef CONFIG_SND_HAVE_USB_ALLOC_COHERENT +#undef CONFIG_HAVE_VZALLOC |