On Thu, 26 Feb 2026 15:32:54 +0000
Rainer Weikusat via Dng <dng@???> wrote:
> tito via Dng <dng@???> writes:
> > On Wed, 25 Feb 2026 21:33:23 +0100
> > tito via Dng <dng@???> wrote:
>
> [...]
>
> >> in my case apparently this was not triggered even after rebooting the system
> >> cannot say why. Only after adding the rule and running udevadm trigger
> >> the symlink was created and DeviceDisappeared messages stoppped.
> >> Have no Idea how this could be debugged tough. Let me know
> >> if you have any ideas. Can do some tests on this machine even tough
> >> it is a production one.
>
> The automatically created symlinks in /dev/md are only the md device
> numbes, ie, without the leading md.
>
> > P.s.: I suspect mdadm expects /dev/md/mdX when run as mdadm --monitor --scan --oneshot (by e.g. cron)
> > but creates a mdadm.conf with /dev/md0 when run as mdadm --detail --scan
> >
> > ARRAY /dev/md0 metadata=1.2 spares=1 UUID=705d30b8:1b64bf1b:8d5bf391:65e26d6f
> >
> > even when /dev/md/md0 symlinks are already created.
>
> I've had a close look at this. As far as I can tell, the only way to get
> this device disappeared event is to have an entry like this in
> mdadm.conf:
>
> ARRAY md0 metadata=1.2 UUID=0f4fb9df:cf2de137:bd5effb7:44ba4303
>
> ie, without directory. The 4.2 Monitor routine will run this code to add
> a directory:
>
> mdlist = conf_get_ident(NULL);
> for (; mdlist; mdlist = mdlist->next) {
> struct state *st;
>
> if (mdlist->devname == NULL)
> continue;
> if (strcasecmp(mdlist->devname, "<ignore>") == 0)
> continue;
> st = xcalloc(1, sizeof *st);
> if (mdlist->devname[0] == '/')
> st->devname = xstrdup(mdlist->devname);
> else {
> st->devname = xmalloc(8+strlen(mdlist->devname)+1);
> strcat(strcpy(st->devname, "/dev/md/"),
> mdlist->devname);
> }
>
> the auto-completed name will thus be /dev/md/md0 and check_array will
> then cause the "disappeared" alert. This won't happen anymore with 4.5
> because there's now an additional check that a name is a valid md device
> done from this loop and check_array won't be called with this name
> anymore if it either couldn't be opened or wasn't a md device (and
> hence, there'll be no more alerts about a disappeared device).
>
> That was a rather nice investigation, BTW, especially considering that I
> just got rejected for another job application on the grounds that I have
> 'obviously' no technical skills or experience whatsoever.
O tempora, o mores!
Asterix und der Arvernerschild - Band XI
Thanks for you time and effort.
Ciao,
Tito