Page MenuHomeFreeBSD

Declare aio requests on files from local filesystems safe.
ClosedPublic

Authored by kib on Jul 21 2016, 4:50 PM.
Tags
None
Referenced Files
Unknown Object (File)
Jan 22 2024, 10:10 AM
Unknown Object (File)
Jan 8 2024, 10:08 PM
Unknown Object (File)
Jan 8 2024, 10:08 PM
Unknown Object (File)
Jan 8 2024, 10:08 PM
Unknown Object (File)
Jan 8 2024, 8:59 PM
Unknown Object (File)
Dec 20 2023, 12:59 AM
Unknown Object (File)
Sep 15 2023, 3:23 PM
Unknown Object (File)
Sep 15 2023, 3:20 PM
Subscribers

Details

Summary

There are two fine moments:

  • I allow AIO on reclaimed vnodes, since it is deterministically terminated fast.
  • devfs mounts are marked as MNT_LOCAL, but device vnodes have type VCHR, so the slow device io is not allowed.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kib retitled this revision from to Declare aio requests on files from local filesystems safe..
kib updated this object.
kib edited the test plan for this revision. (Show Details)
kib added a reviewer: jhb.
kib set the repository for this revision to rS FreeBSD src repository - subversion.
jhb edited edge metadata.

This should probably go into 11 if possible. It probably fixes the bulk of the use cases that folks like jmg@ really care about (since samba was using aio for local filesystem access).

This revision is now accepted and ready to land.Jul 21 2016, 4:56 PM

One other note is that some of the aio tests in test/sys/aio might be able to remove the unsafe check.

This revision was automatically updated to reflect the committed changes.
In D7273#151301, @jhb wrote:

One other note is that some of the aio tests in test/sys/aio might be able to remove the unsafe check.

This requires more work, like statfs(2)-ing the operational mount point. E.g., tests might be performed on NFS.

In D7273#151311, @kib wrote:
In D7273#151301, @jhb wrote:

One other note is that some of the aio tests in test/sys/aio might be able to remove the unsafe check.

This requires more work, like statfs(2)-ing the operational mount point. E.g., tests might be performed on NFS.

Yes, I might get around to fixing that (I have certainly run them both locally and over NFS myself).

I do need to update the language in aio(4) to document the change of this commit, though I will do that after my pending aio_warn change.