On Wed, Dec 21, 2005 at 07:50:49PM -0800, James Long wrote: > For some reason, this script: > > #!/bin/sh > > DEV=$(md_config -a -t malloc -s 500m) > newfs -i 512 -U /dev/$DEV > > mount /dev/$DEV /mnt > cp -Rp /usr/src /mnt/ > > > will kill my machine. I get zillions (well, hundreds at > least, without a serial console I can't count them) > of: > > > Dec 21 19:16:27 test kernel: g_vfs_done():md0[WRITE(offset=352649216, > length=16384)]error = 28 > Dec 21 19:16:27 test kernel: g_vfs_done():md0[WRITE(offset=352665600, > length=12288)]error = 28 > > with varying offsets and lengths, but seemingly always error 28 > > The system does not panic orderly, but rather spontaneously reboots after > spewing a lot of the above error messages (5-20 secs worth). > > This is on a Compaq Proliant ML370 with 1 GB RAM, dmesg below. > > > What do I need to fix to be able to use a RAM-backed filesystem?
From mdconfig(8): -t type Select the type of the memory disk. malloc Storage for this type of memory disk is allocated with malloc(9). This limits the size to the malloc bucket limit in the kernel. If the -o reserve option is not set, creating and filling a large malloc-backed memory disk is a very easy way to panic a system. As a rule, swap or vnode backed md devices are a better idea than malloc ones. -- Brooks -- Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4
pgpTeI97ILMoZ.pgp
Description: PGP signature