Date: Sun, 27 Mar 2011 19:56:55 +0000 (UTC) From: Mikolaj Golub <trociny@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/geom/gate g_gate.c g_gate.h Message-ID: <201103271957.p2RJvK4t078609@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
trociny 2011-03-27 19:56:55 UTC
FreeBSD src repository
Modified files:
sys/geom/gate g_gate.c g_gate.h
Log:
SVN rev 220062 on 2011-03-27 19:56:55Z by trociny
In g_gate_create() there is a window between when g_gate_softc is
registered in g_gate_units array and when its sc_provider field is
filled. If during this period g_gate_units is accessed by another
thread that is checking for provider name collision the crash is
possible.
Fix this by adding sc_name field to struct g_gate_softc. In
g_gate_create() when g_gate_softc is created but sc_provider is still
not sc_name points to provider name stored in the local array.
Approved by: pjd (mentor)
Reported by: Freddie Cash <fjwcash@gmail.com>
MFC after: 1 week
Revision Changes Path
1.33 +5 -1 src/sys/geom/gate/g_gate.c
1.12 +1 -1 src/sys/geom/gate/g_gate.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201103271957.p2RJvK4t078609>
