diff options
author | H. Peter Anvin <hpa@linux.intel.com> | 2010-06-15 16:18:24 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2010-06-15 16:18:24 -0700 |
commit | 7ebe9987b9e2416716a56213341221489bf8ebb7 (patch) | |
tree | a397933ab593103119fda5d638291363e46a7167 /linux | |
parent | 29f9390d8e278d31d39a60c8e37febea2c9e8454 (diff) | |
download | syslinux-7ebe9987b9e2416716a56213341221489bf8ebb7.tar.gz |
Switch to 64-bit sector pointers everywhere
Switch to consistent use of 64-bit sector pointers; this should enable
booting even for individual *partitions* larger than 2 TB. In order
to not slow down the boot too much, switch the initial load from an
enumeration to an extent map. This means the table gets larger (since
we have to assume the worst case), but it simplifies the Sector 1 code
(since we can push all the hard stuff into the installer), and will
speed up booting in the general case.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'linux')
-rw-r--r-- | linux/syslinux.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/linux/syslinux.c b/linux/syslinux.c index d6a5d834..34d591b7 100644 --- a/linux/syslinux.c +++ b/linux/syslinux.c @@ -277,7 +277,7 @@ int main(int argc, char *argv[]) char *ldlinux_name; char *ldlinux_path; char *subdir; - uint32_t *sectors = NULL; + sector_t *sectors = NULL; int ldlinux_sectors = (boot_image_len + SECTOR_SIZE - 1) >> SECTOR_SHIFT; const char *errmsg; int mnt_cookie; @@ -472,7 +472,8 @@ umount: /* * Patch ldlinux.sys and the boot sector */ - i = syslinux_patch(sectors, ldlinux_sectors, opt.stupid_mode, opt.raid_mode, subdir); + i = syslinux_patch(sectors, ldlinux_sectors, opt.stupid_mode, + opt.raid_mode, subdir); patch_sectors = (i + SECTOR_SIZE - 1) >> SECTOR_SHIFT; /* |