Date: Mon, 14 Mar 2011 11:38:15 +0100 From: Fabien Thomas <fabien.thomas@netasq.com> To: freebsd-current@freebsd.org Subject: Deadlock on stable fixed on head Message-ID: <A29B03EE-CBEB-48F7-A31F-0BE8FB29FDF1@netasq.com>
next in thread | raw e-mail | index | archive | help
I'm debugging a deadlock on FreeBSD that is not on head but on 7.3, 8.2... Maybe someone will have an idea on what patch fixed it. Context: 1 - On a UP machine (Multicore without SMP option or UP with SMP). 2 - When using device apic (more on this later) 3 - Using DEVICE_POLLING (more on this later) 4- HZ set to 2000 Launching a CPU intensive task freeze the box (burnP6 from cpuburn port) nearly 100% chance of success. This can be reproduced on very different HW so it is software related. Reproduced on i386 / amd64. Current analysis status: 1 - having >1 CPU and SMP enabled avoid the deadlock 2 - apic enable the problem when using critical_exit (using isa/clock does not have critical_exit and then works) 3 - this is not the polling itself but the scheduling of the thread only 4 - no idea So to sum up it seems related to a scheduling issue. I've got some info from a 8.2 that can enter ddb (7.3 will not enter ddb) [1] If someone have an idea / fixed something related, etc... tell me :) [1] http://people.freebsd.org/~fabient/burnP6_deadlock.txt -- Fabien Thomas
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?A29B03EE-CBEB-48F7-A31F-0BE8FB29FDF1>