Originally posted by starshipeleven
View Post
Announcement
Collapse
No announcement yet.
AMD Releases BIOS Fix To Motherboard Partners For Booting Newer Linux Distributions
Collapse
X
-
- Likes 1
-
Originally posted by pal666 View Postoutside of your fantasy world systemd did use /dev/random and had stalled boots waiting for entropy in some cases, which were fixed by usage of rdrand. urandom is pseudorandom, you don't need any kernel or hardware help for that, so even bringing it up here is incredibly clueless. and btw what makes you think kernel doesn't use rdrand? /dev/random doesn't grow on trees, it has to be implemented somehow and modern kernels do use rdrand
- Likes 2
Comment
-
Originally posted by edwaleni View PostAMD should work fast. Zen 2 is selling very, very well. See the lines at MicroCenter the morning of the release.
- Likes 1
Comment
-
Originally posted by rene View Post
so, what is so important in systemd that it needs more then urandom early in the boot?
/dev/urandom isn't ready that early in the boot process.
- Likes 1
Comment
-
Originally posted by starshipeleven View PostWhy would they. Server distros won't support this hardware for a while, and it's also consumer hardware so it's kind of unlikely to be used with server distros anyway.
I repeat, here the issue is that they didn't test that the fucking instruction itself was working correctly.
- Likes 2
Comment
-
Originally posted by Britoid View Post
high chance of getting two of the same value and you don't want two instances having a chance of the same instance id.
/dev/urandom isn't ready that early in the boot process.
- Likes 1
Comment
-
Originally posted by rene View Postso, what is so important in systemd that it needs more then urandom early in the boot?The systemd System and Service Manager . Contribute to systemd/systemd development by creating an account on GitHub.
The reason is stated in the above file. Hash table seed generation is a security mitigation. You need a randomish value for that mitigation. UUID generation in places randomish value helps. Both of these are need before the kernel number generator will be functional.
I do think systemd does need to have it messages to end users made clearly when its having RDRAND issue and maybe a count out ie try 20 times to get RDRAND to work then call it. I would say panic and stop with a clean message with a kernel boot flag added to say hey this platform has RDRAND it busted don't use it.
EOPNOTSUPP option say that systemd at least if it believe the system does not have a RDRAND can find it way forwards.
Remember RDRAND not working can lower the quality of your TLS encryption and other things so if RDRAND is broken. You really do want to know about as RDRAND failure will undermine hash table security and other security things.
- Likes 2
Comment
-
Originally posted by rene View Post
As much as I love AMD; I would not call no action for 4+ years fast: https://bugzilla.kernel.org/show_bug.cgi?id=85911 Also what is with this bug in previous generation CPUs after suspend / resume?
as posted several times here, too:
AMD A4-6210
So @Michael:
Please ask AMD about 'older' Ryzen 2xxx and Ax-xxxx, too. Please.
BIOS/firmware updates?
- Likes 1
Comment
-
The comments on this thread are so amazingly all over the place I had to register (oh no, someone is wrong on the internet).
On the systemd side: they claim they had to use randr to get randomness during early boot. They need weak randomness (as stated in their code) so not for crypto stuff. They had 2 options that make sense:
1) Use /dev/urandom - No that makes logging messages in the kernel when there is not enough randomness to provide crypto grade random
2) Use a C based random number generator (as has been used since the earliest computers). There are numerous algorithms available.
But instead they used randr which is there to provide crypto grade randomness and have a silly 'if the operation does not do what I like, i keep retrying it". This is called an endless loop. The reason for not using urandom (which is strong enough for what they need randomness for) is plain and utter stupid: logging messages in the kernel are a reason to re-implement something and getting it wrong?
So, systemd choose to use a means to get randomness that is neither fit for purpose (ultrastrong randomness for a mere hash/uuid generation) and got it wrong by doing an endless loop. This last bit is basically a bug on the systemd side. The first is a common theme in systemd where overengineering prevails over common sense.
On the AMD part: sure that is a bug in the randr instruction. Like many CPUs have bugs and most get fixed with new microcode. Nothing new there. Silly but to be expected.
So my take on this is: AMD made a booboo and is correcting it, Systemd is a booboo by design and is just adding silly arguments in code to explain their design.
- Likes 5
Comment
Comment