Clean-up / consolidation of m68k bus error / address error handling
code. This is not a very radical change for most m68k platforms,
since they were using a version of this re-factored code already via
an #include directive in locore.s. Now, however, the bus error handlers
are split into CPU "generation"-specific files, and brought into the
kernel via the CPU options in the kernel config file (the goal being
to reduce boilerplate in each locore.s).
The more notable changes:
- amiga and atari no longer have their own copy of each handler, and
some of their local tweaks have been folded into the shared code.
- sun2's bus error handling code has been re-factored into a shared
buserr_10.s to facilitate support for other 68010-based systems (all
of which have their own custom MMU).
- sun3's bus error handling code has been re-refactored into the
shared buserr_2030.s. The Sun3-specific MMU handling is treated
just like the HP-specific MMU handling that was already there.
This additional #ifdef is a small price to pay for more code sharing.
- sun3x now also uses the shared buserr_2030.s rather than an identical
[12 lines not shown]
Make the _C_LABEL definition match exactly <sys/cdefs_elf.h> because
atomic_cas.S now includes <sys/ras.h> and <sys/ras.h> includes <sys/cdefs.h>
because it wants things like __CONCAT(). I think it is better to do it this
way rather than #undef here or in atomic_cas.S because then if the definition
changes it will break again.
libX11: suppress about 2000 lint warnings
Realistically, nobody is going to look at these since there are so many
of them and they repeat. Instead, allow to focus on the remaining
warnings that don't occur so often.
PR/60011: TLS alignment wrong on powerpc
Fix previous where I only got the alignment right for the architectures
where the thread pointer points to the struct tcb. Handle the
architectures that have a thread pointer that is relative to end of the
struct tcb, e.g. powerpc.
Hopefully the commit in the tls.c explains what's going on.
Thanks to riastrah@ and andvar@ for comments/things to fix.
make posix timer family functions reject itimer timer ids
we provide two sets of similar apis:
* BSD itimer api (setitimer, ITIMER_xxx, and friends)
* posix timer api (timer_create and friends)
for some reason, some of posix timer functions
(namely timer_settime, timer_gettime, timer_getoverrun,
timer_delete) are allowed to operate on timer_id=2,
which actually belongs to the BSD itimer. (ITIMER_PROF)
it seems that it has always been this way since they were
introduced on the nathanw_sa branch in 2001.
10 years later, in 2011, it got a bit worse by the addition
of ITIMER_MONOTONIC, which is also accepted by the posix
timer functions.
as there seems to be no reasons to give the special
[2 lines not shown]
zfs: purge name cache on teardown
this fixes name cache inconsistencies on
certain events. eg. rollback
```
zfs create $FS
echo a > /$FS/a.txt
echo b > /$FS/b.txt
echo c > /$FS/c.txt
zfs snap $FS at 2
rm /$FS/b.txt
cat /$FS/a.txt
cat /$FS/b.txt || : # create negative cache entry
cat /$FS/c.txt
zfs rollback $FS at 2
cat /$FS/a.txt
cat /$FS/b.txt # hit the negative cache entry because of the bug
cat /$FS/c.txt
```
zfs: fix case insensitive / utf-8 normalized file names
zfs has a few options for file name comparison.
when they are enabled, disable netbsd's name cache, which only
supports exact-byte-matching, to avoid inconsistent behaviors.
cf. "casesensitivity" and "normalization" in zfs(8)
cpu_is_better: fix comparison
the current coding always return true.
this commit fixes it to return if the first one is better
than the other one, which i believe is the author's intention.
fix a regression in the
"partly prepare for more than 2-level CPU speed scheduler support"
change.