Date: Mon, 29 Jan 2001 18:23:44 +0200 From: Sheldon Hearn <sheldonh@uunet.co.za> To: Poul-Henning Kamp <phk@critter.freebsd.dk> Cc: mjacob@feral.com, Matt Dillon <dillon@earth.backplane.com>, John Baldwin <jhb@freebsd.org>, cvs-all@freebsd.org, cvs-committers@freebsd.org, Mikhail Teterin <mi@aldan.algebra.com> Subject: Re: workaround for broken mfs using vn. (was Re: cvs commit: src/sys/i386/conf GENERIC ) Message-ID: <625.980785424@axl.fw.uunet.co.za> In-Reply-To: Your message of "Mon, 29 Jan 2001 15:21:21 %2B0100." <21404.980778081@critter>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 29 Jan 2001 15:21:21 +0100, Poul-Henning Kamp wrote: > Uhm, I'm not that KLD savy, but there is no code in md(4) to support unloading > and consequently, it is at best a bad idea. That's fine. The md(4) page doesn't actually suggest that you _can_ unload it, so we're fine for now. Ideally, this should either work for 5.0-RELEASE, or the module build should be disabled for the release. By the way, the patch below would make it much easier for folks to use a swap-backed /tmp in future. Ciao, Sheldon. Index: etc/rc =================================================================== RCS file: /home/ncvs/src/etc/rc,v retrieving revision 1.250 diff -u -d -r1.250 rc --- etc/rc 2001/01/21 20:57:13 1.250 +++ etc/rc 2001/01/29 16:17:47 @@ -196,6 +196,23 @@ ;; esac +case ${swap_backed_tmp_size} in +[Nn][Oo] | '') + ;; +*) + echo 'Mounting swap-backed /tmp' + if ! kldstat -v | grep -E ' md(\.ko|)$' > /dev/null; then + kldload md > /dev/null 2>&1 + fi + unit=`mdconfig -a -t swap -o reserve -s ${swap_backed_tmp_size}` + disklabel -r -w ${unit} auto + newfs -f 4096 /dev/${unit}c + tunefs -n enable /dev/${unit}c + mount /dev/${unit}c /tmp + chmod ${swap_backed_tmp_perm} /tmp + ;; +esac + umount -a >/dev/null 2>&1 # Mount everything except nfs filesystems. Index: etc/defaults/rc.conf =================================================================== RCS file: /home/ncvs/src/etc/defaults/rc.conf,v retrieving revision 1.88 diff -u -d -r1.88 rc.conf --- etc/defaults/rc.conf 2001/01/25 13:05:50 1.88 +++ etc/defaults/rc.conf 2001/01/29 16:17:18 @@ -324,6 +324,8 @@ kern_securelevel_enable="NO" # kernel security level (see init(8)), kern_securelevel="-1" # range: -1..3 ; `-1' is the most insecure update_motd="YES" # update version info in /etc/motd (or NO) +swap_backed_tmp_size="NO" # Size of swapped-backed md(4) /tmp (or NO) +swap_backed_tmp_perm="1777" # Permissions on swapp-backed /tmp start_vinum="" # set to YES to start vinum unaligned_print="YES" # print unaligned access warnings on the alpha (or NO). entropy_file="/entropy" # Set to NO to disable caching entropy through reboots. Index: share/man/man5/rc.conf.5 =================================================================== RCS file: /home/ncvs/src/share/man/man5/rc.conf.5,v retrieving revision 1.89 diff -u -d -r1.89 rc.conf.5 --- share/man/man5/rc.conf.5 2001/01/21 20:57:38 1.89 +++ share/man/man5/rc.conf.5 2001/01/29 16:22:36 @@ -77,6 +77,33 @@ .Ar NO then no swapfile is installed, otherwise the value is used as the full pathname to a file to use for additional swap space. +.It Ar swap_backed_tmp_size +(str) If set to +.Ar NO +then +.Pa /tmp +is left as is. +Otherwise, the value is used as the size of an +swap-backed +.Xr md 4 +disk to create. +Once the disk is created, +it is mounted on +.Pa /tmp . +See +.Xr mdconfig 8 +for legal size values. +.It Ar swap_backed_tmp_perm +(str) If +.Ar swap_backed_tmp_size +is not +.Ar NO +then this value is used to set the +permissions on +.Pa /tmp +once the swap-backed +.Xr md 4 +disk is mounted on it. .It Ar apm_enable (bool) If set to .Ar YES , To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?625.980785424>