Whamcloud - gitweb
LU-2686 kernel: Kernel update for 3.7.2-201.fc18 74/5974/7
authoryangsheng <yang.sheng@intel.com>
Wed, 10 Jul 2013 05:52:41 +0000 (13:52 +0800)
committerOleg Drokin <oleg.drokin@intel.com>
Thu, 11 Jul 2013 17:21:45 +0000 (17:21 +0000)
Add uapi header to include search path

Signed-off-by: yang sheng <yang.sheng@intel.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Id90e091fef63ebf5bb8e7765969aa3148cc31aa2
Reviewed-on: http://review.whamcloud.com/5974
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Alexey Shvetsov <alexxy@gentoo.org>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
autoMakefile.am
config/lustre-build-linux.m4
ldiskfs/config/ldiskfs-build.m4
lustre/scripts/version_tag.pl

index 9b6dcfd..71d8db4 100644 (file)
@@ -84,7 +84,7 @@ all-am: modules
 modules: $(DEP) all-sources
        $(MAKE) CC="$(CC)" $(CROSS_VARS) -C $(LINUX_OBJ)             \
        -f $(PWD)/build/Makefile LUSTRE_LINUX_CONFIG=$(LINUX_CONFIG) \
-       LINUXINCLUDE='$(EXTRA_LNET_INCLUDE) -I$$(srctree)/arch/$$(SRCARCH)/include -I$$(srctree)/arch/$$(SRCARCH)/include/generated -Iinclude $$(if $$(KBUILD_SRC),-Iinclude2 -I$$(srctree)/include) -include $(CONFIG_INCLUDE)' \
+       LINUXINCLUDE='$(EXTRA_LNET_INCLUDE) -I$$(srctree)/arch/$$(SRCARCH)/include -I$$(srctree)/arch/$$(SRCARCH)/include/generated -Iinclude $$(if $$(KBUILD_SRC),-Iinclude2 -I$$(srctree)/include) -I$$(srctree)/arch/$$(SRCARCH)/include/uapi -Iarch/$$(SRCARCH)/include/generated/uapi -I$$(srctree)/include/uapi -Iinclude/generated/uapi -include $(CONFIG_INCLUDE)' \
        $(MODULE_TARGET)=$(PWD) -o tmp_include_depends -o scripts -o \
        include/config/MARKER $@
 endif # LINUX
index 95d20e2..e2bbfeb 100644 (file)
@@ -44,7 +44,7 @@ AC_MSG_CHECKING([for Linux release])
 if test -s $LINUX_OBJ/include/$AUTOCONF_HDIR/utsrelease.h ; then
        LINUXRELEASEHEADER=$AUTOCONF_HDIR/utsrelease.h
 else
-       LINUXRELEASEHEADER=linux/version.h
+       LINUXRELEASEHEADER=$VERSION_HDIR/version.h
 fi
 LB_LINUX_TRY_MAKE([
        #include <$LINUXRELEASEHEADER>
@@ -65,7 +65,7 @@ LB_LINUX_TRY_MAKE([
 rm -f build/conftest.i
 if test x$LINUXRELEASE = x ; then
        AC_MSG_RESULT([unknown])
-       AC_MSG_ERROR([Could not determine Linux release version from linux/version.h.])
+       AC_MSG_ERROR([Could not determine Linux release version from $LINUXRELEASEHEADER.])
 fi
 AC_MSG_RESULT([$LINUXRELEASE])
 AC_SUBST(LINUXRELEASE)
@@ -96,7 +96,7 @@ AC_SUBST(RELEASE)
 # check is redhat/suse kernels
 AC_MSG_CHECKING([that RedHat kernel])
 LB_LINUX_TRY_COMPILE([
-               #include <linux/version.h>
+               #include <$VERSION_HDIR/version.h>
        ],[
                #ifndef RHEL_RELEASE_CODE
                #error "not redhat kernel"
@@ -222,8 +222,12 @@ LB_CHECK_FILE([$LINUX_OBJ/include/generated/autoconf.h],[AUTOCONF_HDIR=generated
         [LB_CHECK_FILE([$LINUX_OBJ/include/linux/autoconf.h],[AUTOCONF_HDIR=linux],
        [AC_MSG_ERROR([Run make config in $LINUX.])])])
         AC_SUBST(AUTOCONF_HDIR)
-LB_CHECK_FILE([$LINUX_OBJ/include/linux/version.h],[],
-       [AC_MSG_ERROR([Run make config in $LINUX.])])
+LB_CHECK_FILE([$LINUX_OBJ/include/linux/version.h], [VERSION_HDIR=linux],
+       [LB_CHECK_FILE([$LINUX_OBJ/include/generated/uapi/linux/version.h],
+               [VERSION_HDIR=generated/uapi/linux],
+               [AC_MSG_ERROR([Run make config in $LINUX.])])
+       ])
+       AC_SUBST(VERSION_HDIR)
 
 # ----------- kconfig.h exists ---------------
 # kernel 3.1, $LINUX/include/linux/kconfig.h is added
@@ -240,7 +244,7 @@ LB_CHECK_FILE([$LINUX_OBJ/include/linux/kconfig.h],
 # tarred up the tree and ran make dep etc. in it, then
 # version.h gets overwritten with a standard linux one.
 
-if grep rhconfig $LINUX_OBJ/include/linux/version.h >/dev/null ; then
+if grep rhconfig $LINUX_OBJ/include/$VERSION_HDIR/version.h >/dev/null ; then
        # This is a clean kernel-source tree, we need to
        # enable extensive workarounds to get this to build
        # modules
@@ -352,7 +356,8 @@ $2
 AC_DEFUN([LB_LINUX_COMPILE_IFELSE],
 [m4_ifvaln([$1], [AC_LANG_CONFTEST([$1])])dnl
 rm -f build/conftest.o build/conftest.mod.c build/conftest.ko
-AS_IF([AC_TRY_COMMAND(cp conftest.c build && make -d [$2] ${LD:+"LD=$LD"} CC="$CC" -f $PWD/build/Makefile LUSTRE_LINUX_CONFIG=$LINUX_CONFIG LINUXINCLUDE="$EXTRA_LNET_INCLUDE -I$LINUX/arch/`echo $target_cpu|sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include -I$LINUX/arch/`echo $target_cpu|sed -e 's/ppc.*/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include/generated -I$LINUX_OBJ/include -I$LINUX/include -I$LINUX_OBJ/include2 -include $CONFIG_INCLUDE" -o tmp_include_depends -o scripts -o include/config/MARKER -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $CROSS_VARS $MODULE_TARGET=$PWD/build) >/dev/null && AC_TRY_COMMAND([$3])],
+SUBARCH=$(echo $target_cpu | sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/')
+AS_IF([AC_TRY_COMMAND(cp conftest.c build && make -d [$2] ${LD:+"LD=$LD"} CC="$CC" -f $PWD/build/Makefile LUSTRE_LINUX_CONFIG=$LINUX_CONFIG LINUXINCLUDE="$EXTRA_LNET_INCLUDE -I$LINUX/arch/$SUBARCH/include -I$LINUX/arch/$SUBARCH/include/generated -Iinclude -I$LINUX/include -Iinclude2 -I$LINUX/include/uapi -I$LINUX/include/generated -I$LINUX/arch/$SUBARCH/include/uapi -Iarch/$SUBARCH/include/generated/uapi -I$LINUX/include/uapi -Iinclude/generated/uapi -include $CONFIG_INCLUDE" -o tmp_include_depends -o scripts -o include/config/MARKER -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $CROSS_VARS $MODULE_TARGET=$PWD/build) >/dev/null && AC_TRY_COMMAND([$3])],
        [$4],
        [_AC_MSG_LOG_CONFTEST
 m4_ifvaln([$5],[$5])dnl])
index 38fce59..8a00872 100644 (file)
@@ -1,9 +1,9 @@
 AC_DEFUN([LDISKFS_AC_LINUX_VERSION], [
        AC_MSG_CHECKING([kernel source version])
 
-       utsrelease1=${LINUX_OBJ}/include/linux/version.h
+       utsrelease1=${LINUX_OBJ}/include/generated/utsrelease.h
        utsrelease2=${LINUX_OBJ}/include/linux/utsrelease.h
-       utsrelease3=${LINUX_OBJ}/include/generated/utsrelease.h
+       utsrelease3=${LINUX_OBJ}/include/linux/version.h
        AS_IF([test -r ${utsrelease1} && fgrep -q UTS_RELEASE ${utsrelease1}], [
                utsrelease=${utsrelease1}
        ], [test -r ${utsrelease2} && fgrep -q UTS_RELEASE ${utsrelease2}], [
@@ -60,10 +60,10 @@ AC_SUBST(RELEASE)
 
 # check is redhat/suse kernels
 AC_MSG_CHECKING([for RedHat kernel version])
-       AS_IF([fgrep -q RHEL_RELEASE ${LINUX_OBJ}/include/linux/version.h], [
+       AS_IF([fgrep -q RHEL_RELEASE ${LINUX_OBJ}/include/$VERSION_HDIR/version.h], [
                RHEL_KERNEL="yes"
                RHEL_RELEASE=$(expr 0$(awk -F \" '/ RHEL_RELEASE / { print [$]2 }' \
-                              ${LINUX_OBJ}/include/linux/version.h) + 1)
+                              ${LINUX_OBJ}/include/$VERSION_HDIR/version.h) + 1)
                KERNEL_VERSION=$(sed -e 's/\(@<:@23@:>@\.@<:@0-9@:>@*\.@<:@0-9@:>@*\).*/\1/' <<< ${LINUXRELEASE})
                RHEL_KERNEL_VERSION=${KERNEL_VERSION}-${RHEL_RELEASE}
                AC_SUBST(RHEL_KERNEL_VERSION)
@@ -184,8 +184,14 @@ LB_CHECK_FILE([$LINUX_OBJ/include/generated/autoconf.h],[AUTOCONF_HDIR=generated
         [LB_CHECK_FILE([$LINUX_OBJ/include/linux/autoconf.h],[AUTOCONF_HDIR=linux],
        [AC_MSG_ERROR([Run make config in $LINUX.])])])
         AC_SUBST(AUTOCONF_HDIR)
-LB_CHECK_FILE([$LINUX_OBJ/include/linux/version.h],[],
-       [AC_MSG_ERROR([Run make config in $LINUX.])])
+LB_CHECK_FILE([$LINUX_OBJ/include/linux/version.h], [VERSION_HDIR=linux],
+       [LB_CHECK_FILE([$LINUX_OBJ/include/generated/uapi/linux/version.h],
+              [VERSION_HDIR=generated/uapi/linux],
+              [AC_MSG_ERROR([Run make config in $LINUX.])])
+       ])
+       AC_SUBST(VERSION_HDIR)
+
+
 
 # ----------- kconfig.h exists ---------------
 # kernel 3.1, $LINUX/include/linux/kconfig.h is added
@@ -202,7 +208,7 @@ LB_CHECK_FILE([$LINUX_OBJ/include/linux/kconfig.h],
 # tarred up the tree and ran make dep etc. in it, then
 # version.h gets overwritten with a standard linux one.
 
-if grep rhconfig $LINUX_OBJ/include/linux/version.h >/dev/null ; then
+if grep rhconfig $LINUX_OBJ/include/$VERSION_HDIR/version.h >/dev/null ; then
        # This is a clean kernel-source tree, we need to
        # enable extensive workarounds to get this to build
        # modules
index 61796c9..4d2bb4a 100644 (file)
@@ -43,8 +43,10 @@ sub get_kernver($$)
     my $objdir = shift;
 
     my $ver = new IO::File;
-    if (!$ver->open("$objdir/include/linux/utsrelease.h") &&
+    if (!$ver->open("$objdir/include/generated/utsrelease.h") &&
+       !$ver->open("$objdir/include/linux/utsrelease.h") &&
         !$ver->open("$objdir/include/linux/version.h") &&
+       !$ver->open("$dir/include/generated/utsrelease.h") &&
         !$ver->open("$dir/include/linux/utsrelease.h") &&
         !$ver->open("$dir/include/linux/version.h")) {
             die "Run make dep on '$dir'\n";