Require gawk the usermode helper fails with awk

For some reason when awk invoked by the usermode helper the command
always fails.  Interestingly gawk does not suffer from this problem
which is why I never observed this failure since the distro I tested
with all had gawk installed instead of awk.  Anyway, the simplest
thing to do here is to just make gawk mandatory.  I've added a
configure check for gawk specifically and have updated the command
to call gawk not awk.
This commit is contained in:
Brian Behlendorf 2010-07-01 16:20:11 -07:00
parent 7119bf7044
commit 1814251453
3 changed files with 39 additions and 4 deletions

View File

@ -191,7 +191,16 @@ AC_DEFUN([SPL_AC_KERNEL], [
dnl #
dnl # Default SPL user configuration
dnl #
AC_DEFUN([SPL_AC_CONFIG_USER], [])
AC_DEFUN([SPL_AC_CONFIG_USER], [
dnl # Explicitly check for gawk, we require it for the the usermode
dnl # helper. For some reason the standard awk command does not
dnl # behave correctly when invoked from the usermode helper.
AS_IF([test "x$AWK" != xgawk], [
AC_MSG_ERROR([
*** Required util gawk missing. Please install the required
*** gawk package for your distribution and try again.])
])
])
AC_DEFUN([SPL_AC_LICENSE], [
AC_MSG_CHECKING([spl license])

30
configure vendored
View File

@ -14988,7 +14988,20 @@ _ACEOF
;;
user) ;;
user)
if test "x$AWK" != xgawk; then
{ { $as_echo "$as_me:$LINENO: error:
*** Required util gawk missing. Please install the required
*** gawk package for your distribution and try again." >&5
$as_echo "$as_me: error:
*** Required util gawk missing. Please install the required
*** gawk package for your distribution and try again." >&2;}
{ (exit 1); exit 1; }; }
fi
;;
all)
@ -18501,7 +18514,20 @@ _ACEOF
;;
if test "x$AWK" != xgawk; then
{ { $as_echo "$as_me:$LINENO: error:
*** Required util gawk missing. Please install the required
*** gawk package for your distribution and try again." >&5
$as_echo "$as_me: error:
*** Required util gawk missing. Please install the required
*** gawk package for your distribution and try again." >&2;}
{ (exit 1); exit 1; }; }
fi
;;
srpm) ;;
*)
{ $as_echo "$as_me:$LINENO: result: Error!" >&5

View File

@ -338,7 +338,7 @@ EXPORT_SYMBOL(zone_get_hostid);
* the requested address.
*/
#define GET_KALLSYMS_ADDR_CMD \
"awk '{ if ( $3 == \"kallsyms_lookup_name\") { print $1 } }' " \
"gawk '{ if ( $3 == \"kallsyms_lookup_name\") { print $1 } }' " \
"/proc/kallsyms >/proc/sys/kernel/spl/kallsyms_lookup_name"
static int