Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Sep 2013 02:38:32 -0400
From:      Aryeh Friedman <aryeh.friedman@gmail.com>
To:        "Justin T. Gibbs" <gibbs@freebsd.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r255783 - head/sys/kern
Message-ID:  <CAGBxaX=_DKMFyHBHq4hJtFoGw_K7o=xQzeuh-6NdtFoORJ8XAw@mail.gmail.com>
In-Reply-To: <201309220246.r8M2kEIN054172@svn.freebsd.org>
References:  <201309220246.r8M2kEIN054172@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Sep 21, 2013 at 10:46 PM, Justin T. Gibbs <gibbs@freebsd.org> wrote:

> Author: gibbs
> Date: Sun Sep 22 02:46:13 2013
> New Revision: 255783
> URL: http://svnweb.freebsd.org/changeset/base/255783
>
> Log:
>   Fix ia64 and mips kernel builds due to XENHVM=>GENERIC integration in
>   revision 255744.
>
>   sys/kern/subr_smp.c:
>         IPI_SUSPEND is only available on amd64 and i386.  Protect
>         new uses of this constant with #ifdefs to avoid impacting
>         other platforms.
>
>   Approved by:  re (blanket Xen)
>
> Modified:
>   head/sys/kern/subr_smp.c
>
> Modified: head/sys/kern/subr_smp.c
>
> ==============================================================================
> --- head/sys/kern/subr_smp.c    Sun Sep 22 02:14:54 2013        (r255782)
> +++ head/sys/kern/subr_smp.c    Sun Sep 22 02:46:13 2013        (r255783)
> @@ -225,6 +225,7 @@ generic_stop_cpus(cpuset_t map, u_int ty
>         CTR2(KTR_SMP, "stop_cpus(%s) with %u type",
>             cpusetobj_strprint(cpusetbuf, &map), type);
>
> +#if defined(__amd64__) || defined(__i386__)
>         /*
>          * When suspending, ensure there are are no IPIs in progress.
>          * IPIs that have been issued, but not yet delivered (e.g.
> @@ -234,6 +235,7 @@ generic_stop_cpus(cpuset_t map, u_int ty
>          */
>         if (type == IPI_SUSPEND)
>                 mtx_lock_spin(&smp_ipi_mtx);
> +#endif
>
>         if (stopping_cpu != PCPU_GET(cpuid))
>                 while (atomic_cmpset_int(&stopping_cpu, NOCPU,
> @@ -262,8 +264,10 @@ generic_stop_cpus(cpuset_t map, u_int ty
>                 }
>         }
>
> +#if defined(__amd64__) || defined(__i386__)
>         if (type == IPI_SUSPEND)
>                 mtx_unlock_spin(&smp_ipi_mtx);
> +#endif
>
>         stopping_cpu = NOCPU;
>         return (1);
> _______________________________________________
> svn-src-all@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/svn-src-all
> To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org"
>


This seems to cause a kernel panic if the machine is left idle for too long



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGBxaX=_DKMFyHBHq4hJtFoGw_K7o=xQzeuh-6NdtFoORJ8XAw>