risc-v: handle T-Head L1 caches
Provide and use hooks for L1 cache operations on the T-Head processors.
Re-worked from diffs provided by Rui-Xiang Guo via port-riscv.
Remove the last vestigal remains of the simulated software interrupt
register, or "ssir". The NetBSD kernel long ago adopted a software
interrupt thread model along with a "fast software interrupts" mechanism
that m68k platforms do not (yet) implement, but a few m68k platforms
were still consuling an "ssir" variable in the return from every exception
that nothing ever set.
This cleanup paves the way for futher consolidation of m68k trap handling
code in future commits.
PR/60086: Andrew Parker: cgdconfig may not always find ZFS device labels
Updated cgdconfig to use the same alignment function as zdb
(external/cddl/osnet/dist/cmd/zdb/zdb.c).
zfs_netbsd_gop_markupdate: actually update file timestamp
the implementation before this commit was basically no-op.
some notes:
* this is (ab)used in zfs_netbsd_write for fifo/spec vnodes.
i feel it's a bit excessive to update the timestamp on every
writes to /dev/null. unfortunately, zfs doesn't have nodevmtime
option. well, i suspect netbsd is the only os with the traditional
devmtime behavior these days. we may want to implement delayed
mtime update as ffs does.
* this is used by zfs_netbsd_putpages via genfs_putpages. but it's
redundant because zfs_putapage updates the timestamp as well.
* this is not used by zfs_netbsd_getpages. zfs doesn't use
genfs_getpages. zfs_netbsd_getpages doesn't have the
corresponding logic either. maybe it's ok for most of applications
as far as mtime will be updated sooner or later.
tests/kernel/t_time_arith.c: remove tests which don't make much sense
remove tests which use ms and us values as ns because:
* they don't make much sense.
* their expected results assume a particular implementation.
zfs: reject all mount op flags for now
- our logic in zfs_vfsops.c is inconsistent. sometimes it checks
uap->flags, sometimes vfsp->vfs_flag. (aka mnt_flag)
- our userland tools (zfs, mount_zfs) currently don't seem to have
a way to pass these flags anyway. (zmount in libzfs always passes
0 to both of mount(2) 'flags' argument and 'uap->flags'. although
it stores something in uap->mflag and uap->optptr, nothing uses
them. it doesn't even set MS_OPTIONSTR. we don't implement
MS_OPTIONSTR anyway.)
this commit simply rejects them for safety. as these operations have
never been implemented in NetBSD, it shouldn't have any impact to users.
maybe someday we should fix these, but i guess it involves some
ABI changes, which i'm not in a mood to do right now.
related to PR/60026https://gnats.netbsd.org/60026