HomeFreeBSD

In the VOP_PUTPAGES() implementations, change the default error from
rS222586Unpublished

Unpublished Commit ยท Learn More

No further details are available.

Description

In the VOP_PUTPAGES() implementations, change the default error from
VM_PAGER_AGAIN to VM_PAGER_ERROR for the uwritten pages. Return
VM_PAGER_AGAIN for the partially written page. Always forward at least
one page in the loop of vm_object_page_clean().

VM_PAGER_ERROR causes the page reactivation and does not clear the
page dirty state, so the write is not lost.

The change fixes an infinite loop in vm_object_page_clean() when the
filesystem returns permanent errors for some page writes.

Reported and tested by: gavin
Reviewed by: alc, rmacklem
MFC after: 1 week

Details

Provenance
kibAuthored on
Parents
rS222585: Flesh out the radar detection related operations for the ath driver.
Branches
Unknown
Tags
Unknown

Event Timeline