svn commit: r310084 - head/sys/x86/x86
Mark Johnston
markj at FreeBSD.org
Wed Dec 14 19:00:10 UTC 2016
Author: markj
Date: Wed Dec 14 19:00:08 2016
New Revision: 310084
URL: https://svnweb.freebsd.org/changeset/base/310084
Log:
Don't run the MCA record refill task during boot.
The MCA taskqueue is not initialized until some time after CMCIs are
enabled on the BSP.
Reviewed by: cem, jhb
MFC after: 1 week
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D8783
Modified:
head/sys/x86/x86/mca.c
Modified: head/sys/x86/x86/mca.c
==============================================================================
--- head/sys/x86/x86/mca.c Wed Dec 14 17:28:55 2016 (r310083)
+++ head/sys/x86/x86/mca.c Wed Dec 14 19:00:08 2016 (r310084)
@@ -508,7 +508,7 @@ mca_record_entry(enum scan_mode mode, co
STAILQ_INSERT_TAIL(&mca_records, rec, link);
mca_count++;
mtx_unlock_spin(&mca_lock);
- if (mode == CMCI)
+ if (mode == CMCI && !cold)
taskqueue_enqueue(mca_tq, &mca_refill_task);
}
@@ -714,6 +714,9 @@ mca_createtq(void *dummy)
mca_tq = taskqueue_create_fast("mca", M_WAITOK,
taskqueue_thread_enqueue, &mca_tq);
taskqueue_start_threads(&mca_tq, 1, PI_SWI(SWI_TQ), "mca taskq");
+
+ /* CMCIs during boot may have claimed items from the freelist. */
+ mca_fill_freelist();
}
SYSINIT(mca_createtq, SI_SUB_CONFIGURE, SI_ORDER_ANY, mca_createtq, NULL);
More information about the svn-src-all
mailing list