aboutsummaryrefslogtreecommitdiff
path: root/init.d/hwclock.in
diff options
context:
space:
mode:
authorWilliam Hubbs <w.d.hubbs@gmail.com>2016-07-06 10:40:31 -0500
committerWilliam Hubbs <w.d.hubbs@gmail.com>2016-07-06 10:40:31 -0500
commitac8ad169ae59fece38066c2e08ff57d53d737edd (patch)
tree0a521d310690785fffc6c235ff4b70e2f297b48b /init.d/hwclock.in
parent553799400218903ab495d1154a41c6d8890cb752 (diff)
hwclock: always use --noadjfile if available
When we use the --utc or --localtime switch, also use --noadjfile if it is available. This means hwclock will not use a drift file. X-Gentoo-Bug: 584722 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=584722
Diffstat (limited to 'init.d/hwclock.in')
-rw-r--r--init.d/hwclock.in27
1 files changed, 15 insertions, 12 deletions
diff --git a/init.d/hwclock.in b/init.d/hwclock.in
index d3e19f15..7fee7b74 100644
--- a/init.d/hwclock.in
+++ b/init.d/hwclock.in
@@ -69,6 +69,16 @@ _hwclock()
return 1
}
+get_noadjfile()
+{
+ if ! yesno $clock_adjfile; then
+ # Some implementations don't handle adjustments
+ if LC_ALL=C hwclock --help 2>&1 | grep -q "\-\-noadjfile"; then
+ echo --noadjfile
+ fi
+ fi
+}
+
start()
{
local retval=0 errstr=""
@@ -91,16 +101,16 @@ start()
fi
# Always set the kernel's time zone.
- _hwclock --systz $utc_cmd $clock_args
+ _hwclock --systz $utc_cmd $(get_noadjfile) $clock_args
: $(( retval += $? ))
if [ -e /etc/adjtime ] && yesno $clock_adjfile; then
- _hwclock --adjust $utc_cmd
+ _hwclock --adjust $utc_cmd $(get_noadjfile)
: $(( retval += $? ))
fi
if yesno ${clock_hctosys:-YES}; then
- _hwclock --hctosys $utc_cmd $clock_args
+ _hwclock --hctosys $utc_cmd $(get_noadjfile) $clock_args
: $(( retval += $? ))
fi
@@ -122,14 +132,7 @@ stop()
ebegin "Setting hardware clock using the system clock" "[$utc]"
- if ! yesno $clock_adjfile; then
- # Some implementations don't handle adjustments
- if LC_ALL=C hwclock --help 2>&1 | grep -q "\-\-noadjfile"; then
- utc_cmd="$utc_cmd --noadjfile"
- fi
- fi
-
- _hwclock --systohc $utc_cmd $clock_args
+ _hwclock --systohc $utc_cmd $(get_noadjfile) $clock_args
retval=$?
eend $retval "Failed to sync clocks"
@@ -144,5 +147,5 @@ save()
show()
{
setupopts
- hwclock --show "$utc_cmd" $clock_args
+ hwclock --show "$utc_cmd" $(get_noadjfile) $clock_args
}