On 19-11-2024 19:00, Udo Grabowski (IMK) wrote: > On 19-11-2024 18:46, Udo Grabowski (IMK) wrote: >> Hi, >> for a while now, stmsboot drops the error message below, but after >> reboot, it works fine. The message is actually caused by >> /lib/mpxio/stmsboot_util -D mpt_sas -N, which spits out '|iport' >> instead of 'iport', letting the search in /dev/dsk/* for it fail. >> The consequence is that former automatic discovery for vhci-capable >> disks fails and you have to revert to the failover list in >> /kernel/drv/scsi_vhci.conf again. stmsboot_util is a compiled >> executable. >> >> # stmsboot -e -D mpt_sas >> WARNING: This operation will require a reboot. >> Do you want to continue ? [y/n] (default: y) y >> egrep: RE error in |iport: invalid regular expression  <=========== >> ... > > > Looks like an oversight for an edge case: > >  -N > 385       *    same as the -n option, except that we only print the > 386       *    node-name (dev_info :: devi_node_name). Multiple instances > 387       *    through the libdevinfo snapshot are uniqified and separated > 388       *    by the "|" character for direct use by egrep(1). > > For only one item, there should be no "|" . > This is the relevant section in usr/src/cmd/stmsboot/stmsboot_util.c 1144 if (cap_N_option) { 1145 char *nodename = di_node_name(curnode); 1146 /* nodename is never going to be null */ 1147 if (strstr(aliases, nodename) == NULL) 1148 /* haven't seen this nodename before */ 1149 (void) snprintf(aliases, 1150 MAXPATHLEN + 1, "%s|%s", 1151 ((aliases != NULL) ? aliases : ""), 1152 nodename); 1153 } else 1154 (void) printf("%s\n", path); -- Dr.Udo Grabowski Inst.of Meteorology & Climate Research IMK-ASF-SAT https://www.imk-asf.kit.edu/english/sat.php KIT - Karlsruhe Institute of Technology https://www.kit.edu Postfach 3640,76021 Karlsruhe,Germany T:(+49)721 608-26026 F:-926026