-
Notifications
You must be signed in to change notification settings - Fork 32
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
No spindown after resume in v1.18. #81
Comments
Duplicate of #66 Would you like to discuss here your issues building the package? Otherwise I'll close it as is a duplicated of a known issue. |
In a certain way the problem is different, I am aware that I opened the other issue, but what happened to me in the other issue is different from what happens to me in this one. About building the package, I have no problem because I use the deb already compiled by you, but we can look at solving this too, everything that is improving it or solving problems, perfect. |
@WonderSkydive I've done a bit of testing with v1.18 and this is what I got:
and this in the program output (syslog):
This tells me that it works as intended. Could you please check if you get the message |
i have the same problem quick digup tells me that .Sub uses monotonic clock which on some systems may stops when the computer is in S3 sleep (golang/go#36141) duration := time.Now().Unix() - lastNow.Unix() everything works as excepted compiled with go 1.19.4 |
This is a great finding.
I'll make sure it's implemented in the next release.
…On 27 January 2023 23:30:28 CET, msz-kp ***@***.***> wrote:
i have the same problem
..what i noticed
now.Sub(lastNow) in updateState(tmp DiskStats, config *Config) returns incorrect value
now.Sub(lastNow) > config.SkewTime is always false
quick digup tells me that .Sub uses monotonic clock which on some systems may stops when the computer is in S3 sleep (golang/go#36141)
if i change updateState to:
`
duration := time.Now().Unix() - lastNow.Unix()
if duration > int64(config.SkewTime/1000000000) {
`
everything works as excepted
compiled with go 1.19.4
--
Reply to this email directly or view it on GitHub:
#81 (comment)
You are receiving this because you commented.
Message ID: ***@***.***>
|
Hi @WonderSkydive and @msz-kp |
Hi @adelolmo |
Excuse me for the delay in answering, I wanted to try it well and in recent days, I lacked time for everything. |
Hello. First of all, congratulations for the continuity of this project and for having released version 1.18.
I have installed this version on a fresh install of Debian 11.5, I couldn't build the package myself using dpkg-buildpackage (several errors, despite installing golang-go, dkpg...always error on make. So I used the already created file in .deb
Congratulations! This version brings what is necessary so that, once we resume the computer from sleep, hibernation or hybrid sleep, the hd-idle service continues to work!
But... the error that I have detected:
We start pc for the first time, without doing anything, the hard drives go to spindown without problems, we suspend pc, when resuming, the hd-idle service continues to run but ... it does not spin down the hard drives, so that it spins them down , you must access the hard disk, so if, after the configured time, it takes it to spindown, but in my case, I have 3 hard disks, it only takes spindown to the one I access, for example, if I access 1, 2 and 3 stay up, if then I access 2, 3 stays up. This always, after resuming from sleep, if I want it to take the hard drives back to spindown, I must access all 3 hard drives, if I only access 1 or 2, the remaining one or more, does not take them to spindown.
If I install/run hd-idle-restart-resume.service which comes from this patch: https://sourceforge.net/p/hd-idle/patches/2/ (on version 1.18 here) it works every time.
But I don't like to mix a new version like this improved with an old patch.
I hope I was able to explain myself.
Thank you for this work and greetings.
The text was updated successfully, but these errors were encountered: