diff options
Diffstat (limited to 'extlinux/extlinux.c')
| -rw-r--r-- | extlinux/extlinux.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/extlinux/extlinux.c b/extlinux/extlinux.c index 34c00f87..13f1f346 100644 --- a/extlinux/extlinux.c +++ b/extlinux/extlinux.c @@ -282,9 +282,12 @@ uint64_t get_size(int devfd) uint32_t sects; struct stat st; +#ifdef BLKGETSIZE64 if ( !ioctl(devfd, BLKGETSIZE64, &bytes) ) return bytes; - else if ( !ioctl(devfd, BLKGETSIZE, §s) ) +#endif + + if ( !ioctl(devfd, BLKGETSIZE, §s) ) return (uint64_t)sects << 9; else if ( !fstat(devfd, &st) && st.st_size ) return st.st_size; |
