Hi!
Jack Curran - 28.07.24, 01:53:34 CEST:
Martin Steigerwald wrote:
Still just lurking here, more and more dissatisfied with erratic behavior related to the Linux kernel and probably some other components, but for
What things have you encountered?
Not quite on topic here I bet. However as you asked I summarize it.
Several regressions related to hibernation and even just switching off the machine for a regular shutdown or cleanly a rebooting a machine. On ThinkPad T14 AMD Gen 1 for example 6.7.9 works fine, 6.7.10 fails hibernation, 6.7.11 fails hibernation with a different, a workqueue related error. And both were not even able to shutdown the machine or reboot! Some 6.8 failed with the same error than 6.7.11. I had similar things with a ThinkPad X260 with earlier kernels.
I ordered a ThinkPad T14 AMD Gen 5 partly out of frustration with that, and there at least hibernation works again as hibernation also works with a ThinkPad T14 AMD Gen 2 I use at work. But the Linux support for the Gen 5 is not yet complete and there are firmware issues being sorted out by Lenovo. So its not completely stable as well. Some hibernation attempts failed with different symptoms. Sometimes the hibernation was successful but it did not switch off. I am in contact with the Linux community guy at Lenovo about it. The most stable of the three on Linux is currently the Gen 2. Actually as far as I have been told Lenovo does not even include hibernation in their Linux support for laptops, cause they know its unstable, not just for Lenovo laptops.
I remember a time when I was able to hibernate for months to come. Typing "who" in a KDE desktop session revealed I logged in on April. I don't have this on my main use laptops anymore. The music laptop, the X260, can still do it but that is using a Xanmod LTS kernel as the regular Debian kernel also did not hibernate correctly at one point. And I do not update it very often. Actually I save out dpkg packages on a kernel upgrade, so that if its not available in the package source anymore I can still install the kernel. And on the Gen 5 there was an additional several second delay in resuming from regular s2idle standby that apparently got fixed in 6.9.10 kernel but was there with all the prior kernels from some 6.8 to 6.9.9 I used on the laptop.
It is basically a hit or miss these times. Especially with machines that are a bit older and out of focus of testing for them.
In addition to that there I had hangs with a graphical session, GPU hangs.
Lastly, the error messages are not very helpful and… whenever I take the time to report an issue, they tell me to bisect. I could bisect between 6.7.9 and 6.7.11 for example, but… I am reluctant to do it between 6.7 and 6.8 for example cause then I would use in between developmental states of the Linux kernel on a production machine and it can take a lot of time. So basically for now I stopped even reporting issues on Linux mailing lists.
What I am hoping for is an operating system, where drivers do not even have the ability to prevent a hibernation from completing successfully, prevent the machine from just shutting down or make the system unstable in any other way beyond their domain of work. Linux is all in one and it is developed in such a rollercoaster speed… I worked with rolling Debian/ Devuan for decades on desktop machines meanwhile, but I am feeling like staying on the next stable release, cause the breakage with every new kernel release is just too much for me to handle. My subjective feeling is that the quality deteriorated quite a bit. And I think part of the reason is overwhelm of the developers with the speed of development and the complexity of Linux. So it is not as an offense to them. They try to do their best and I appreciate their work.
Also I hope for an operating system where error message really tell the *reason* for the error and are descriptive and helpful instead of leaving the user with something like this:
[ 76.666115] port 0000:02:00.1:0.0: PM: dpm_run_callback(): pm_runtime_force_suspend+0x0/0x120 returns -16
(It now comes to me that 0000:02:00.1:0.0 might refer to some PCI device. I did not get that back when I reported the error.)
And it may not just be Linux. It's also about bugs in firmware and the complexity of modern hardware in general. I lurk by here to monitor the progress of Genode and maybe at one time take the time to try it out on some real hardware.
With memory safe you mean written in Rust or a language with similar qualities?
Yes Rust is one example of a memory safe language. Other examples are Haskell, Java, Python, Typescript, JavaScript, Go, C#, Kotlin, Scala, Swift, Ruby, Ada and OCaml.
[…]
These links will give a more detailed explanation than I can: https://www.memorysafety.org/docs/memory-safety/ https://en.wikipedia.org/wiki/Memory_safety https://doc.rust-lang.org/book/ch19-01-unsafe-rust.html
Yeah, thank you for your detailed introduction and for the links.
Best,