freebsd-skq/sys/ufs
Konstantin Belousov bf0db19339 buf SU hooks: track buf_start() calls with B_IOSTARTED flag
and only call buf_complete() if previously started.  Some error paths,
like CoW failire, might skip buf_start() and do bufdone(), which itself
call buf_complete().

Various SU handle_written_XXX() functions check that io was started
and incomplete parts of the buffer data reverted before restoring them.
This is a useful invariant that B_IO_STARTED on buffer layer allows to
keep instead of changing check and panic into check and return.

Reported by:	pho
Reviewed by:	chs, mckusick
Tested by:	pho
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundations
2021-02-12 03:02:19 +02:00
..
ffs buf SU hooks: track buf_start() calls with B_IOSTARTED flag 2021-02-12 03:02:19 +02:00
ufs ufs: denote lack of support for lockless symlink lookup 2021-01-23 15:04:43 +00:00