Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 Aug 2009 17:09:45 +0000 (UTC)
From:      Attilio Rao <attilio@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src UPDATING src/sys/amd64/amd64 local_apic.c mp_machdep.c trap.c src/sys/amd64/conf GENERIC NOTES XENHVM src/sys/amd64/include apicvar.h smp.h src/sys/conf options.amd64 options.i386 options.pc98 src/sys/i386/conf GENERIC NOTES ...
Message-ID:  <200908131725.n7DHPvRf020830@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
attilio     2009-08-13 17:09:45 UTC

  FreeBSD src repository

  Modified files:
    .                    UPDATING 
    sys/amd64/amd64      local_apic.c mp_machdep.c trap.c 
    sys/amd64/conf       GENERIC NOTES XENHVM 
    sys/amd64/include    apicvar.h smp.h 
    sys/conf             options.amd64 options.i386 options.pc98 
    sys/i386/conf        GENERIC NOTES 
    sys/i386/i386        local_apic.c mp_machdep.c trap.c 
    sys/i386/include     apicvar.h smp.h 
    sys/i386/xen         mp_machdep.c 
    sys/ia64/ia64        interrupt.c 
    sys/ia64/include     smp.h 
    sys/kern             kern_shutdown.c subr_kdb.c subr_smp.c 
    sys/mips/include     smp.h 
    sys/mips/mips        mp_machdep.c 
    sys/pc98/conf        NOTES 
    sys/powerpc/include  smp.h 
    sys/powerpc/powerpc  mp_machdep.c 
    sys/sparc64/include  smp.h 
    sys/sun4v/include    smp.h 
    sys/sys              smp.h 
  Log:
  SVN rev 196196 on 2009-08-13 17:09:45Z by attilio
  
  * Completely Remove the option STOP_NMI from the kernel.  This option
  has proven to have a good effect when entering KDB by using a NMI,
  but it completely violates all the good rules about interrupts
  disabled while holding a spinlock in other occasions.  This can be the
  cause of deadlocks on events where a normal IPI_STOP is expected.
  * Adds an new IPI called IPI_STOP_HARD on all the supported architectures.
  This IPI is responsible for sending a stop message among CPUs using a
  privileged channel when disponible. In other cases it just does match a
  normal IPI_STOP.
  Right now the IPI_STOP_HARD functionality uses a NMI on ia32 and amd64
  architectures, while on the other has a normal IPI_STOP effect. It is
  responsibility of maintainers to eventually implement an hard stop
  when necessary and possible.
  * Use the new IPI facility in order to implement a new userend SMP kernel
  function called stop_cpus_hard(). That is specular to stop_cpu() but
  it does use the privileged channel for the stopping facility.
  * Let KDB use the newly introduced function stop_cpus_hard() and leave
  stop_cpus() for all the other cases
  * Disable interrupts on CPU0 when starting the process of APs suspension.
  * Style cleanup and comments adding
  
  This patch should fix the reboot/shutdown deadlocks many users are
  constantly reporting on mailing lists.
  
  Please don't forget to update your config file with the STOP_NMI
  option removal
  
  Reviewed by:    jhb
  Tested by:      pho, bz, rink
  Approved by:    re (kib)
  
  Revision  Changes    Path
  1.633     +6 -0      src/UPDATING
  1.59      +11 -2     src/sys/amd64/amd64/local_apic.c
  1.310     +31 -69    src/sys/amd64/amd64/mp_machdep.c
  1.333     +0 -2      src/sys/amd64/amd64/trap.c
  1.532     +0 -1      src/sys/amd64/conf/GENERIC
  1.92      +0 -5      src/sys/amd64/conf/NOTES
  1.4       +0 -1      src/sys/amd64/conf/XENHVM
  1.30      +1 -5      src/sys/amd64/include/apicvar.h
  1.97      +1 -4      src/sys/amd64/include/smp.h
  1.36      +0 -1      src/sys/conf/options.amd64
  1.245     +0 -1      src/sys/conf/options.i386
  1.206     +0 -1      src/sys/conf/options.pc98
  1.520     +0 -1      src/sys/i386/conf/GENERIC
  1.1276    +0 -1      src/sys/i386/conf/NOTES
  1.62      +11 -2     src/sys/i386/i386/local_apic.c
  1.303     +30 -69    src/sys/i386/i386/mp_machdep.c
  1.321     +0 -2      src/sys/i386/i386/trap.c
  1.33      +2 -5      src/sys/i386/include/apicvar.h
  1.100     +2 -4      src/sys/i386/include/smp.h
  1.22      +0 -2      src/sys/i386/xen/mp_machdep.c
  1.71      +2 -0      src/sys/ia64/ia64/interrupt.c
  1.12      +1 -0      src/sys/ia64/include/smp.h
  1.199     +7 -3      src/sys/kern/kern_shutdown.c
  1.28      +4 -3      src/sys/kern/subr_kdb.c
  1.215     +21 -4     src/sys/kern/subr_smp.c
  1.3       +1 -0      src/sys/mips/include/smp.h
  1.5       +6 -1      src/sys/mips/mips/mp_machdep.c
  1.101     +0 -4      src/sys/pc98/conf/NOTES
  1.6       +1 -0      src/sys/powerpc/include/smp.h
  1.25      +7 -1      src/sys/powerpc/powerpc/mp_machdep.c
  1.26      +1 -0      src/sys/sparc64/include/smp.h
  1.7       +1 -0      src/sys/sun4v/include/smp.h
  1.91      +1 -0      src/sys/sys/smp.h



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