From 027f39c0c19d0dde170233ac41f9ecf7c8f0d339 Mon Sep 17 00:00:00 2001 From: Jim Huang Date: Thu, 23 Sep 2021 00:36:42 +0800 Subject: [PATCH] Denote LWN hyperlink --- lkmpg.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lkmpg.tex b/lkmpg.tex index 032b6df..9606558 100644 --- a/lkmpg.tex +++ b/lkmpg.tex @@ -1583,7 +1583,7 @@ The tasklet callback runs in atomic context, inside a software interrupt, meanin Also, the kernel only allows one instance of any given tasklet to be running at any given time; multiple different tasklet callbacks can run in parallel. In recent kernels, tasklets can be replaced by workqueues, timers, or threaded interrupts.\footnote{The goal of threaded interrupts is to push more of the work to separate threads, so that the minimum needed for acknowledging an interrupt is reduced, and therefore the time spent handling the interrupt (where it can't handle any other interrupts at the same time) is reduced. -See https://lwn.net/Articles/302043/} +See \url{https://lwn.net/Articles/302043/}.} While the removal of tasklets remains a longer-term goal, the current kernel contains more than a hundred uses of tasklets. Now developers are proceeding with the API changes and the macro \cpp|DECLARE_TASKLET_OLD| exists for compatibility. For further information, see \url{https://lwn.net/Articles/830964/}. -- 2.39.5