On 2020-09-01 03:20, Eugene Grosbein wrote:
> CPU: Geode(TM) Integrated Processor by AMD PCS (499.91-MHz 586-class CPU)
>   Origin="AuthenticAMD"  Id=0x5a2  Family=0x5  Model=0xa  Stepping=2
>   Features=0x88a93d<FPU,DE,PSE,TSC,MSR,CX8,SEP,PGE,CMOV,CLFLUSH,MMX>
>   AMD Features=0xc0400000<MMX+,3DNow!+,3DNow!>
> 
> Of course, its NanoBSD image is built with CPUTYPE=i586 as well as installed 
> packages.

You've got CMOV so you'll be fine with 11.4-RELEASE, whereas I don't:

CPU: Pentium/P55C (232.68-MHz 586-class CPU)
  Origin="GenuineIntel"  Id=0x543  Family=0x5  Model=0x4  Stepping=3
  Features=0x8003bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,APIC,MMX>

Getting 11.4 to work has been a *major* undertaking:

Setting CPUTYPE in `make.conf` doesn't set -march for the kernel build
tools, so while you can compile world and kernel for i386, you can't
actually link it to create a working kernel on a real i586 (I found that
out with `/usr/obj` and `/usr/src` mounted over NFS).

clang is hypersensitive to command line arguments - if you just fiddle
with CFLAGS etc you'll get a duplicate -O2 and/or -march and that
results in a kernel/world that can't build itself (ZFS wedges).

You must set NO_CPU_CFLAGS= and then each of CFLAGS/CXXFLAGS/COPTFLAGS.

Don't try -Os or -Oz (which really do help on a real i586) - ZFS will
wedge quickly.

11.4 i386 doesn't honour `vfs.zfs.arc_max` in any meaningful way
resulting in one of the `find`s in periodic security wedging ZFS.

By ZFS wedging I mean something gets stuck on zio->i having eaten all of
kmem (I presume - on the real i586 I expect ~200M in ARC would do that
and that's what `top` shows) and that's it for the machine - it doesn't
panic, but there's no more disk IO either.
This also happens in VirtualBox with 4GB RAM, so it's not a hardware
problem.

To get 11.4 to behave itself (and it's only been 72 hours so still early
days) I've had to set:

options KSTACK_PAGES=4

and

kern.maxvnode="1024"
vm.kmem_size="330M"
vm.kmem_size_max="330M"
vfs.zfs.arc_max="125M"
vfs.zfs.arc_meta_limit="16M"

I had to set kmem for 11.3 but not the rest.

TL;DR: I'd avoid 11.4 i386 as it doesn't appear to have been tested on
i486/i586 at all.

Unfortunately I'm not sure 12 is an option yet either - 12.0 chokes on
my SiI3124 SATA controllers, and I've yet to compile 12.1 to test
(RELEASE has the same problem as 11.4).

-C
_______________________________________________
freebsd-stable@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"

Reply via email to