svn commit: r334713 - in head/sys/compat/linuxkpi/common: include/linux src
Hans Petter Selasky
hselasky at FreeBSD.org
Wed Jun 6 14:59:25 UTC 2018
Author: hselasky
Date: Wed Jun 6 14:59:23 2018
New Revision: 334713
URL: https://svnweb.freebsd.org/changeset/base/334713
Log:
Implement the init_wait_entry() function macro in the LinuxKPI.
Submitted by: Johannes Lundberg <johalun0 at gmail.com>
MFC after: 1 week
Sponsored by: Mellanox Technologies
Sponsored by: Limelight Networks
Modified:
head/sys/compat/linuxkpi/common/include/linux/wait.h
head/sys/compat/linuxkpi/common/src/linux_schedule.c
Modified: head/sys/compat/linuxkpi/common/include/linux/wait.h
==============================================================================
--- head/sys/compat/linuxkpi/common/include/linux/wait.h Wed Jun 6 13:59:51 2018 (r334712)
+++ head/sys/compat/linuxkpi/common/include/linux/wait.h Wed Jun 6 14:59:23 2018 (r334713)
@@ -106,8 +106,11 @@ extern wait_queue_func_t default_wake_function;
INIT_LIST_HEAD(&(wqh)->task_list); \
} while (0)
+void linux_init_wait_entry(wait_queue_t *, int);
void linux_wake_up(wait_queue_head_t *, unsigned int, int, bool);
+#define init_wait_entry(wq, flags) \
+ linux_init_wait_entry(wq, flags)
#define wake_up(wqh) \
linux_wake_up(wqh, TASK_NORMAL, 1, false)
#define wake_up_all(wqh) \
Modified: head/sys/compat/linuxkpi/common/src/linux_schedule.c
==============================================================================
--- head/sys/compat/linuxkpi/common/src/linux_schedule.c Wed Jun 6 13:59:51 2018 (r334712)
+++ head/sys/compat/linuxkpi/common/src/linux_schedule.c Wed Jun 6 14:59:23 2018 (r334713)
@@ -188,6 +188,17 @@ default_wake_function(wait_queue_t *wq, unsigned int s
}
void
+linux_init_wait_entry(wait_queue_t *wq, int flags)
+{
+
+ memset(wq, 0, sizeof(*wq));
+ wq->flags = flags;
+ wq->private = current;
+ wq->func = autoremove_wake_function;
+ INIT_LIST_HEAD(&wq->task_list);
+}
+
+void
linux_wake_up(wait_queue_head_t *wqh, unsigned int state, int nr, bool locked)
{
wait_queue_t *pos, *next;
More information about the svn-src-head
mailing list