Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 10 Jun 2011 18:56:12 +0000 (UTC)
From:      John Baldwin <jhb@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/kern subr_smp.c
Message-ID:  <201106101856.p5AIuOkp056335@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
jhb         2011-06-10 18:56:12 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_7)
    sys/kern             subr_smp.c 
  Log:
  SVN rev 222939 on 2011-06-10 18:56:12Z by jhb
  
  MFC 222032:
  Fix a race in the SMP rendezvous code.  Specifically, the write by the
  last CPU to to finish the rendezvous action may become visible to
  different CPUs at different times.  As a result, the CPU that initiated
  the rendezvous may exit the rendezvous and drop the lock allowing another
  rendezvous to be initiated on the same CPU or a different CPU.  In that
  case the exit sentinel may be cleared before all CPUs have noticed causing
  those CPUs to hang forever.
  
  Workaround this by using a generation count to notice when this race
  occurs and to exit the rendezvous in that case.
  
  Revision   Changes    Path
  1.201.2.8  +48 -15    src/sys/kern/subr_smp.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201106101856.p5AIuOkp056335>