HomeFreeBSD

Remove iov_iter_advance() from iter_read

Description

Remove iov_iter_advance() from iter_read

There's no need to call iov_iter_advance() in zpl_iter_read().
This was preserved from the previous code where it wasn't needed
but also didn't cause any problems. Now that the iter functions
also handle pipes that's no longer the case. When fully reading a
pipe buffer iov_iter_advance() may results in the pipe buf release
function being called which will not be registered resulting in
a NULL dereference.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #11375
Closes #11378

Details

Provenance
Brian Behlendorf <behlendorf1@llnl.gov>Authored on Dec 20 2020, 5:49 PM
GitHub <noreply@github.com>Committed on Dec 20 2020, 5:49 PM
Parents
rG49c482fde366: dsl_pool: extend comment on DSL Pool Configuration Lock
Branches
Unknown
Tags
Unknown

Event Timeline

GitHub <noreply@github.com> committed rG9ac535e66277: Remove iov_iter_advance() from iter_read (authored by Brian Behlendorf <behlendorf1@llnl.gov>).Dec 20 2020, 5:49 PM