From owner-svn-src-all@freebsd.org Sat Oct 27 17:21:14 2018 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CC5E410CD10F; Sat, 27 Oct 2018 17:21:14 +0000 (UTC) (envelope-from eugen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 81AB67303A; Sat, 27 Oct 2018 17:21:14 +0000 (UTC) (envelope-from eugen@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6423E13562; Sat, 27 Oct 2018 17:21:14 +0000 (UTC) (envelope-from eugen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w9RHLETf025759; Sat, 27 Oct 2018 17:21:14 GMT (envelope-from eugen@FreeBSD.org) Received: (from eugen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w9RHLDXg025755; Sat, 27 Oct 2018 17:21:13 GMT (envelope-from eugen@FreeBSD.org) Message-Id: <201810271721.w9RHLDXg025755@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: eugen set sender to eugen@FreeBSD.org using -f From: Eugene Grosbein Date: Sat, 27 Oct 2018 17:21:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r339818 - in head: libexec/rc sbin/rcorder share/man/man8 usr.sbin/acpi/acpiconf X-SVN-Group: head X-SVN-Commit-Author: eugen X-SVN-Commit-Paths: in head: libexec/rc sbin/rcorder share/man/man8 usr.sbin/acpi/acpiconf X-SVN-Commit-Revision: 339818 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 27 Oct 2018 17:21:15 -0000 Author: eugen Date: Sat Oct 27 17:21:13 2018 New Revision: 339818 URL: https://svnweb.freebsd.org/changeset/base/339818 Log: rcorder(8): add support for /etc/rc.resume, so it calls "rcorder -k resume" and runs scripts containing "KEYWORD: resume" with single "resume" argument. Working example is the port sysutils/cpupdate that defines extra_commands="resume" to reload CPU microcode cleared by suspend/resume sequence. This change does nothing for a system having no scripts with KEYWORD: resume. MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D15247 Modified: head/libexec/rc/rc.resume head/sbin/rcorder/rcorder.8 head/share/man/man8/rc.8 head/usr.sbin/acpi/acpiconf/acpiconf.8 Modified: head/libexec/rc/rc.resume ============================================================================== --- head/libexec/rc/rc.resume Sat Oct 27 17:15:58 2018 (r339817) +++ head/libexec/rc/rc.resume Sat Oct 27 17:21:13 2018 (r339818) @@ -55,4 +55,22 @@ fi /usr/bin/logger -t $subsystem resumed at `/bin/date +'%Y%m%d %H:%M:%S'` /bin/sync && /bin/sync && /bin/sync +. /etc/rc.subr + +load_rc_config + +rcorder_opts="-k resume" + +case ${local_startup} in +[Nn][Oo] | '') ;; +*) find_local_scripts_new ;; +esac + +files=`rcorder ${rcorder_opts} /etc/rc.d/* ${local_rc} 2>/dev/null` + +for _rc_elem in $files; do + debug "run_rc_script $_rc_elem resume" + run_rc_script $_rc_elem resume +done + exit 0 Modified: head/sbin/rcorder/rcorder.8 ============================================================================== --- head/sbin/rcorder/rcorder.8 Sat Oct 27 17:15:58 2018 (r339817) +++ head/sbin/rcorder/rcorder.8 Sat Oct 27 17:21:13 2018 (r339818) @@ -31,7 +31,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 10, 2016 +.Dd October 27, 2018 .Dt RCORDER 8 .Os .Sh NAME @@ -136,6 +136,23 @@ There must be at least one file with no dependencies i arguments passed to .Nm in order for it to find a starting place in the dependency ordering. +.Sh KEYWORDS +There are several +.Em KEYWORDs +in use: +.Bl -tag -width ".Cm shutdown" -offset indent +.It Cm firstboot, nojail, nojailvnet, nostart +Used by +.Xr rc 8 . +.It Cm resume +Used by +.Nm /etc/rc.resume +(see +.Xr acpiconf 8 ) +.It Cm shutdown +Used by +.Xr rc.shutdown 8 . +.El .Sh DIAGNOSTICS The .Nm @@ -156,7 +173,9 @@ A set of files has a circular dependency which was det processing the stated file. .El .Sh SEE ALSO -.Xr rc 8 +.Xr acpiconf 8 , +.Xr rc 8 , +.Xr rc.shutdown 8 .Sh HISTORY The .Nm Modified: head/share/man/man8/rc.8 ============================================================================== --- head/share/man/man8/rc.8 Sat Oct 27 17:15:58 2018 (r339817) +++ head/share/man/man8/rc.8 Sat Oct 27 17:21:13 2018 (r339818) @@ -44,6 +44,7 @@ .Nm rc.d/ .Nm rc.firewall .Nm rc.local +.Nm rc.resume .Nm rc.shutdown .Nm rc.subr .Sh DESCRIPTION @@ -548,6 +549,7 @@ is unnecessary, but is often included. .Xr kill 1 , .Xr rc.conf 5 , .Xr init 8 , +.Xr rc.resume 8 , .Xr rc.subr 8 , .Xr rcorder 8 , .Xr reboot 8 , Modified: head/usr.sbin/acpi/acpiconf/acpiconf.8 ============================================================================== --- head/usr.sbin/acpi/acpiconf/acpiconf.8 Sat Oct 27 17:15:58 2018 (r339817) +++ head/usr.sbin/acpi/acpiconf/acpiconf.8 Sat Oct 27 17:21:13 2018 (r339818) @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 22, 2015 +.Dd October 27, 2018 .Dt ACPICONF 8 .Os .Sh NAME @@ -72,13 +72,35 @@ If the .Pa /etc/rc.suspend and .Pa /etc/rc.resume -scripts are executable, they will be run before and after entering -the given sleep state. +scripts are executable, they will be run by +.Xr devd 8 +or +.Xr apmd 8 +before and after entering the given sleep state. +.Pp +The +.Pa /etc/rc.resume +script uses the +.Xr rcorder 8 +utility to call scripts in +.Pa /etc/rc.d/ +and the +.Va $local_startup +directories that have a "resume" KEYWORD. +Called scripts are supplied with single "resume" +command line argument. See +.Xr rc.conf 5 +for more information about +.Va $local_startup . .El .Sh SEE ALSO .Xr acpi 4 , .Xr acpidump 8 , -.Xr apm 8 +.Xr apm 8 , +.Xr apmd 8 , +.Xr devd 8 , +.Xr rc.conf 5 , +.Xr rcorder 8 .Sh HISTORY The .Nm