From: Kay Sievers Date: Thu, 13 Nov 2008 20:44:28 +0000 (+0100) Subject: volume_id: ntfs - mark as no other fs must match X-Git-Tag: 174~1315 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=510af2e9397373a562aa66f9a8027980057bfa09;p=systemd volume_id: ntfs - mark as no other fs must match --- diff --git a/NEWS b/NEWS index aec8bb33..b102ba37 100644 --- a/NEWS +++ b/NEWS @@ -14,6 +14,20 @@ functionality. Installations which support old kernels, but install current default udev rules may need to add that to the compat rules file. +Libvolume_id now always probes for all known filesystems, and does not +stop at the first match. Some filesystems are marked as "exclusive probe" +and if one of these filesytem types match, libvolume_id will not return +a probing result if any other filesystem type matches. This is intended +to help with conflicting left-over signatures from earlier file system +formats. That way, we no longer depend on the probing order for competing +signatures. +In some cases the kernel allows to mount a volume with the old filesystem +type, before it has been re-formatted with a different type. This can +damage the new filesystem and lead to data loss. Because volume_id can +not decide which is the correct signature, the wrong signatures need to +be removed manually from the volume, or the volume needs to be reformatted +to make filesystem auto-detection and possible auto-mounting working. + udev 132 ======== diff --git a/extras/volume_id/lib/ntfs.c b/extras/volume_id/lib/ntfs.c index f861b4bf..b322c77d 100644 --- a/extras/volume_id/lib/ntfs.c +++ b/extras/volume_id/lib/ntfs.c @@ -195,6 +195,7 @@ int volume_id_probe_ntfs(struct volume_id *id, uint64_t off, uint64_t size) volume_id_set_usage(id, VOLUME_ID_FILESYSTEM); id->type = "ntfs"; - + /* we think this is ntfs, but we make sure no other signatures are found */ + id->force_unique_result = 1; return 0; }