Gleb Smirnoff 6bc27f086a Generalize resources freeing in sendfile with different scenarios.
Now we execute sendfile_iodone() in all possible cases, which
guarantees that vm_object_pip_wakeup() is called and sfio structure
is freed.

At the beginning of sendfile initialize sfio->m to NULL, that would
indicate that the mbuf chain either doesn't exist, or belongs to the
syscall (not to I/O completion).  Fill sfio->m only at a point when
we are positive that there are I/Os ongoing and before releasing
syscall's reference on sfio.

In sendfile_iodone() perform vm_object_pip_wakeup() once last
reference is released, then check for sfio->m.  NULL pointer
indicates that we need only to free the memory.

Reviewed by:	jtl, gallatin
2020-02-25 19:29:05 +00:00
..
2020-02-09 12:10:37 +00:00
2020-02-23 03:32:16 +00:00
2020-02-15 01:28:55 +00:00
2020-02-15 01:30:13 +00:00
2020-02-03 17:35:11 +00:00
2020-02-03 22:26:00 +00:00
2020-02-23 03:32:16 +00:00
2020-02-23 03:32:04 +00:00
2019-09-03 18:56:25 +00:00
2019-08-28 16:18:23 +00:00
2020-01-05 12:48:19 +00:00
2020-02-23 03:32:16 +00:00
2020-01-05 12:48:19 +00:00
2020-02-23 03:32:16 +00:00
2020-02-15 01:30:27 +00:00
2020-01-05 12:48:19 +00:00
2020-02-03 17:35:11 +00:00
2020-02-12 11:16:55 +00:00
2019-12-15 21:26:50 +00:00
2020-02-03 17:35:11 +00:00
2020-02-03 17:35:11 +00:00
2020-02-15 01:30:27 +00:00
2020-01-12 23:52:16 +00:00
2020-02-20 16:58:19 +00:00
2020-02-15 01:28:42 +00:00
2020-02-20 16:58:19 +00:00
2020-02-15 01:28:42 +00:00
2020-02-12 11:18:12 +00:00
2020-02-23 03:32:11 +00:00
2020-02-15 01:28:42 +00:00
2020-02-23 03:32:11 +00:00
2020-02-23 03:32:11 +00:00