diff options
author | phk <phk@FreeBSD.org> | 2003-05-31 16:48:43 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2003-05-31 16:48:43 +0000 |
commit | 9c455f6a96d95072da3609172da2e475939ef6e6 (patch) | |
tree | 37a7ec87b7a681ffa87246921b77fae96e43f736 /sys/geom | |
parent | 383c23d209fa50945b869979ab07069a46b41123 (diff) | |
download | FreeBSD-src-9c455f6a96d95072da3609172da2e475939ef6e6.zip FreeBSD-src-9c455f6a96d95072da3609172da2e475939ef6e6.tar.gz |
Use le_uuid_dec() since GPT UUID's are always in LE format.
Tested by: Marcel
Diffstat (limited to 'sys/geom')
-rw-r--r-- | sys/geom/geom_gpt.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/geom/geom_gpt.c b/sys/geom/geom_gpt.c index 933b57e..89853e7 100644 --- a/sys/geom/geom_gpt.c +++ b/sys/geom/geom_gpt.c @@ -183,17 +183,19 @@ g_gpt_taste(struct g_class *mp, struct g_provider *pp, int insist) for (i = 0; i < hdr->hdr_entries; i++) { struct uuid unused = GPT_ENT_TYPE_UNUSED; struct uuid freebsd = GPT_ENT_TYPE_FREEBSD; + struct uuid tmp; if (i >= GPT_MAX_SLICES) break; ent = (void*)(buf + i * hdr->hdr_entsz); - if (!memcmp(&ent->ent_type, &unused, sizeof(unused))) + le_uuid_dec(&ent->ent_type, &tmp); + if (!memcmp(&tmp, &unused, sizeof(unused))) continue; /* XXX: This memory leaks */ gs->part[i] = g_malloc(hdr->hdr_entsz, M_WAITOK); if (gs->part[i] == NULL) break; bcopy(ent, gs->part[i], hdr->hdr_entsz); - ps = (!memcmp(&ent->ent_type, &freebsd, sizeof(freebsd))) + ps = (!memcmp(&tmp, &freebsd, sizeof(freebsd))) ? 's' : 'p'; g_topology_lock(); (void)g_slice_config(gp, i, G_SLICE_CONFIG_SET, |