*pp = '\0';
return path;
}
+
+ /* If this is a FusionIO disk. */
+ if ((strncmp ("fio", p, 3) == 0) && p[3] >= 'a' && p[3] <= 'z')
+ {
+ char *pp = p + 3;
+ while (*pp >= 'a' && *pp <= 'z')
+ pp++;
+ if (*pp)
+ *is_part = 1;
+ /* /dev/fio[a-z]+[0-9]* */
+ *pp = '\0';
+ return path;
+ }
}
return path;
{
sprintf (name, "/dev/xvd%c", unit + 'a');
}
+
+static void
+get_fio_disk_name (char *name, int unit)
+{
+ sprintf (name, "/dev/fio%c", unit + 'a');
+}
#endif
static struct seen_device
}
}
+ /* FusionIO. */
+ for (i = 0; i < 26; i++)
+ {
+ char name[16];
+
+ get_fio_disk_name (name, i);
+ if (check_device_readable_unique (name))
+ {
+ if (hook (name, 0, hook_data))
+ goto out;
+ }
+ }
+
# ifdef HAVE_DEVICE_MAPPER
# define dmraid_check(cond, ...) \
if (! (cond)) \