(Keywords: solaris hang zfs scrub heap space kernelbase marvell 88sx6081) I am experiencing system hangs on a 32-bit x86 box with 1.5 GB RAM running Solaris 10 Update 4 (with only patch 125205-07) during ZFS scrubs of an almost full 3 TB zpool (6 disks on a AOC-SAT2-MV8 controller). I found out they are caused by memory contention in the kernel heap: 'kstat vmem::heap' shows it is 97% full and 'echo ::threadlist -v | mdb -k' shows most threads are blocked in memory allocation routines.
When trying to give more memory to the kernel by passing '-B kernelbase=0x80000000' to the kernel, it fails to boot up. The console is flooded with this line repeating over and over: WARNING: init(1M) exited on fatal signal 9: restarting automatically init segfaults the same way with any kernelbase value less than the default of 0xd0000000 (I tried 0x50000000, 0x80000000, 0x90000000, 0xc0000000, 0xcf000000). It works fine with values greater than or equal to the default (I only tried 0xd0000000 and 0xd1000000). How can I troubleshoot this crash ? Is it caused by the system being unable to access / (standard UFS partition on a disk connected to a SATA controller supported by the marvell88sx driver) ? Could some drivers such as marvell88sx not support non-standard kernelbase values ? Alternatively, can I make ZFS use less heap space ? I don't think the ARC cache use heap space, or does it ? None of my other ZFS servers have this heap space restriction because they are 64-bit. -marc _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss