Add optimization hints. They replace nscratches and ncopfuncs and improve
readability.
Use COPTS="-O2 -fno-reorder-blocks" as defined in sys.mk for userland.

with "-O2":
   text    data     bss     dec     hex filename
3297898   65044  122584 3485526  352f56 netbsd

with "-O2 -fno-reorder-blocks":
   text    data     bss     dec     hex filename
2930782   65044  122584 3118410  2f954a netbsd
Use COPTS="-O2 -fno-reorder-blocks" as defined in sys.mk for userland.

with "-O2":
   text    data     bss     dec     hex filename
3717740   86092  152864 3956696  3c5fd8 netbsd

with "-O2 -fno-reorder-blocks":
   text    data     bss     dec     hex filename
3304404   86092  152864 3543360  361140 netbsd
Use COPTS="-O2 -fno-reorder-blocks" as defined in sys.mk for userland.

with "-O2":
   text    data     bss     dec     hex filename
2064824   48784   85920 2199528  218fe8 netbsd

with "-O2 -fno-reorder-blocks":
   text    data     bss     dec     hex filename
1842944   48784   85920 1977648  1e2d30 netbsd
Use COPTS="-O2 -fno-reorder-blocks" as defined in sys.mk for userland.

with "-O2":
   text    data     bss     dec     hex filename
2898020   54292  122728 3075040  2eebe0 netbsd

with "-O2 -fno-reorder-blocks":
   text    data     bss     dec     hex filename
2589888   54292  122728 2766908  2a383c netbsd
Use COPTS="-O2 -fno-reorder-blocks" as defined in sys.mk for userland.

Compile tests only.
Enable options WSDISPLAY_COMPAT_USL in template, not in generated files.
Use COPTS="-O2 -fno-reorder-blocks" for kernels except SMALL030_KERNEL.

Also remove COPTS="-Os" from std.* files and specify it in
GENERIC.in template for SMALL030_KERNEL.
PR/48963: kmem_free size mismatch causes panic when attaching urndis(4).

Fix the size passed in kmem_free in the urndis_ctrl_{query,set} functions
Regen from GENERIC.in rev 1.106:

> Use COPTS="-O2 -fno-reorder-blocks" for kernels except SMALL030_KERNEL.
>
> Also remove COPTS="-Os" from std.* files and specify it in
> GENERIC.in template for SMALL030_KERNEL.
Regen from MILAN.in rev 1.27 and GENERIC.in rev 1.106:

> Enable options WSDISPLAY_COMPAT_USL in template, not in generated files.

> Use COPTS="-O2 -fno-reorder-blocks" for kernels except SMALL030_KERNEL.
>
> Also remove COPTS="-Os" from std.* files and specify it in
> GENERIC.in template for SMALL030_KERNEL.
Add vcache operations to support key changes:

vcache_rekey_enter locks the old cache node and creates and locks the
  new cache node.  It is an error if the new cache node exists.

vcache_rekey_exit removes the old cache node and finalizes and
  unlocks the new cache node.

No objections on tech-kern@

Welcome to 6.99.46
Use vcache_rekey_* for nfs_lookitup() in the "*npp != NULL" case.
Appease gcc48 -Wunused-but-set-variable warning.
ne at xshbus seems to require ax88190, per if_ne_xsh.c.

On the other hand, dp8390nic is pulled by ne in sys/conf/files
so it isn't required here.
Disable X-Surf devices for DRACO's configuration.

- ne at xsh requires ax88190 and ax88190 requires mii(4),
  but all mii devices are declared only inside AMIGA_CONFIGURATION
- X-Surf also add wdc(4) but all children devices like atabus and
  atapibus are declared only for AMIGA_CONFIGURATION

XXX: DRACO kernel is not built during build.sh release.
Regen to reflect GENERIC.in rev 1.121-1.124:

rev 1.121:
> dd preliminary support for the Individual Computers ACA500 in the form of acahf
> driver. If ACA500 is equipped with supported accelerator with MMU, it allows
> running NetBSD on an Amiga 500.
>
> Since ACA is not autoconf-aware, and the probe procedure does not exist yet, the
> driver is activated with the ACA500_SUPPORT kernel option. The acahf driver
> is commented out in the GENERIC kernel for now (at least until it stops being
> very experimental and hackish).
>
> When it comes to ACA-specific hardware, for now the boot CF slot works. Support for everything else is incoming...

rev 1.122:
> Changes to ACA500 support:
> - Add support for second (aux) CF slot.
> - Rework wdc attachment to be more sane.
> - Add support for clockport on ACA500.
> - Fix style where appropriate.

rev 1.123:
> Implement the probe procedure for ACA500. Now the user just needs acafh0
> compiled in his kernel and it all should(tm) work.
>
> Due to lack of obio in amiga port, the probe is called directly from mbattach().
> This is going to change with the introduction of obio for all non-autoconfig
> expansions.

rev 1.124:
> Disable X-Surf devices for DRACO's configuration.
>
> - ne at xsh requires ax88190 and ax88190 requires mii(4),
>   but all mii devices are declared only inside AMIGA_CONFIGURATION
> - X-Surf also add wdc(4) but all children devices like atabus and
>   atapibus are declared only for AMIGA_CONFIGURATION
>
> XXX: DRACO kernel is not built during build.sh release.
Use COPTS="-O2 -fno-reorder-blocks" for kernels except INSTALL_CONFIGURATION.
Regen from GENERIC.in rev 1.125:

> Use COPTS="-O2 -fno-reorder-blocks" for kernels except INSTALL_CONFIGURATION.
PR/48964: In urndis(4), initialization of ifnet structure is not enough,
cause panic.

Update urndis_init to return and error and use as if_init based on the
patch in the PR with stylistic changes from me.

XXX IFF_RUNNING should be ignored here?