summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* debian: update changelog for bullseye-backports release 1.46.5-2~bpo11+1debian/1.46.5-2_bpo11+1archive/debian/1.46.5-2_bpo11+1Theodore Ts'o2022-01-061-0/+6
| | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
* debian: adjust gbp.conf to build for bullseye-backportsTheodore Ts'o2022-01-061-1/+1
| | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
* Merge branch 'debian/master' into debian/backportsTheodore Ts'o2022-01-06291-19137/+23722
|\
| * Update debian/changelog and debian/patches for the 1.46.5-2 releasedebian/1.46.5-2archive/debian/1.46.5-2Theodore Ts'o2022-01-033-0/+40
| | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| * Merge branch 'maint' into debian/masterTheodore Ts'o2022-01-031-1/+1
| |\
| | * tests: support older versions of timeout in r_corrupt_fsTheodore Ts'o2022-01-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Older versions of the timeout program in coreutils don't support the -v option. (This is apparently still in use in the GNU/FreeBSD Debain port since coreutils hasn't built successfully since Coreutils version 8.28.) Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * debian: suppress the no-debian-changes lintian warningTheodore Ts'o2022-01-011-0/+1
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| * | debian: suppress the no-debian-changes lintian warningdebian/1.46.5-1archive/debian/1.46.5-1Theodore Ts'o2021-12-301-0/+1
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| * | Merge tag 'v1.46.5' into debian/masterTheodore Ts'o2021-12-3062-6446/+7284
| |\ \ | | |/ | | | | | | v1.46.5
| | * Update release notes, etc., for the 1.46.5 releasev1.46.5Theodore Ts'o2021-12-3011-138/+246
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * mke2fs.conf.5: fix spelling errors in man pageTheodore Ts'o2021-12-291-2/+2
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * tst_getsize: use ext2fs_get_device_size2() to support testing large devicesTheodore Ts'o2021-12-282-6/+8
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * po: update zh_CN.po (from translationproject.org)Wenbin Lv2021-12-281-2282/+2389
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * po: update uk.po (from translationproject.org)Yuri Chornoivan2021-12-281-927/+1025
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * po: update sv.po (from translationproject.org)Göran Uddeborg2021-12-281-9/+9
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * po: update sr.po (from translationproject.org)Мирослав Николић2021-12-281-925/+1023
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * po: update ms.po (from translationproject.org)Sharuzzaman Ahmat Raslan2021-12-281-1007/+1081
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * po: update es.po (from translationproject.org)Antonio Ceballos2021-12-281-940/+1040
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * reisze2fs: sanity check free block group counts when calculating minimum sizeTheodore Ts'o2021-12-284-2/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If one or more block group descriptor's free blocks count is insane, it's possible this can lead to a infinite loop in the function calculate_minimum_resize_size(), which is called by resize2fs -P or resize2fs -M. Add some sanity checks to avoid this. In the case where the file system is corrupt, this will result in resize2fs -P reporting an incorrect value, but that's OK, since when we try to do an actual resize operation, resize2fs requires that the file system be freshly checked using e2fsck. https://github.com/tytso/e2fsprogs/issues/94 Fixes: ac94445fc01f ("resize2fs: make minimum size estimates more reliable for mounted fs") Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * setup-schroot: add some additional packages needed to build debian packagesTheodore Ts'o2021-12-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | On older Debian systems, "apt-get build-dep e2fsprogs" might not bring in all of the packages needed to build in the most recent versions of e2fsprogs. So explicitly try to install some additional packages including dh-exec, udev, systemd, and cron. Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * libuuid: try to use getrandom() or getentropy() if availableTheodore Ts'o2021-12-214-3/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If getrandom() or getentropy() is available, use these interfaces in favor of opening /dev/[u]random. This avoids a potential TSAN problem that could potentially cause a fd leak when trying to open /dev/urandom. (Which is not a disaster, but these interfaces are more foolproof and avoids needing to open a file descriptor in a library, which is a good thing.) Addresses-Google-Bug: #198050608 Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * e2fsck: update the bg_checksum after fixing problems in the bg descriptorTheodore Ts'o2021-12-104-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | Otherwise, we break the block group descriptor's checksum, and while this gets fixed by e2fsck, it results unnecessary messages printed or questions asked of the system administrator. Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * libext2fs: don't old the CACHE_MTX while doing I/OTheodore Ts'o2021-12-091-25/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A report a deadlock problem caused by I/O errors (caused by e2fsck's error handler trying to write to a bad block to perform a forced rewrite) uncovered that we were holding the CACHE_MTX while doing read operations. This serialized read operations which destroyed the performance benefits from doing parallel bitmap loading (or the parallel e2fsck processing under development). So restructure the code in unix_read_blk64() so that the read is always done into the user-provided buffer, and then copied into the cache afterwards. Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * e2fsck: skip sorting extents if there are no valid extentsHarshad Shirwadkar2021-12-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | At the end of a fast commit replay, e2fsck tries merging extents in a inode. This patch fixes a bug in this logic where we were continuing this action even if there were no extents to merge resulting in accessing illegal memory. Signed-off-by: Harshad Shirwadkar <harshadshirwadkar@gmail.com>
| | * libext2fs: fix missing unlocks in the error path in unix_set_blksize()ryancaicse2021-12-031-1/+4
| | | | | | | | | | | | | | | | | | | | | https://github.com/tytso/e2fsprogs/pull/83 Signed-off-by: Ryan Cai <ryancaicse@gmail.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * tests: Add option to print diff output of failed testsLukas Czerner2021-09-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Add variable $PRINT_FAILED which when set will print the diff output of a failed test. Signed-off-by: Lukas Czerner <lczerner@redhat.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * resize2fs: optimize resize2fs_calculate_summary_stats()Theodore Ts'o2021-09-301-54/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | Speed up an off-line resize of a 10GB file system to 64TB located on tmpfs from 90 seconds to 16 seconds by extracting block group bitmaps using a population count function to count the blocks in use instead checking each bit in the block bitmap. Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * resize2fs: adjust new size of the file system to allow a successful resizeTheodore Ts'o2021-09-304-9/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous commit in this series (commit 50088b1996cc: "resize2fs: attempt to keep the # of inodes valid by removing the last bg") allows a successful off-line resize of a file system with the default 16k inode ratio to be grown to support a 64TB storage device by dropping the last block group so the number of inodes is just below the maximum 2**32-1 number of inodes. However, this is not a complete solution, for two reasons. First, this adjustment happens after resize2fs has started potentially making changes to the file system in the off-line (unmounted) case, which means resize2fs will do a lot of unnecessary work. Secondly, in the on-line resize case, passing the original requested size to the kernel causes the kernel fail the online resize request. So teach resize2fs to adjust the new size of the file system much earlier, which avoids both problems. Signed-off-by: Theodore Ts'o <tytso@mit.edu> Reviewed-by: Leah Rumancik <leah.rumancik@gmail.com>
| | * resize2fs: attempt to keep the # of inodes valid by removing the last bgTheodore Ts'o2021-09-301-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a the 10GB file system (with the default inode ratio size of 16k) is resized to 64TB, the number of inodes will become 2**32 --- one above the maximum allowed number of inodes of 2**32-1. In adjust_fs_info(), we already try drop the last block group if there isn't sufficient space in the last block group to support the metadata for that block group. So if dropping the last block group allows the number of inodes to valid, we should try that as well. In some cases this will mean resizing a file system to 64TB will result in it be resized to a size of 64TB - 128MB, which is close enough for government work. Addresses-Google-Bug: 199105099 Signed-off-by: Theodore Ts'o <tytso@mit.edu> Reviewed-by: Leah Rumancik <leah.rumancik@gmail.com>
| | * tests: update expect files for f_large_dir and f_large_dir_csumLukas Czerner2021-09-152-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Update expect files for f_large_dir and f_large_dir_csum tests to include the warning about missing y2038 support with 128-byte inodes. Fixes: a23b50cd ("mke2fs: warn about missing y2038 support when formatting fresh ext4 fs") Signed-off-by: Lukas Czerner <lczerner@redhat.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * tests: update expect files for f_mmp_garbageLukas Czerner2021-09-152-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Update expect file for f_mmp_garbage test to work correctly with the new default 256 inode size. Fixes: d730be5ceeba ("tests: update mke2fs.conf to create 256 byte inodes by default") Signed-off-by: Lukas Czerner <lczerner@redhat.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * quota: Drop dead codeJan Kara2021-09-031-20/+0
| | | | | | | | | | | | | | | | | | | | | Drop unused function from quota support code. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * debugfs: Fix headers for quota commandsJan Kara2021-09-033-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | list_quota and get_quota commands have 'blocks' header while what they actually show is a used space in bytes. Fix the header to state 'space' instead. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * tests: Expand test checking quota and orphan processing interactionJan Kara2021-09-033-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | Expand f_orphquot test to also check handling of quotas for non-root user and verify that quota limits are properly preserved over orphan replay. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * e2fsck: Do not trash user limits when processing orphan listJan Kara2021-09-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When e2fsck was loading quotas to process orphan list, it was loading only quota usage. However subsequent quota writeout has effectively overwritten quota limits, loosing them forever. Make sure quota limits are preserved over orphan replay. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * tune2fs: Fix conversion of quota filesJan Kara2021-09-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When tune2fs is enabling quota feature, it looks for old-style quota files and tries to transfer limits stored in these files into newly created hidded quota files. However the code doing the transfer setups the quota scan wrongly and instead of transferring limits we transfer usage. So not only quota limits are lost (at least they can still be recovered from the old quota files) but also usage information may be wrong if the accounting in e2fsprogs does not exactly match the accounting in quota-tools (which is actually the case). Fix the setup of the quota scan. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * quota: Rename quota_update_limits() to quota_read_all_dquots()Jan Kara2021-09-034-10/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | quota_update_limits() is a misnomer because what it actually does is that it updates 'usage' counters and leaves 'limit' counters intact. Rename quota_update_limits() to quota_read_all_dquots() and while changing prototype also add a flags argument so that callers can control which quota information is actually updated from the disk. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * quota: Fold quota_read_all_dquots() into quota_update_limits()Jan Kara2021-09-031-18/+6
| | | | | | | | | | | | | | | | | | | | | | | | There's just one caller of quota_read_all_dquots(), fold it into its caller quota_update_limits(). No functional changes. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * quota: Add support to version 0 quota formatJan Kara2021-09-032-6/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Version 0 quota format differs from version 1 by having only 32-bit counters for inodes and block limits. For many installations this is not limiting and thus the format is widely used. Also quota tools still create quota files with this format by default. Add support for this quota format to e2fsprogs so that we can seamlessly convert quota files in this format into our internal quota files. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * tests: update expect file for u_direct_ioTheodore Ts'o2021-08-221-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The u_direct_io test is normally not run (since it requires root privileges); as a result, when the mke2fs.conf defaults were changed, I didn't notice that the expected output for u_direct_io test needed to be updated. Fixes: d730be5ceeba ("tests: update mke2fs.conf to create 256 byte inodes by default" Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * libss: add newer libreadline.so.8 to dlopen pathJan Kara2021-08-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | OpenSUSE Tumbleweed now has libreadline.so.8. Add it to the list of libs to look for. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * debian/changelog: add missing section for 1.46.2-2Theodore Ts'o2021-08-191-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | E2fsprogs 1.46.2-2 was uploaded during the release freeze, so the changelog was assembled outside of the normal maint branch. Add it now. Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * fix unused-function -Wall warningsTheodore Ts'o2021-08-186-30/+67
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * debugfs: fix shadow and sign-compare -Wall warningsTheodore Ts'o2021-08-181-5/+4
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| * | debian/changelog: add missing section for 1.46.2-2debian/1.46.4-1archive/debian/1.46.4-1Theodore Ts'o2021-08-191-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | E2fsprogs 1.46.2-2 was uploaded during the release freeze, so the changelog was assembled outside of the normal maint branch. Add it now. Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| * | Merge tag 'v1.46.4' into debian/masterTheodore Ts'o2021-08-18183-11048/+12728
| |\ \ | | |/ | | | | | | v1.46.4
| | * Update release notes, etc., for the 1.46.4 releasev1.46.4Theodore Ts'o2021-08-186-8/+9
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * libcom_err: fix suggest-attribute=format -Wall warningsTheodore Ts'o2021-08-181-1/+2
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * libss: fix fallthrough -Wall warningsTheodore Ts'o2021-08-181-1/+1
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>
| | * tests: fix shadow -Wall warnings in the crcsum test programTheodore Ts'o2021-08-181-4/+3
| | | | | | | | | | | | Signed-off-by: Theodore Ts'o <tytso@mit.edu>