git: 7e4eca7136ea - main - Revert 97ec6eba653a07. There shouldn't be a dependency of 'tmp' on remote filesystems. Discussed this with Brooks and he can't find evidence that provoked the change in 2005. If anything gets broken I will fix it in a dif

Stefan Esser se at freebsd.org
Sun Jan 17 12:42:49 UTC 2021


Am 17.01.21 um 04:18 schrieb Rodney W. Grimes:
>> The branch main has been updated by glebius:
>>
>> URL: https://cgit.FreeBSD.org/src/commit/?id=7e4eca7136eaa35e15f67682468f09aa7127b543
>>
>> commit 7e4eca7136eaa35e15f67682468f09aa7127b543
>> Author:     Gleb Smirnoff <glebius at FreeBSD.org>
>> AuthorDate: 2021-01-11 20:13:41 +0000
>> Commit:     Gleb Smirnoff <glebius at FreeBSD.org>
>> CommitDate: 2021-01-15 20:44:06 +0000
>>
>>      Revert 97ec6eba653a07.  There shouldn't be a dependency of 'tmp' on
>>      remote filesystems.  Discussed this with Brooks and he can't find
>>      evidence that provoked the change in 2005.  If anything gets broken
>>      I will fix it in a different way, not via rc sequence change.
> 
> This is because /etc/rc.d/tmp has this line:
>          if ! /bin/df /tmp | grep -q "^/dev/md[0-9].* /tmp"; then
> 
> and when your doing NFS boots with seperate /usr you do not have
> /usr/bin/grep to run that line.
> 
> Almost always the reason things have a REQUIRE: mountcritremote
> is that they use some commands from /usr.

This dependency on /usr/bin/grep is easily removed, see:

	https://reviews.freebsd.org/D28209

diff --git a/libexec/rc/rc.d/tmp b/libexec/rc/rc.d/tmp
index a61321e058ee..2a7205e92b59 100755
--- a/libexec/rc/rc.d/tmp
+++ b/libexec/rc/rc.d/tmp
@@ -40,10 +40,16 @@ load_rc_config $name

  mount_tmpmfs()
  {
-       if ! /bin/df /tmp | grep -q "^/dev/md[0-9].* /tmp"; then
-               mount_md ${tmpsize} /tmp "${tmpmfs_flags}"
-               chmod 01777 /tmp
-       fi
+       while read line; do
+               case $line in
+               /dev/md[0-9]*\ /tmp)
+                       return;;
+               esac
+       done <<*EOF
+$(df /tmp)
+*EOF
+       mount_md ${tmpsize} /tmp "${tmpmfs_flags}"
+       chmod 01777 /tmp
  }

  # If we do not have a writable /tmp, create a memory

-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 495 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/dev-commits-src-all/attachments/20210117/1222b175/attachment.sig>


More information about the dev-commits-src-all mailing list