/* Read the server config files */ int osd_read_ldd(char *dev, struct lustre_disk_data *ldd) { int ret; switch (ldd->ldd_mount_type) { #ifdef HAVE_LDISKFS_OSD case LDD_MT_LDISKFS: case LDD_MT_LDISKFS2: ret = ldiskfs_read_ldd(dev, ldd); break; #endif /* HAVE_LDISKFS_OSD */ #ifdef HAVE_ZFS_OSD case LDD_MT_ZFS: ret = zfs_read_ldd(dev, ldd); break; #endif /* HAVE_ZFS_OSD */ default: fatal(); fprintf(stderr, "unknown fs type %d '%s'\n", ldd->ldd_mount_type, MT_STR(ldd)); ret = EINVAL; break; } return ret; }
int zfs_is_lustre(char *ds, unsigned *mount_type) { struct lustre_disk_data tmp_ldd; int ret; if (osd_zfs_setup == 0) return 0; ret = zfs_read_ldd(ds, &tmp_ldd); if ((ret == 0) && (tmp_ldd.ldd_config_ver > 0) && (strlen(tmp_ldd.ldd_svname) > 0)) { *mount_type = tmp_ldd.ldd_mount_type; return 1; } return 0; }