From 64d6ec568d3ebcccb4476f9dc3d2c6e56da4ba80 Mon Sep 17 00:00:00 2001 From: mav Date: Fri, 8 Apr 2016 10:00:07 +0000 Subject: [PATCH] MFC r266615: Increase taskqueue thread priority from idle to PRIBIO. Idle priority is not even time-share, so if system is busy in any way, those events may never be executed. Since in some cases system waits for events processed by that thread, that may cause deadlocks. git-svn-id: svn://svn.freebsd.org/base/stable/10@297700 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- sys/dev/mpr/mpr_sas.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/sys/dev/mpr/mpr_sas.c b/sys/dev/mpr/mpr_sas.c index 28870f6a5..eac336068 100644 --- a/sys/dev/mpr/mpr_sas.c +++ b/sys/dev/mpr/mpr_sas.c @@ -769,9 +769,7 @@ mpr_attach_sas(struct mpr_softc *sc) TASK_INIT(&sassc->ev_task, 0, mprsas_firmware_event_work, sc); sassc->ev_tq = taskqueue_create("mpr_taskq", M_NOWAIT | M_ZERO, taskqueue_thread_enqueue, &sassc->ev_tq); - - /* Run the task queue with lowest priority */ - taskqueue_start_threads(&sassc->ev_tq, 1, 255, "%s taskq", + taskqueue_start_threads(&sassc->ev_tq, 1, PRIBIO, "%s taskq", device_get_nameunit(sc->mpr_dev)); mpr_lock(sc); -- 2.45.0