On 07/08/2012 11:59, Konstantin Belousov wrote: > On Sun, Jul 08, 2012 at 12:57:39PM -0400, Michael Butler wrote: >> -----BEGIN PGP SIGNED MESSAGE----- >> Hash: SHA1 >> >> On 07/08/12 11:18, Michael Butler wrote: >>> On 07/08/12 10:31, Konstantin Belousov wrote: >>>> Catch it next time ? This should be quite reproducable, if real. >>>> Actually, try this. >>>> diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c >>>> index 9485fdd..de33afc 100644 >>>> --- a/sys/vm/vm_pageout.c >>>> +++ b/sys/vm/vm_pageout.c >>>> _at__at_ -1030,7 +1030,6 _at__at_ rescan0: >>>> ++pageout_lock_miss; >>>> if (object->flags& OBJ_MIGHTBEDIRTY) >>>> vnodes_skipped++; >>>> - vm_page_lock_queues(); >>>> goto unlock_and_continue; >> [ .. snip .. ] >> >>> Just waiting for the second of two attached RAID arrays to finish >>> rebuilding and I'll give this a shot - thanks! >> I repeated the dumps from last night over NFS with this patch installed >> and no more panics :-) > But, are panics reproducable without the patch ? The patch looks correct. I'm sorry that I didn't catch this problem when I reviewed the original patch yesterday. :-( I don't think that you really need these assertions: + KASSERT(queues_locked, ("unlocked queues 2")); + mtx_assert(&vm_page_queue_mtx, MA_OWNED); The control flow from the preceding acquire is straightforward and vm_page_requeue() itself asserts that the page queues lock is held. AlanReceived on Sun Jul 08 2012 - 15:39:17 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:28 UTC