[PATCH 0/8] Support large files on larger ext4 partitions on larger still USB disks

Ahmad Fatoum a.fatoum at pengutronix.de
Tue Feb 16 15:02:00 EST 2021


Most of this series is patching in 64-bit types at a lot of places.
I hope this doesn't add any nasty regressions elsewhere.

I tested this on ARM 32-bit (i.MX6) and sandbox x86 and x86_64.

Stuff that newly works:
 - Accessing all of a 2 TiB USB drive
 - Having multi-TB ext4 partitions
 - Having ext4 files larger than 2G

This series depends on 
"treewide: include <linux/math64.h> wrapper instead of <asm-generic/div64.h>"
to not cause a build error.

Cheers,
Ahmad Fatoum (8):
  ext4: ext_common.h: drop declaration of never-defined part_offset
  fs: ext4: ext4fs.h: remove unused struct members of ext_filesystem
  block: use 64-bit types for sector offset and count on all platforms
  usb: storage: support USB disks up to 2TiB of size
  fs: ext4: use sector_t and loff_t where appropriate
  fs: ext4: support files exceeding 4G
  show_progress: change HASHES_PER_LINE from 65 to 64 to avoid division
  copy_file: fix progress bar for files larger than 2G

 arch/sandbox/board/hostfile.c |  4 ++--
 common/block.c                | 35 +++++++++++++++++-----------------
 common/partitions.c           |  2 +-
 drivers/ata/ahci.c            | 12 ++++++------
 drivers/ata/disk_ata_drive.c  | 10 +++++-----
 drivers/ata/disk_bios_drive.c | 16 ++++++++--------
 drivers/ata/ide-sff.c         | 12 ++++++------
 drivers/block/efi-block-io.c  |  8 ++++----
 drivers/mci/mci-core.c        | 36 +++++++++++++++++------------------
 drivers/nvme/host/core.c      | 12 ++++++------
 drivers/usb/storage/usb.c     | 25 ++++++++++++------------
 fs/ext4/ext4_common.c         | 23 ++++++++++++----------
 fs/ext4/ext4_common.h         |  4 ++--
 fs/ext4/ext4fs.c              | 36 +++++++++++++++++++----------------
 fs/ext4/ext4fs.h              | 31 +-----------------------------
 fs/ext4/ext_barebox.c         |  8 ++++----
 fs/ext4/ext_common.h          | 10 +++++++++-
 include/ata_drive.h           |  4 ++--
 include/block.h               | 15 ++++++++-------
 include/linux/types.h         |  5 -----
 include/progress.h            |  6 ++++--
 lib/libfile.c                 |  2 +-
 lib/show_progress.c           | 17 ++++++++---------
 23 files changed, 159 insertions(+), 174 deletions(-)

-- 
2.29.2




More information about the barebox mailing list