Page MenuHomeFreeBSD

D45898.diff
No OneTemporary

D45898.diff

diff --git a/sys/dev/sound/pcm/sndstat.c b/sys/dev/sound/pcm/sndstat.c
--- a/sys/dev/sound/pcm/sndstat.c
+++ b/sys/dev/sound/pcm/sndstat.c
@@ -456,6 +456,8 @@
goto done;
}
+ CHN_LOCK(c);
+
nvlist_add_string(cdi, SNDST_DSPS_SOUND4_CHAN_NAME, c->name);
nvlist_add_string(cdi, SNDST_DSPS_SOUND4_CHAN_PARENTCHAN,
c->parentchannel != NULL ? c->parentchannel->name : "");
@@ -537,6 +539,8 @@
sbuf_printf(&sb, "%s]",
(c->direction == PCMDIR_REC) ? "userland" : "hardware");
+ CHN_UNLOCK(c);
+
sbuf_finish(&sb);
nvlist_add_string(cdi, SNDST_DSPS_SOUND4_CHAN_FEEDERCHAIN,
sbuf_data(&sb));
@@ -1230,6 +1234,8 @@
KASSERT(c->bufhard != NULL && c->bufsoft != NULL,
("hosed pcm channel setup"));
+ CHN_LOCK(c);
+
sbuf_printf(s, "\n\t");
sbuf_printf(s, "%s[%s]: ",
@@ -1321,6 +1327,8 @@
}
sbuf_printf(s, "{%s}",
(c->direction == PCMDIR_REC) ? "userland" : "hardware");
+
+ CHN_UNLOCK(c);
}
return (0);

File Metadata

Mime Type
text/plain
Expires
Thu, Jul 2, 11:10 PM (3 h, 6 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34604981
Default Alt Text
D45898.diff (978 B)

Event Timeline