sprintf(buff, "%s%s/block",
conf->sysfs_path, conf->hotplugdev);
memset(conf->hotplugdev, 0, FILE_NAME_SIZE);
- readlink(buff, conf->hotplugdev, FILE_NAME_SIZE);
+
+ /* if called from hotplug but with no block, leave */
+ if (0 > readlink(buff, conf->hotplugdev, FILE_NAME_SIZE))
+ return 0;
+
basename(conf->hotplugdev, buff);
sprintf(curpath.sg_dev, "/dev/%s", buff);
if (all_paths[PINDEX(index,0)].iopolicy == MULTIBUS &&
!conf->forcedfailover ) {
- params_p += sprintf(params_p, " %i %s %i %i",
+ params_p += sprintf(params_p, " 1 %i %s %i %i",
dm_pg_prio, dm_ps_name, np, dm_ps_nr_args);
for (i=0; i<=mp[index].npaths; i++) {
if (all_paths[PINDEX(index,0)].iopolicy == FAILOVER ||
conf->forcedfailover) {
+ params_p += sprintf(params_p, " %i", mp[index].npaths + 1);
for (i=0; i<=mp[index].npaths; i++) {
if (0 != all_paths[PINDEX(index,i)].sg_id.scsi_type)
continue;