lockf in installworld -- not a good idea




revision 1.72
date: 2005/11/03 08:56:39; author: ru; state: Exp; lines: +1 -0
Serialize access to the info/dir file; needed for parallel installs.

Reported by: scottl

I'm not very fond of using the non-standard lockf(1) here, but I
have no better idea at the moment. NetBSD uses ln(1) to create a
lock file, but this approach can result in a deadlock if make is
interrupted, leaving an orphaned lock file.

I'm not sure why this suddenly showed up in my configuration, but this is preventing me from installing world on an NFS mounted file system without rpc.lockd running. I get the following:

===> lib/libcom_err/doc (install)
lockf -k /usr/share/info/dir install-info --quiet --defsection="Programming &
development tools." --defentry="* libcom_err: (com_err). A Common Error
Description Library for UNIX." com_err.info /usr/share/info/dir
lockf: cannot open /usr/share/info/dir: Operation not supported
*** Error code 73

Stop in /zoo/rwatson/netperf/RELENG_6/src/lib/libcom_err/doc.
*** Error code 1

Stop in /zoo/rwatson/netperf/RELENG_6/src/lib/libcom_err.
*** Error code 1

I've noticed an increasing intolerance in our tools for system install and maintenance to locking not being implemented over the past few years. I no longer get working cron on boxes with neither rpc.lockd nor local locking enabled, for example. Installworld represents a bigger problem, since I don't want to have to depend on a completely working rpc chain in order to installworld, nor depend on running in what would effectively be multiuser mode. Surely there's a better fix for this than adding lockf use?

Robert N M Watson
Computer Laboratory
University of Cambridge
_______________________________________________
freebsd-current@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@xxxxxxxxxxx"



Relevant Pages

  • Re: error when doing make installworld
    ... because of an error while doing make installworld. ... mergemaster -i and then reboot. ... The filesystem is not mounted in single user mode. ... *** Error code 1 ...
    (freebsd-questions)
  • Stop. in installworld (4.9)
    ... during "make installworld". ... *** Error code 1 ... # Floating point support - do not disable. ... # PCI Ethernet NICs that use the common MII bus controller code. ...
    (freebsd-questions)
  • Error on installworld from 5.2.1 to 5.3-p1
    ... I rebooted the machine and enter in single mode with kernel 5.2.1 ... When I execute the installworld, ... /dev/null -V MAKEOBJDIRPREFIX dummy" returned non-zero status ... *** Error code 1 ...
    (freebsd-stable)
  • error when doing make installworld
    ... because of an error while doing make installworld. ... My system is an amd64 machine running freebsd 6.1 and ... mergemaster -i and then reboot. ... *** Error code 1 ...
    (freebsd-questions)
  • Re: error when doing make installworld
    ... "Doing a make installworld before finding out if ... How am I able to find out if the new kernel will ... kernel will boot will bite ... *** Error code 1 ...
    (freebsd-questions)