On 25/02/2017 18:45, Andriy Gapon wrote:
> Author: avg
> Date: Sat Feb 25 16:45:53 2017
> New Revision: 314273
> URL: https://svnweb.freebsd.org/changeset/base/314273
> 
> Log:
>   zfs: call spa_deadman on a taskqueue thread
>   
>   callout(9) prohibits callout functions from sleeping.
>   illumos mutexes are emulated using sx(9).
>   spa_deadman() calls vdev_deadman() and the latter acquires vq_lock.
>   
>   As a result we can get a more confusing panic instead of a specific
>   panic or no panic:
>   sleepq_add: td 0xfffff80019669960 to sleep on wchan 0xfffff8001cff4d88 with 
> sleeping prohibited
>   
>   This change adds another level of indirection where the deadman
>   callout schedules spa_deadman() to be executed on taskqueue_thread.
>   
>   While there, use callout_schedule(0 instead of callout_reset()
>   in spa_sync().
>   
>   Discussed with:     mav
>   MFC after:  1 week
>   Differential Revision: https://reviews.freebsd.org/D9762

Sponsored by:   Panzura

-- 
Andriy Gapon
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to