Skip site navigation (1)Skip section navigation (2)
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>