summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyle Evans <kevans@FreeBSD.org>2020-04-17 18:34:49 +0000
committerKyle Evans <kevans@FreeBSD.org>2020-04-17 18:34:49 +0000
commit23d5326823c740f2ddcd3268216d0a59b374457c (patch)
treef6d0e247891d6403320a9da2f4d2bab4abca18e2
parent490befd40a647bb9108c3f71fccb50137ac9a254 (diff)
Notes
-rw-r--r--sys/dev/altera/jtag_uart/altera_jtag_uart_tty.c6
-rw-r--r--sys/dev/bvm/bvm_console.c4
-rw-r--r--sys/dev/cfe/cfe_console.c2
-rw-r--r--sys/dev/ofw/ofw_console.c2
-rw-r--r--sys/dev/rp/rp.c2
-rw-r--r--sys/dev/xen/console/xen_console.c2
-rw-r--r--sys/kern/tty.c26
-rw-r--r--sys/kern/tty_info.c2
-rw-r--r--sys/kern/tty_ttydisc.c24
-rw-r--r--sys/netgraph/ng_tty.c4
-rw-r--r--sys/sys/tty.h5
-rw-r--r--sys/sys/ttydevsw.h16
-rw-r--r--sys/sys/ttydisc.h4
-rw-r--r--sys/sys/ttyhook.h16
14 files changed, 59 insertions, 56 deletions
diff --git a/sys/dev/altera/jtag_uart/altera_jtag_uart_tty.c b/sys/dev/altera/jtag_uart/altera_jtag_uart_tty.c
index a987639b7e5c..611e5778c6b4 100644
--- a/sys/dev/altera/jtag_uart/altera_jtag_uart_tty.c
+++ b/sys/dev/altera/jtag_uart/altera_jtag_uart_tty.c
@@ -266,7 +266,7 @@ aju_handle_input(struct altera_jtag_uart_softc *sc, struct tty *tp)
{
int c;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
AJU_LOCK_ASSERT(sc);
while (aju_readable(sc)) {
@@ -298,7 +298,7 @@ aju_handle_output(struct altera_jtag_uart_softc *sc, struct tty *tp)
uint32_t v;
uint8_t ch;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
AJU_LOCK_ASSERT(sc);
AJU_UNLOCK(sc);
@@ -364,7 +364,7 @@ aju_outwakeup(struct tty *tp)
{
struct altera_jtag_uart_softc *sc = tty_softc(tp);
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
AJU_LOCK(sc);
aju_handle_output(sc, tp);
diff --git a/sys/dev/bvm/bvm_console.c b/sys/dev/bvm/bvm_console.c
index 6ce8c21f40f6..bc66dfa3bcb5 100644
--- a/sys/dev/bvm/bvm_console.c
+++ b/sys/dev/bvm/bvm_console.c
@@ -130,7 +130,7 @@ static void
bvm_tty_close(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
callout_stop(&bvm_timer);
}
@@ -159,7 +159,7 @@ bvm_timeout(void *v)
tp = (struct tty *)v;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
while ((c = bvm_cngetc(NULL)) != -1)
ttydisc_rint(tp, c, 0);
ttydisc_rint_done(tp);
diff --git a/sys/dev/cfe/cfe_console.c b/sys/dev/cfe/cfe_console.c
index 44daa34ebea1..d8d74b9a2b83 100644
--- a/sys/dev/cfe/cfe_console.c
+++ b/sys/dev/cfe/cfe_console.c
@@ -142,7 +142,7 @@ cfe_timeout(void *v)
tp = (struct tty *)v;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
while ((c = cfe_cngetc(NULL)) != -1)
ttydisc_rint(tp, c, 0);
ttydisc_rint_done(tp);
diff --git a/sys/dev/ofw/ofw_console.c b/sys/dev/ofw/ofw_console.c
index 8f3061bde89d..e4ed18b2d545 100644
--- a/sys/dev/ofw/ofw_console.c
+++ b/sys/dev/ofw/ofw_console.c
@@ -152,7 +152,7 @@ ofw_timeout(void *v)
tp = (struct tty *)v;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
while ((c = ofw_cngetc(NULL)) != -1)
ttydisc_rint(tp, c, 0);
ttydisc_rint_done(tp);
diff --git a/sys/dev/rp/rp.c b/sys/dev/rp/rp.c
index 74f08edb1808..390ab733d2ae 100644
--- a/sys/dev/rp/rp.c
+++ b/sys/dev/rp/rp.c
@@ -674,7 +674,7 @@ static void rp_do_poll(void *arg)
rp = arg;
tp = rp->rp_tty;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
ctl = rp->rp_ctlp;
CtlMask = ctl->ctlmask(ctl);
if (CtlMask & (1 << rp->rp_aiop)) {
diff --git a/sys/dev/xen/console/xen_console.c b/sys/dev/xen/console/xen_console.c
index 7d10c1871e98..8e366bba2319 100644
--- a/sys/dev/xen/console/xen_console.c
+++ b/sys/dev/xen/console/xen_console.c
@@ -515,7 +515,7 @@ xencons_tx(struct tty *tp)
cons = tty_softc(tp);
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
/*
* Don't transmit any character if the buffer is full. Otherwise,
diff --git a/sys/kern/tty.c b/sys/kern/tty.c
index 77e268c451a7..dbf924871362 100644
--- a/sys/kern/tty.c
+++ b/sys/kern/tty.c
@@ -228,7 +228,7 @@ static void
ttydev_leave(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tty_opened(tp) || tp->t_flags & TF_OPENCLOSE) {
/* Device is still opened somewhere. */
@@ -413,7 +413,7 @@ static __inline int
tty_is_ctty(struct tty *tp, struct proc *p)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
return (p->p_session == tp->t_session && p->p_flag & P_CONTROLT);
}
@@ -427,7 +427,7 @@ tty_wait_background(struct tty *tp, struct thread *td, int sig)
int error;
MPASS(sig == SIGTTIN || sig == SIGTTOU);
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
for (;;) {
PROC_LOCK(p);
@@ -697,7 +697,7 @@ tty_kqops_read_event(struct knote *kn, long hint __unused)
{
struct tty *tp = kn->kn_hook;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tty_gone(tp) || tp->t_flags & TF_ZOMBIE) {
kn->kn_flags |= EV_EOF;
@@ -721,7 +721,7 @@ tty_kqops_write_event(struct knote *kn, long hint __unused)
{
struct tty *tp = kn->kn_hook;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tty_gone(tp)) {
kn->kn_flags |= EV_EOF;
@@ -1122,7 +1122,7 @@ tty_rel_free(struct tty *tp)
{
struct cdev *dev;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
#define TF_ACTIVITY (TF_GONE|TF_OPENED|TF_HOOK|TF_OPENCLOSE)
if (tp->t_sessioncnt != 0 || (tp->t_flags & TF_ACTIVITY) != TF_GONE) {
@@ -1153,7 +1153,7 @@ tty_rel_pgrp(struct tty *tp, struct pgrp *pg)
{
MPASS(tp->t_sessioncnt > 0);
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tp->t_pgrp == pg)
tp->t_pgrp = NULL;
@@ -1180,7 +1180,7 @@ void
tty_rel_gone(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
/* Simulate carrier removal. */
@@ -1268,7 +1268,7 @@ static void
tty_to_xtty(struct tty *tp, struct xtty *xt)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
xt->xt_size = sizeof(struct xtty);
xt->xt_insize = ttyinq_getsize(&tp->t_inq);
@@ -1460,7 +1460,7 @@ tty_signal_sessleader(struct tty *tp, int sig)
{
struct proc *p;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(sig >= 1 && sig < NSIG);
/* Make signals start output again. */
@@ -1479,7 +1479,7 @@ tty_signal_pgrp(struct tty *tp, int sig)
{
ksiginfo_t ksi;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(sig >= 1 && sig < NSIG);
/* Make signals start output again. */
@@ -1957,7 +1957,7 @@ tty_ioctl(struct tty *tp, u_long cmd, void *data, int fflag, struct thread *td)
{
int error;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tty_gone(tp))
return (ENXIO);
@@ -2124,7 +2124,7 @@ void
ttyhook_unregister(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(tp->t_flags & TF_HOOK);
/* Disconnect the hook. */
diff --git a/sys/kern/tty_info.c b/sys/kern/tty_info.c
index c755f7530b01..7b02092cac9a 100644
--- a/sys/kern/tty_info.c
+++ b/sys/kern/tty_info.c
@@ -266,7 +266,7 @@ tty_info(struct tty *tp)
char comm[MAXCOMLEN + 1];
struct rusage ru;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tty_checkoutq(tp) == 0)
return;
diff --git a/sys/kern/tty_ttydisc.c b/sys/kern/tty_ttydisc.c
index 25cc380a866f..0e3c785545a1 100644
--- a/sys/kern/tty_ttydisc.c
+++ b/sys/kern/tty_ttydisc.c
@@ -326,7 +326,7 @@ ttydisc_read(struct tty *tp, struct uio *uio, int ioflag)
{
int error;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (uio->uio_resid == 0)
return (0);
@@ -458,7 +458,7 @@ ttydisc_write(struct tty *tp, struct uio *uio, int ioflag)
int error = 0;
unsigned int oblen = 0;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tp->t_flags & TF_ZOMBIE)
return (EIO);
@@ -573,7 +573,7 @@ done:
void
ttydisc_optimize(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (ttyhook_hashook(tp, rint_bypass)) {
tp->t_flags |= TF_BYPASS;
@@ -594,7 +594,7 @@ void
ttydisc_modem(struct tty *tp, int open)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (open)
cv_broadcast(&tp->t_dcdwait);
@@ -842,7 +842,7 @@ ttydisc_rint(struct tty *tp, char c, int flags)
char ob[3] = { 0xff, 0x00 };
size_t ol;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
atomic_add_long(&tty_nin, 1);
@@ -1085,7 +1085,7 @@ ttydisc_rint_bypass(struct tty *tp, const void *buf, size_t len)
{
size_t ret;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(tp->t_flags & TF_BYPASS);
@@ -1106,7 +1106,7 @@ void
ttydisc_rint_done(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (ttyhook_hashook(tp, rint_done))
ttyhook_rint_done(tp);
@@ -1122,7 +1122,7 @@ ttydisc_rint_poll(struct tty *tp)
{
size_t l;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (ttyhook_hashook(tp, rint_poll))
return ttyhook_rint_poll(tp);
@@ -1165,7 +1165,7 @@ size_t
ttydisc_getc(struct tty *tp, void *buf, size_t len)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tp->t_flags & TF_STOPPED)
return (0);
@@ -1192,7 +1192,7 @@ ttydisc_getc_uio(struct tty *tp, struct uio *uio)
size_t len;
char buf[TTY_STACKBUF];
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tp->t_flags & TF_STOPPED)
return (0);
@@ -1233,7 +1233,7 @@ size_t
ttydisc_getc_poll(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tp->t_flags & TF_STOPPED)
return (0);
@@ -1255,7 +1255,7 @@ tty_putstrn(struct tty *tp, const char *p, size_t n)
{
size_t i;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (tty_gone(tp))
return (-1);
diff --git a/sys/netgraph/ng_tty.c b/sys/netgraph/ng_tty.c
index 31d7c3125888..6dcd262a47e2 100644
--- a/sys/netgraph/ng_tty.c
+++ b/sys/netgraph/ng_tty.c
@@ -412,7 +412,7 @@ ngt_rint_bypass(struct tty *tp, const void *buf, size_t len)
size_t total = 0;
int error = 0, length;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (sc->hook == NULL)
return (0);
@@ -459,7 +459,7 @@ ngt_rint(struct tty *tp, char c, int flags)
struct mbuf *m;
int error = 0;
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
if (sc->hook == NULL)
return (0);
diff --git a/sys/sys/tty.h b/sys/sys/tty.h
index 8b458cf115dc..4ee76b343c3a 100644
--- a/sys/sys/tty.h
+++ b/sys/sys/tty.h
@@ -173,9 +173,12 @@ void tty_rel_gone(struct tty *tp);
#define tty_lock(tp) mtx_lock((tp)->t_mtx)
#define tty_unlock(tp) mtx_unlock((tp)->t_mtx)
#define tty_lock_owned(tp) mtx_owned((tp)->t_mtx)
-#define tty_lock_assert(tp,ma) mtx_assert((tp)->t_mtx, (ma))
+#define tty_assert_locked(tp) mtx_assert((tp)->t_mtx, MA_OWNED)
#define tty_getlock(tp) ((tp)->t_mtx)
+/* XXX Should migrate users to tty_assert_locked! */
+#define tty_lock_assert(tp, ma) mtx_assert((tp)->t_mtx, (ma))
+
/* Device node creation. */
int tty_makedevf(struct tty *tp, struct ucred *cred, int flags,
const char *fmt, ...) __printflike(4, 5);
diff --git a/sys/sys/ttydevsw.h b/sys/sys/ttydevsw.h
index b189335c5e9d..d6b544e80323 100644
--- a/sys/sys/ttydevsw.h
+++ b/sys/sys/ttydevsw.h
@@ -86,7 +86,7 @@ static __inline int
ttydevsw_open(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
return (tp->t_devsw->tsw_open(tp));
@@ -96,7 +96,7 @@ static __inline void
ttydevsw_close(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
tp->t_devsw->tsw_close(tp);
@@ -106,7 +106,7 @@ static __inline void
ttydevsw_outwakeup(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
/* Prevent spurious wakeups. */
@@ -120,7 +120,7 @@ static __inline void
ttydevsw_inwakeup(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
/* Prevent spurious wakeups. */
@@ -134,7 +134,7 @@ static __inline int
ttydevsw_ioctl(struct tty *tp, u_long cmd, caddr_t data, struct thread *td)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
return (tp->t_devsw->tsw_ioctl(tp, cmd, data, td));
@@ -145,7 +145,7 @@ ttydevsw_cioctl(struct tty *tp, int unit, u_long cmd, caddr_t data,
struct thread *td)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
return (tp->t_devsw->tsw_cioctl(tp, unit, cmd, data, td));
@@ -183,7 +183,7 @@ static __inline void
ttydevsw_pktnotify(struct tty *tp, char event)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
tp->t_devsw->tsw_pktnotify(tp, event);
@@ -202,7 +202,7 @@ static __inline bool
ttydevsw_busy(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
return (tp->t_devsw->tsw_busy(tp));
diff --git a/sys/sys/ttydisc.h b/sys/sys/ttydisc.h
index 2ab0c05c91b2..295a92c36842 100644
--- a/sys/sys/ttydisc.h
+++ b/sys/sys/ttydisc.h
@@ -72,7 +72,7 @@ static __inline size_t
ttydisc_read_poll(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
return ttyinq_bytescanonicalized(&tp->t_inq);
}
@@ -81,7 +81,7 @@ static __inline size_t
ttydisc_write_poll(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
return ttyoutq_bytesleft(&tp->t_outq);
}
diff --git a/sys/sys/ttyhook.h b/sys/sys/ttyhook.h
index 0697a4886843..e4bd7ac53d1b 100644
--- a/sys/sys/ttyhook.h
+++ b/sys/sys/ttyhook.h
@@ -78,7 +78,7 @@ void ttyhook_unregister(struct tty *);
static __inline int
ttyhook_rint(struct tty *tp, char c, int flags)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
return tp->t_hook->th_rint(tp, c, flags);
@@ -87,7 +87,7 @@ ttyhook_rint(struct tty *tp, char c, int flags)
static __inline size_t
ttyhook_rint_bypass(struct tty *tp, const void *buf, size_t len)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
return tp->t_hook->th_rint_bypass(tp, buf, len);
@@ -96,7 +96,7 @@ ttyhook_rint_bypass(struct tty *tp, const void *buf, size_t len)
static __inline void
ttyhook_rint_done(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
tp->t_hook->th_rint_done(tp);
@@ -105,7 +105,7 @@ ttyhook_rint_done(struct tty *tp)
static __inline size_t
ttyhook_rint_poll(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
return tp->t_hook->th_rint_poll(tp);
@@ -114,7 +114,7 @@ ttyhook_rint_poll(struct tty *tp)
static __inline size_t
ttyhook_getc_inject(struct tty *tp, void *buf, size_t len)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
return tp->t_hook->th_getc_inject(tp, buf, len);
@@ -123,7 +123,7 @@ ttyhook_getc_inject(struct tty *tp, void *buf, size_t len)
static __inline void
ttyhook_getc_capture(struct tty *tp, const void *buf, size_t len)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
tp->t_hook->th_getc_capture(tp, buf, len);
@@ -132,7 +132,7 @@ ttyhook_getc_capture(struct tty *tp, const void *buf, size_t len)
static __inline size_t
ttyhook_getc_poll(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
MPASS(!tty_gone(tp));
return tp->t_hook->th_getc_poll(tp);
@@ -141,7 +141,7 @@ ttyhook_getc_poll(struct tty *tp)
static __inline void
ttyhook_close(struct tty *tp)
{
- tty_lock_assert(tp, MA_OWNED);
+ tty_assert_locked(tp);
tp->t_hook->th_close(tp);
}