From nobody Wed Apr 8 20:11:18 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4frZ2Z303fz6YhBD for ; Wed, 08 Apr 2026 20:11:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4frZ2Z2Sshz3Qn0 for ; Wed, 08 Apr 2026 20:11:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1775679078; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=K/wcngvWrhBk/wVctE6osPmFH0LHjosZULIyNmeGqQo=; b=J9+6U+GB606MMtozY2DVHUrCctJ24PA4XDG+XqKRbv8aD9+NY7yVQ7m8ytbDxI6dlh3mFW ICXBjFIL2OhKQo7QlOREJDi7wtDVwBvlIrp7G9wCLdop3DH8p3XeJGnt21XnI6CC3ToG/i XxeaEy21oF10LqYwAN/lEqPAkIRacNwcs3qb616iSGev1MgpvdBW33n7l0IUSQc+PU61Nx cf7jMV5CwyoxhQNQ4C1PrXpCNOKozgJ2oWUqCjhqW3ujWon+HTRxkF8XK8myNN4A4GwkZI krEdXylz7Q7NCYxQteD+e0ttHBuH3urUKcjtSvt4+1kBOaFGuWx4OoJpI3vDKg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1775679078; a=rsa-sha256; cv=none; b=lzy6b0ogVN9fPaGgJ66gtTx8r3p12IWAPUrTatR5zHAzJStWHe41K2Ga4Q9a6RJ+xE35bz oEWpk5f5ww+io0PlKh9UJJe7GPFYdOjLzuBQkIx7HfOruR+i0labcc1F8RctLHo81/GtPg k+/ynWoxswuhlNFz+3UOPwOkpFPa8+ZdepTgbm+glIROshVcWpfLiHrwZqTNGOwOvupYbT ITtv0kvE0vjg3655xPTHl47saKP/kaks1vTIQ8hgc0bXfKgGMYv/r2yW5ljLU3RNeyGNmb hPBKusJQATJ/R1/FGOTOTZxJB7BzFG5hn/mlG7TXc9HbPk6evL8P3JHj1p78hQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1775679078; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=K/wcngvWrhBk/wVctE6osPmFH0LHjosZULIyNmeGqQo=; b=YGQzqCNmQ+DDNGglXXj8ZRPO3fJftgCh40FQlbMlqStUdM3d7WCGUT6WyEfnI4b9aB2ZK8 QZur82laSqwlO5ijAYp28ncq7S/7lfiN6zTXt9Njo5wFUza2lzCL3ejEceKDrAecOXgt2r NtGwfewPxASf1xztQE6n2XGvOMrPl+B1UHwhd2rfJliaXsBvWK214vu15/2j8HMTdxM2Lz 2bIDrbh2vq9dtWRK+OlRAYTg0KNjrynVQCRQK7LZIdWTsSCz1y2LKk9tnxsk7dfasE8HKG zE08F8dBjqZjdop2X2DPFEw6vR9BRxqMdXf+BUQnQhDdFxGpUKldLCahkiE7ZQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4frZ2Z1zj4zhjQ for ; Wed, 08 Apr 2026 20:11:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37aec by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 08 Apr 2026 20:11:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: dd201e407e48 - main - lockf.1: Organize and provide error numbers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dd201e407e48ba59bdfa1f71d41acfdac1a9c562 Auto-Submitted: auto-generated Date: Wed, 08 Apr 2026 20:11:18 +0000 Message-Id: <69d6b666.37aec.2a86a27c@gitrepo.freebsd.org> The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=dd201e407e48ba59bdfa1f71d41acfdac1a9c562 commit dd201e407e48ba59bdfa1f71d41acfdac1a9c562 Author: Alexander Ziaee AuthorDate: 2026-04-08 20:08:43 +0000 Commit: Alexander Ziaee CommitDate: 2026-04-08 20:09:15 +0000 lockf.1: Organize and provide error numbers Add error numbers to the exit codes so that readers can decode them without having to use a separate utility. Organize exits by error code. Mark up the error constants with the error constant macro, even though this is really not very helpful because people will search for the error code, the macro is explicitly for the constants and not the codes. While where, align and alphabetize the options list as well, fix misaligned padding in an example, and a one-sentance-per-line error. MFC after: 3 days Reported by: Antranig Vartanian Differential Revision: https://reviews.freebsd.org/D48470 --- usr.bin/lockf/lockf.1 | 57 +++++++++++++++++++++++++++------------------------ 1 file changed, 30 insertions(+), 27 deletions(-) diff --git a/usr.bin/lockf/lockf.1 b/usr.bin/lockf/lockf.1 index 40b4497bc80c..406ccd4caa39 100644 --- a/usr.bin/lockf/lockf.1 +++ b/usr.bin/lockf/lockf.1 @@ -1,4 +1,6 @@ .\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (C) 1998 John D. Polstra. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -22,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd June 24, 2025 +.Dd February 26, 2026 .Dt LOCKF 1 .Os .Sh NAME @@ -104,15 +106,10 @@ that if the option is not used, then no guarantees around lock ordering can be made. .Pp The following options are supported: -.Bl -tag -width ".Fl t Ar seconds" +.Bl -tag -width "-t seconds" .It Fl k Causes the lock file to be kept (not removed) after the command completes. -.It Fl s -Causes -.Nm -to operate silently. -Failure to acquire the lock is indicated only in the exit status. .It Fl n Causes .Nm @@ -136,6 +133,11 @@ This option will cause to open .Ar file for writing rather than reading. +.It Fl s +Causes +.Nm +to operate silently. +Failure to acquire the lock is indicated only in the exit status. .It Fl T Upon receipt of a .Dv SIGTERM , @@ -191,32 +193,32 @@ successfully acquires the lock, it returns the exit status produced by Otherwise, it returns one of the exit codes defined in .Xr sysexits 3 , as follows: -.Bl -tag -width ".Dv EX_CANTCREAT" -.It Dv EX_TEMPFAIL -The specified lock file was already locked by another process. -.It Dv EX_CANTCREAT -The +.Bl -tag -width "EX_UNAVAILABLE (69)" +.It Er EX_OSERR Pq 61 +A system call, e.g., +.Xr fork 2 , +failed unexpectedly. +.It Er EX_USAGE Pq 64 +There was an error on the .Nm -utility -was unable to create the lock file, e.g., because of insufficient access -privileges. -.It Dv EX_UNAVAILABLE +command line. +.It Er EX_UNAVAILABLE Pq 69 The .Fl n option is specified and the specified lock file does not exist. -.It Dv EX_USAGE -There was an error on the -.Nm -command line. -.It Dv EX_OSERR -A system call (e.g., -.Xr fork 2 ) -failed unexpectedly. -.It Dv EX_SOFTWARE +.It Er EX_SOFTWARE Pq 70 The .Ar command did not exit normally, but may have been signaled or stopped. +.It Er EX_CANTCREAT Pq 73 +The +.Nm +utility +was unable to create the lock file, e.g., because of insufficient access +privileges. +.It Er EX_TEMPFAIL Pq 75 +The specified lock file was already locked by another process. .El .Sh EXAMPLES The first job takes a lock and sleeps for 5 seconds in the background. @@ -237,9 +239,10 @@ $ lockf mylock sleep 1 & lockf -t 5 mylock echo "Success" Success [1]+ Done lockf mylock sleep 1 .Ed +.Pp Lock a file and run a script, return immediately if the lock is not -available. Do not delete the file afterward so lock order is -guaranteed. +available. +Do not delete the file afterward so lock order is guaranteed. .Pp .Dl $ lockf -t 0 -k /tmp/my.lock myscript .Pp