aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Petter Selasky <hselasky@FreeBSD.org>2021-03-10 09:50:01 +0000
committerHans Petter Selasky <hselasky@FreeBSD.org>2021-03-23 10:51:22 +0000
commit093204e2d032d53d9f29d412f6953c9315f0d405 (patch)
treeb330ea801390f5da2d8b7649b413568163476e57
parentdd426d67647d8c819bf279040a0129af50cbdb66 (diff)
downloadsrc-093204e2d032d53d9f29d412f6953c9315f0d405.tar.gz
src-093204e2d032d53d9f29d412f6953c9315f0d405.zip
MFC d1cbe7908986:
Allocating the LinuxKPI current structure from an interrupt thread must be done using the M_NOWAIT flag after 1ae20f7c70ea . Sponsored by: Mellanox Technologies // NVIDIA Networking (cherry picked from commit d1cbe79089868226625c12ef49f51214d79aa427)
-rw-r--r--sys/compat/linuxkpi/common/src/linux_compat.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/compat/linuxkpi/common/src/linux_compat.c b/sys/compat/linuxkpi/common/src/linux_compat.c
index 2ad936311204..707c5e47512e 100644
--- a/sys/compat/linuxkpi/common/src/linux_compat.c
+++ b/sys/compat/linuxkpi/common/src/linux_compat.c
@@ -2384,7 +2384,8 @@ linux_irq_handler(void *ent)
{
struct irq_ent *irqe;
- linux_set_current(curthread);
+ if (linux_set_current_flags(curthread, M_NOWAIT))
+ return;
irqe = ent;
irqe->handler(irqe->irq, irqe->arg);