Downgrade tty_intr_event from a global

It can be static within uart_tty.c. It is an open question whether there
remains any real benefit to having uart instances share a swi thread.

Reviewed by:	imp, markj, jhb
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D36938
This commit is contained in:
Mitchell Horne 2022-10-12 13:36:08 -03:00
parent 96b76a6a1e
commit 05b727fee5
4 changed files with 6 additions and 12 deletions

View File

@ -35,7 +35,6 @@
.In sys/param.h
.In sys/bus.h
.In sys/interrupt.h
.Vt "extern struct intr_event *tty_intr_event" ;
.Vt "extern struct intr_event *clk_intr_event" ;
.Ft int
.Fo swi_add
@ -148,16 +147,10 @@ On platforms allowing IPI sending from NMI context it immediately wakes
via the IPI, otherwise it works just like SWI_DELAY.
.El
.Pp
The
.Va tty_intr_event
and
.Va clk_intr_event
variables contain pointers to the software interrupt handlers for the tty and
clock software interrupts, respectively.
.Va tty_intr_event
is used to hang tty software interrupt handlers off of the same thread.
.Va clk_intr_event
is used to hang delayed handlers off of the clock interrupt, and is invoked
is a pointer to the
.Vt struct intr_event
used to hang delayed handlers off of the clock interrupt, and is invoked
directly by
.Xr hardclock 9 .
.Sh RETURN VALUES

View File

@ -77,6 +77,9 @@ CONSOLE_DRIVER(
static struct uart_devinfo uart_console;
/* TTY swi(9) event. Allows all uart soft handlers to share one ithread. */
static struct intr_event *tty_intr_event;
static void
uart_cnprobe(struct consdev *cp)
{

View File

@ -89,7 +89,6 @@ struct intr_entropy {
};
struct intr_event *clk_intr_event;
struct intr_event *tty_intr_event;
struct proc *intrproc;
static MALLOC_DEFINE(M_ITHREAD, "ithread", "Interrupt Threads");

View File

@ -153,7 +153,6 @@ struct intr_event {
struct proc;
extern struct intr_event *clk_intr_event;
extern struct intr_event *tty_intr_event;
/* Counts and names for statistics (defined in MD code). */
extern u_long *intrcnt; /* counts for each device and stray */