char devices without SI_UNMAPPED?
kostikbel at gmail.com
Sun Dec 13 19:40:58 UTC 2020
On Sun, Dec 13, 2020 at 12:20:49PM -0700, Alan Somers wrote:
> On Sun, Dec 13, 2020 at 11:20 AM Warner Losh <imp at bsdimp.com> wrote:
> > On Sun, Dec 13, 2020 at 11:18 AM Ian Lepore <ian at freebsd.org> wrote:
> >> On Sun, 2020-12-13 at 10:27 -0700, alan somers wrote:
> >> > I'm trying to exercise the aio code that handles character devices
> >> > that
> >> > don't set the SI_UNMAPPED flag. But I can't find any. Are there any
> >> > remaining character devices that don't allow unmapped I/O?
> >> >
> >> > -Alan
> >> >
> >> I assume you mean disk-like devices? Probably mmcsd, flash/at45d,
> >> flash/mx25l.
> Hm. I don't have any of those.
> > There are times that it's disabled administratively as well, but that may
> > be on a per-I/O basis.
> > vfs.zfs.vol.unmap_enabled: 1
> This one doesn't seem to work. It looks like the only functionality it
> gates these days is DIOCGDELETE.
> > vfs.unmapped_buf_allowed: 1
> Well, this one works. Thanks for the tip. Unfortunately, it's a tunable,
> so I can't use it for any kind of automated testing.
There is enough geoms which do not support unmapped bios, even if only in
some configurations. Recursively grep for G_PF_ACCEPT_UNMAPPED in sys/geom
to see what I mean.
After all, an option for geom_nop should be trivial, to force all bios to
map, instead of inheriting from the lower provider.
More information about the freebsd-hackers