diff --git a/lustre/ChangeLog b/lustre/ChangeLog
index 97c7d5f91bfa17bc4ecc0748d13f2bdc26579d0d..0967934c999e9b8768dad62dbe2acd83477c45d1 100644
--- a/lustre/ChangeLog
+++ b/lustre/ChangeLog
@@ -25,6 +25,11 @@ tbd Sun Microsystems, Inc.
 	  	'tunefs.lustre --param="mdt.quota_type=ug1" $MDTDEV'.
 	  For more information, please refer to bugzilla 13904.
 
+Severity   : normal
+Bugzilla   : 15278
+Description: fix build on ppc32
+Details    : compile code with -m64 flag produce wrong object file for ppc32.
+
 Severity   : normal
 Bugzilla   : 14803
 Description: Don't update lov_desc members until making sure they are valid
diff --git a/lustre/autoconf/lustre-core.m4 b/lustre/autoconf/lustre-core.m4
index 1a8116a5cde8736368b8bfe4289f4a1be635c54d..527b8001d453f692bf3119b81df5d82295b7642c 100644
--- a/lustre/autoconf/lustre-core.m4
+++ b/lustre/autoconf/lustre-core.m4
@@ -1148,8 +1148,7 @@ AC_DEFINE(HAVE___D_MOVE, 1,
 # matter what symbol is exported, the kernel #defines node_to_cpumask
 # to the appropriate function and that's what we use.
 AC_DEFUN([LC_EXPORT_NODE_TO_CPUMASK],
-         [LB_LINUX_ARCH
-          LB_CHECK_SYMBOL_EXPORT([node_to_cpumask],
+         [LB_CHECK_SYMBOL_EXPORT([node_to_cpumask],
                                  [arch/$LINUX_ARCH/mm/numa.c],
                                  [AC_DEFINE(HAVE_NODE_TO_CPUMASK, 1,
                                             [node_to_cpumask is exported by