On 9/18/19 1:12 AM, NeilBrown wrote:
There is a bug in udev (which will hopefully get fixed, but we should allow for it anways). When reading a sysfs attribute, it first reads the whole value of the attribute, then reads again expecting to get a read of 0 bytes, like you would with an ordinary file. If the sysfs attribute changed between these two reads, it can get a mixture of two values. In particular, if it reads when 'array_state' is changing from 'clear' to 'inactive', it can find the value as "clear\nve". This causes the test for "|clear|active" to fail, so systemd is allowed to think that the array is ready - when it isn't. So change the pattern to allow for this but adding a wildcard at the end. Also don't allow for an empty string - reading array_state will never return an empty string - if it exists at all, it will be non-empty. Signed-off-by: NeilBrown <neilb@xxxxxxx> --- udev-md-raid-arrays.rules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Applied! Thanks, Jes