-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LP1910516: disk/hdd-parking failed on non-hdd system and cause the system enters "degraded" #125
Comments
This thread was migrated from launchpad.net https://launchpad.net/~os369510 wrote on 2022-06-30 02:50:51:Hi Pierre, could you please help to take a look at this issue? https://launchpad.net/~pieq wrote on 2022-06-30 08:22:21:Thanks for filing this up! I had a similar issue in another project and I thought it originated in the image content... Turns out it's a problem with Checkbox! Thanks for spending time to investigate this as well. I'll see what we can do about this. https://launchpad.net/~pieq wrote on 2022-06-30 09:01:12:@kent, given that there is less and less devices using spinning hard drives, and that this job (disk/hdd-parking) is not a cert-blocker, we are thinking of retiring this job from the certification test plan[1] (and removing the needs for hdapsd to be packaged in our Debian release). What do you think from a QA point of view? [1] https://git.launchpad.net/plainbox-provider-checkbox/tree/units/disk/test-plan.pxu#n7 |
Thank you for reporting us your feedback! The internal ticket has been created: https://warthogs.atlassian.net/browse/CHECKBOX-1136.
|
The HDD parking test requires HDAPSD (Hard Drive Active Protection System Daemon) to be installed on the system. However, this only makes sense on portable devices (laptops) using mechanical, rotational hard drives. Nowadays, most laptops are shipped with SSD or NVMe drives that have no mechanical components. By force-installing hdapsd, the associated service starts and immediately fails on devices without any mechanical hard drives. This is an issue for other tests, notably the poweroff and reboot tests, which both check for failed services. This has a big impact on automated test reviews in our lab. For these reasons, the disk/hdd-parking test is removed from Checkbox. Fix #125
…base This Launchpad bug has been migrated to #125 and is being addressed with this change.
disk/hdd-parking was the only test requiring hdapsd to be installed. As we removed the job, this dependency can be removed from both the Snap and the Debian packaging recipes. Fix #125
…base This Launchpad bug has been migrated to #125 and is being addressed with this change.
This issue was migrated from https://bugs.launchpad.net/plainbox-provider-checkbox/+bug/1910516
Summary
Description
Here are two problems.
without checking the hdd, it cause the test case failed[3].
As least, the "disk/hdd-parking" needs to be executed only if the HDD presents.
I suggest to disable "hdapds.service" when there is no HDD in the system if the "plainbox-provider-certification-client" dependencies could not be checked in runtime.
[1]
$ apt show plainbox-provider-certification-client
Package: plainbox-provider-certification-client
...
Recommends: ..., hdapsd, ...
[2]
● hdapsd.service - hdapsd hard drive active protection system daemon
Loaded: loaded (/lib/systemd/system/hdapsd.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Wed 2021-01-06 18:32:25 CST; 22h ago
Docs: man:hdapsd(8)
Process: 760 ExecStart=/usr/sbin/hdapsd (code=exited, status=1/FAILURE)
Main PID: 760 (code=exited, status=1/FAILURE)
-- Logs begin at Wed 2020-12-30 20:24:13 CST, end at Thu 2021-01-07 17:35:58 CST. --
systemd[1]: Started hdapsd hard drive active protection system daemon.
hdapsd[760]: Wed Jan 6 18:32:25 2021: Could not detect any devices.
hdapsd[760]: Wed Jan 6 18:32:25 2021: Starting hdapsd
hdapsd[760]: Wed Jan 6 18:32:25 2021: WARNING: You did not supply any devices to protect, trying autodetection.
hdapsd[760]: Usage: hdapsd [OPTIONS]
hdapsd[760]: -c --cfgfile= Load configuration from .
hdapsd[760]: By default, configuration is read from /etc/hdapsd.conf
hdapsd[760]: -d --device= is likely to be hda or sda.
hdapsd[760]: Can be given multiple times
hdapsd[760]: to protect multiple devices.
hdapsd[760]: -f --force Force unloading heads, even if kernel thinks
hdapsd[760]: differently (on pre ATA7 drives).
hdapsd[760]: This only works when adding devices by hand (-d).
hdapsd[760]: -r --force-rotational Autodetect drives as rotational, even if
hdapsd[760]: kernel thinks they are not.
hdapsd[760]: -s --sensitivity= How sensitive hdapsd should be to movements.
hdapsd[760]: Defaults to 15, higher value means less
hdapsd[760]: sensitive.
hdapsd[760]: -a --adaptive Adaptive threshold (automatic increase
hdapsd[760]: when the built-in keyboard/mouse are used).
hdapsd[760]: -v --verbose Get verbose statistics.
hdapsd[760]: -b --background Run the process in the background.
hdapsd[760]: -p --pidfile[=] Create a pid file when running
hdapsd[760]: in background.
hdapsd[760]: If is not specified,
hdapsd[760]: it's set to /var/run/hdapsd.pid.
hdapsd[760]: -t --dry-run Don't actually park the drive.
hdapsd[760]: -y --poll-sysfs Force use of sysfs interface to
hdapsd[760]: accelerometer.
hdapsd[760]: -H --hardware-logic Use the hardware fall detection logic instead of
hdapsd[760]: the software one (-s/--sensitivity and -a/--adaptive
hdapsd[760]: have no effect in this mode).
hdapsd[760]: -S --software-logic Use the software fall detection logic even if the
hdapsd[760]: hardware one is available.
hdapsd[760]: -L --no-leds Don't blink the LEDs.
hdapsd[760]: -l --syslog Log to syslog instead of stdout/stderr.
hdapsd[760]: -V --version Display version information and exit.
hdapsd[760]: -h --help Display this message and exit.
hdapsd[760]: You can send SIGUSR1 to deactivate hdapsd for 8 seconds.
hdapsd[760]: Send bugs, comments and suggestions to hdaps-devel@lists.sourceforge.net
systemd[1]: hdapsd.service: Main process exited, code=exited, status=1/FAILURE
systemd[1]: hdapsd.service: Failed with result 'exit-code'.
[3]
$ cat com.canonical.certification__disk_hdd-parking.stdout
Starting HDD protection test - move the system around on all axis. No particular force should be required.
Tue Jan 5 01:52:02 2021: Starting hdapsd
Tue Jan 5 01:52:02 2021: WARNING: You did not supply any devices to protect, trying autodetection.
Usage: hdapsd [OPTIONS]
-c --cfgfile= Load configuration from .
By default, configuration is read from /etc/hdapsd.conf
-d --device= is likely to be hda or sda.
Can be given multiple times
to protect multiple devices.
-f --force Force unloading heads, even if kernel thinks
differently (on pre ATA7 drives).
This only works when adding devices by hand (-d).
-r --force-rotational Autodetect drives as rotational, even if
kernel thinks they are not.
-s --sensitivity= How sensitive hdapsd should be to movements.
Defaults to 15, higher value means less
sensitive.
-a --adaptive Adaptive threshold (automatic increase
when the built-in keyboard/mouse are used).
-v --verbose Get verbose statistics.
-b --background Run the process in the background.
-p --pidfile[=] Create a pid file when running
in background.
If is not specified,
it's set to /var/run/hdapsd.pid.
-t --dry-run Don't actually park the drive.
-y --poll-sysfs Force use of sysfs interface to
accelerometer.
-H --hardware-logic Use the hardware fall detection logic instead of
the software one (-s/--sensitivity and -a/--adaptive
have no effect in this mode).
-S --software-logic Use the software fall detection logic even if the
hardware one is available.
-L --no-leds Don't blink the LEDs.
-l --syslog Log to syslog instead of stdout/stderr.
-V --version Display version information and exit.
-h --help Display this message and exit.
You can send SIGUSR1 to deactivate hdapsd for 8 seconds.
Send bugs, comments and suggestions to hdaps-devel@lists.sourceforge.net
[4]
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
...
nvme0n1 259:0 0 953.9G 0 disk
|-nvme0n1p1 259:1 0 512.1M 0 part /var/lib/snapd/hostfs/boot/efi
|-nvme0n1p2 259:2 0 4.3G 0 part
`-nvme0n1p3 259:3 0 949G 0 part /var/lib/snapd/hostfs
Attachments
No attachments
Tags:
['oem-priority', 'originate-from-1910194', 'originate-from-1929666', 'stella']
The text was updated successfully, but these errors were encountered: