]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Do not exit ctl_be_block_worker() prematurely.
authorAlexander Motin <mav@FreeBSD.org>
Sat, 6 Mar 2021 03:39:52 +0000 (22:39 -0500)
committerAlexander Motin <mav@FreeBSD.org>
Sat, 6 Mar 2021 03:45:47 +0000 (22:45 -0500)
commit6ed39db2573bb808ac2c206cd6c831f0be86219c
tree2da17d20316e193cd4a6a8163b39c913fe1f3098
parente77cf2a4ab32a381df3c06d25b8b4f650047c3f2
Do not exit ctl_be_block_worker() prematurely.

Return while there are any I/Os in a queue may result in them stuck
indefinitely, since there is only one taskqueue task for all of them.
I think I've reproduced this by switching ha_role to secondary under
heavy load.

MFC after: 3 days
sys/cam/ctl/ctl_backend_block.c