aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Macy <[email protected]>2019-12-03 09:49:40 -0800
committerBrian Behlendorf <[email protected]>2019-12-03 09:49:40 -0800
commit74d1d749596d9d60723e05be3a5e24600721a32c (patch)
tree861b52b4c81c660d2aca32c4b2f96a62fc183668
parente69bb31b71f60b338fa5510dc48de298f394ad73 (diff)
Move linux qsort def to platform header
Moving qsort to the platform header allows each platform to provide an appropriate sorting implementation. Reviewed-by: Allan Jude <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Matt Macy <[email protected]> Closes #9663
-rw-r--r--include/os/linux/spl/sys/sysmacros.h6
-rw-r--r--module/lua/ltablib.c4
-rw-r--r--module/zcommon/zprop_common.c6
3 files changed, 8 insertions, 8 deletions
diff --git a/include/os/linux/spl/sys/sysmacros.h b/include/os/linux/spl/sys/sysmacros.h
index c9d33f407..7314588bc 100644
--- a/include/os/linux/spl/sys/sysmacros.h
+++ b/include/os/linux/spl/sys/sysmacros.h
@@ -192,7 +192,11 @@ extern void spl_cleanup(void);
#define SET_ERROR(err) \
(__set_error(__FILE__, __func__, __LINE__, err), err)
-#if defined(_KERNEL) && !defined(_KMEMUSER) && !defined(offsetof)
+#include <linux/sort.h>
+#define qsort(base, num, size, cmp) \
+ sort(base, num, size, cmp, NULL)
+
+#if !defined(_KMEMUSER) && !defined(offsetof)
/* avoid any possibility of clashing with <stddef.h> version */
diff --git a/module/lua/ltablib.c b/module/lua/ltablib.c
index be5b6375e..51cafffaa 100644
--- a/module/lua/ltablib.c
+++ b/module/lua/ltablib.c
@@ -244,7 +244,7 @@ static void auxsort (lua_State *L, int l, int u) {
} /* repeat the routine for the larger one */
}
-static int sort (lua_State *L) {
+static int tsort (lua_State *L) {
int n = aux_getn(L, 1);
luaL_checkstack(L, 40, ""); /* assume array is smaller than 2^40 */
if (!lua_isnoneornil(L, 2)) /* is there a 2nd argument? */
@@ -266,7 +266,7 @@ static const luaL_Reg tab_funcs[] = {
{"pack", pack},
{"unpack", unpack},
{"remove", tremove},
- {"sort", sort},
+ {"sort", tsort},
{NULL, NULL}
};
diff --git a/module/zcommon/zprop_common.c b/module/zcommon/zprop_common.c
index 8416983fd..c4256c66f 100644
--- a/module/zcommon/zprop_common.c
+++ b/module/zcommon/zprop_common.c
@@ -41,11 +41,7 @@
#include "zfs_prop.h"
#include "zfs_deleg.h"
-#if defined(_KERNEL)
-#include <linux/sort.h>
-#define qsort(base, num, size, cmp) \
- sort(base, num, size, cmp, NULL)
-#else
+#if !defined(_KERNEL)
#include <stdlib.h>
#include <string.h>
#include <ctype.h>