Commit Graph

50 Commits (d9adee832085596571f4bbc22e4526b569c273de)

Author SHA1 Message Date
Vitaliy Filippov d9adee8320 add xattrs 2016-09-29 02:07:21 +03:00
Vitaliy Filippov bf188ee362 fix inode checksums... but it also requires to fix directory checksums... so in fact it is better to just merge it in resize2fs... 2016-09-15 21:42:06 +00:00
Vitaliy Filippov ceeb9c6cdc Use the same patch format in patch_io_manager and e2patch like in patchbd 2014-02-05 10:02:04 +00:00
Vitaliy Filippov 435a466e20 Avoid rewriting same directory twice (may happen on copied inodes) 2014-01-27 23:05:13 +00:00
Vitaliy Filippov cb7adffb41 Check feature sets before running 2014-01-17 14:45:08 +00:00
Vitaliy Filippov 17fdd46b42 Create some dirs in test images 2014-01-16 09:43:16 +00:00
Vitaliy Filippov 050112183b _LARGEFILE_SOURCE 2014-01-15 15:41:03 +00:00
Vitaliy Filippov b0009b6440 Set block size when opening an existing patch 2014-01-15 15:32:27 +00:00
Vitaliy Filippov 3df64ee3c1 Support partial block overwrite in patch_io_manager (fixes the last test) 2014-01-15 15:29:43 +00:00
Vitaliy Filippov d84383495c Some more tests, one fails! 2014-01-15 14:49:07 +00:00
Vitaliy Filippov ae5c125cd4 Fix tests: sh/dash compatibility, error messages, e2fsck on a fresh ext2 2014-01-15 14:23:39 +00:00
Vitaliy Filippov c683b16f7e Fix comment 2014-01-12 20:59:14 +00:00
Vitaliy Filippov 36619470fe Fix makefile 2014-01-12 20:53:26 +00:00
Vitaliy Filippov 6d7094fd3d Some tests 2014-01-12 12:43:19 +00:00
Vitaliy Filippov f2e0275c7e Save journal backup after changing journal inode 2014-01-11 21:31:12 +00:00
Vitaliy Filippov b0587d8eb4 bmove.c comment 2014-01-11 20:40:29 +00:00
Vitaliy Filippov af8311fa63 Bigalloc compatibility -- OK, it works now! 2014-01-11 20:39:05 +00:00
Vitaliy Filippov 8ad456b992 Read and write inode tables for a whole flex_bg (fixes growing with new algorithm) 2014-01-09 22:27:52 +00:00
Vitaliy Filippov 488162ea1b Free realloc_data members 2014-01-09 21:34:52 +00:00
Vitaliy Filippov 07da5e71d3 Fix new algorithm; works now! 2014-01-09 21:29:10 +00:00
Vitaliy Filippov 2546396c10 Use more generic algorithm so we can reallocate when inode tables for flex_bg do not fit into a single block group; (untested yet) 2014-01-09 08:14:09 +00:00
Vitaliy Filippov 46fc23e2d1 tabs, todo 2014-01-07 17:06:21 +00:00
Vitaliy Filippov 553e1273ea License notice (GPLv2+); comments about the bad blocks 2014-01-07 13:07:24 +00:00
Vitaliy Filippov 8cc74f4f27 Move libext2fs functions to separate files 2014-01-07 13:00:45 +00:00
Vitaliy Filippov 24883d4949 Open backing device as readonly in patch manager 2014-01-07 12:31:36 +00:00
Vitaliy Filippov 7548dd188c Patch I/O manager comment 2014-01-07 12:30:14 +00:00
Vitaliy Filippov 8bf3f6d012 Disallow moving resize inode; use ext2fs_block_alloc_stats2 in block mover 2014-01-07 12:25:10 +00:00
Vitaliy Filippov ee1b499ca9 e2patch utility for applying/restoring patches 2014-01-07 10:31:13 +00:00
Vitaliy Filippov f94c155aab Move common patch file functions to separate source 2014-01-07 08:07:24 +00:00
Vitaliy Filippov a7bf43764f option for patch_io_manager; clean the code 2014-01-07 07:28:59 +00:00
Vitaliy Filippov d891ecbf1d Patch format 2014-01-06 23:10:17 +00:00
Vitaliy Filippov 310547b6b8 Patch I/O manager 2014-01-06 23:06:01 +00:00
Vitaliy Filippov 5607c6cf1f Check the bad block inode during block moving 2014-01-05 20:12:18 +00:00
Vitaliy Filippov 7f03acc619 Fix for the case when inode block count doesn't change;
Warn about inode number rounding;
Respect unused_inodes during inode table moving.
2014-01-05 19:20:44 +00:00
Vitaliy Filippov 9dfbea8e54 shorter names for old/new inode count variables 2014-01-05 19:20:39 +00:00
Vitaliy Filippov 15e3f31df8 Use same code for block moving with and without flex_bg 2014-01-05 11:36:39 +00:00
Vitaliy Filippov b8f52b6c8b Use same code for flex_bg and no flex_bg; check for gdt_csum feature before adjusting free_inodes_count; the tool now works correctly on ext2 2014-01-05 11:17:21 +00:00
Vitaliy Filippov 36ac4a8330 Inode table growing now works on a basic test case! 2014-01-04 20:29:42 +00:00
Vitaliy Filippov 9f543c9ca1 Add bmove.c as a basis for block moving during inode table grow 2014-01-04 20:29:32 +00:00
Vitaliy Filippov 7ba9912c52 Use ext2fs_inode_alloc_stats2, add block moving algorithm details, add (very slow) undo_io_manager support 2013-12-30 21:09:00 +00:00
Vitaliy Filippov 8bb97a550a OK, realloc now works with inode moving! 2013-12-28 22:34:47 +00:00
Vitaliy Filippov ee80425d93 Ahaha, ok, overwrite backup superblocks 2013-12-28 17:21:01 +00:00
Vitaliy Filippov 161e13aad8 Fix warnings 2013-12-28 13:52:39 +00:00
Vitaliy Filippov 97dc1bef18 almost all fsck errors fixed ("primary superblock features different from backup, check forced" left) 2013-12-28 13:14:05 +00:00
Vitaliy Filippov a33f91e388 Works on a VERY basic test case (shrink, no inode moving, no inode number change) with errors successfully corrected by fsck :-))) 2013-12-27 23:14:21 +00:00
Vitaliy Filippov f58ece6d8c Roughly implemented inode table moving 2013-12-27 17:13:24 +00:00
Vitaliy Filippov bf357faaf4 Make a local data struct, add some routines 2013-12-27 12:47:10 +00:00
Vitaliy Filippov 6cb0239e7e adjust algorithm, add inode map impl based on reallocated "vector" 2013-12-26 13:00:03 +00:00
Vitaliy Filippov 0007290747 iterating through dir 2013-12-25 23:18:14 +00:00
Vitaliy Filippov 55f3fa2c01 An attempt to write a tool for ext4 that will allow to change inode count of a filesystem 2013-12-25 10:15:02 +00:00