DF-0228 / fix.diff
diff --git a/sys/kern/subr_diskgpt.c b/sys/kern/subr_diskgpt.c --- a/sys/kern/subr_diskgpt.c +++ b/sys/kern/subr_diskgpt.c @@ -77,7 +77,7 @@ uint32_t entries; uint32_t entsz; uint32_t crc; - uint32_t table_lba; + uint64_t table_lba; uint32_t table_blocks; int i; const char *dname; @@ -130,7 +130,7 @@ */ entries = le32toh(gpt->hdr_entries); entsz = le32toh(gpt->hdr_entsz); - table_lba = le32toh(gpt->hdr_lba_table); + table_lba = le64toh(gpt->hdr_lba_table); table_blocks = (entries * entsz + info->d_media_blksize - 1) / info->d_media_blksize; if (entries < 1 || entries > MAX_GPT_ENTRIES || |