435
435
N_("ext2fs_check_desc: %m\n"),
436
436
PROMPT_NONE, 0 },
439
* metadata_csum implies uninit_bg; both feature bits cannot
440
* be set simultaneously.
442
{ PR_0_META_AND_GDT_CSUM_SET,
443
N_("@S metadata_csum supersedes uninit_bg; both feature "
444
"bits cannot be set simultaneously."),
445
PROMPT_FIX, PR_PREEN_OK | PR_NO_OK},
447
/* Superblock has invalid MMP checksum. */
448
{ PR_0_MMP_CSUM_INVALID,
449
N_("@S MMP block checksum does not match MMP block. "),
450
PROMPT_FIX, PR_PREEN_OK | PR_NO_OK},
438
452
/* 64bit is set but extents is unset. */
439
453
{ PR_0_64BIT_WITHOUT_EXTENTS,
440
454
N_("@S 64bit filesystems needs extents to access the whole disk. "),
445
459
N_("First_meta_bg is too big. (%N, max value %g). "),
446
460
PROMPT_CLEAR, 0 },
462
/* External journal has corrupt superblock */
463
{ PR_0_EXT_JOURNAL_SUPER_CSUM_INVALID,
464
N_("External @j @S checksum does not match @S. "),
465
PROMPT_FIX, PR_PREEN_OK },
448
467
/* Pass 1 errors */
450
469
/* Pass 1: Checking inodes, blocks, and sizes */
958
977
N_("@i %i has zero length extent\n\t(@n logical @b %c, physical @b %b)\n"),
959
978
PROMPT_CLEAR, 0 },
980
/* inode seems to contain garbage */
981
{ PR_1_INODE_IS_GARBAGE,
982
N_("@i %i seems to contain garbage. "),
985
/* inode passes checks, but checksum does not match inode */
986
{ PR_1_INODE_ONLY_CSUM_INVALID,
987
N_("@i %i passes checks, but checksum does not match @i. "),
988
PROMPT_FIX, PR_PREEN_OK },
990
/* Inode extended attribute is corrupt (allocation collision) */
991
{ PR_1_INODE_EA_ALLOC_COLLISION,
992
N_("@i %i @a is corrupt (allocation collision). "),
996
* Inode extent block passes checks, but checksum does not match
999
{ PR_1_EXTENT_ONLY_CSUM_INVALID,
1000
N_("@i %i extent block passes checks, but checksum does not match "
1001
"extent\n\t(logical @b %c, physical @b %b, len %N)\n"),
1005
* Inode extended attribute block passes checks, but checksum does not
1008
{ PR_1_EA_BLOCK_ONLY_CSUM_INVALID,
1009
N_("@i %i @a @b %b passes checks, but checksum does not match @b. "),
962
1013
* Interior extent node logical offset doesn't match first node below it
971
1022
N_("@i %i, end of extent exceeds allowed value\n\t(logical @b %c, physical @b %b, len %N)\n"),
972
1023
PROMPT_CLEAR, 0 },
1025
/* Inode has inline data, but superblock is missing INLINE_DATA feature. */
1026
{ PR_1_INLINE_DATA_FEATURE,
1027
N_("@i %i has inline data, but @S is missing INLINE_DATA feature\n"),
1028
PROMPT_CLEAR, PR_PREEN_OK },
1030
/* INLINE_DATA feature is set in a non-inline-data filesystem */
1031
{ PR_1_INLINE_DATA_SET,
1032
N_("@i %i has INLINE_DATA_FL flag on @f without inline data support.\n"),
1036
* Inode block conflicts with critical metadata, skipping
1039
{ PR_1_CRITICAL_METADATA_COLLISION,
1040
N_("@i %i block %b conflicts with critical metadata, skipping block checks.\n"),
975
1043
/* Directory inode block <block> should be at block <otherblock> */
976
1044
{ PR_1_COLLAPSE_DBLOCK,
987
1055
N_("@i %i logical @b %b (physical @b %c) violates cluster allocation rules.\nWill fix in pass 1B.\n"),
988
1056
PROMPT_NONE, 0 },
1058
/* Inode has INLINE_DATA_FL flag but extended attribute not found */
1059
{ PR_1_INLINE_DATA_NO_ATTR,
1060
N_("@i %i has INLINE_DATA_FL flag but @a not found. "),
1061
PROMPT_TRUNCATE, 0 },
1063
/* Extents/inlinedata flag set on a device or socket inode */
1064
{ PR_1_SPECIAL_EXTENTS_IDATA,
1065
N_("Special (@v/socket/fifo) file (@i %i) has extents\n"
1066
"or inline-data flag set. "),
1067
PROMPT_CLEAR, PR_PREEN_OK | PR_PREEN_NO | PR_NO_OK },
1069
/* Inode has extent header but inline data flag is set */
1070
{ PR_1_CLEAR_INLINE_DATA_FOR_EXTENT,
1071
N_("@i %i has @x header but inline data flag is set.\n"),
1074
/* Inode seems to have inline data but extent flag is set */
1075
{ PR_1_CLEAR_EXTENT_FOR_INLINE_DATA,
1076
N_("@i %i seems to have inline data but @x flag is set.\n"),
1079
/* Inode seems to have block map but inline data and extent flags set */
1080
{ PR_1_CLEAR_EXTENT_INLINE_DATA_FLAGS,
1081
N_("@i %i seems to have @b map but inline data and @x flags set.\n"),
1084
/* Inode has inline data and extent flags but i_block contains junk */
1085
{ PR_1_CLEAR_EXTENT_INLINE_DATA_INODE,
1086
N_("@i %i has inline data and @x flags set but i_block contains junk.\n"),
1087
PROMPT_CLEAR_INODE, 0 },
1089
/* Bad block list says the bad block list inode is bad */
1090
{ PR_1_BADBLOCKS_IN_BADBLOCKS,
1091
N_("Bad block list says the bad block list @i is bad. "),
1092
PROMPT_CLEAR_INODE, 0 },
1094
/* Error allocating extent region allocation structure */
1095
{ PR_1_EXTENT_ALLOC_REGION_ABORT,
1096
N_("@A @x region allocation structure. "),
1097
PROMPT_NONE, PR_FATAL},
1099
/* Inode has a duplicate extent mapping */
1100
{ PR_1_EXTENT_COLLISION,
1101
N_("@i %i has a duplicate @x mapping\n\t(logical @b %c, @n physical @b %b, len %N)\n"),
990
1104
/* Pass 1b errors */
992
1106
/* Pass 1B: Rescan for duplicate/bad blocks */
1030
1144
N_("Error adjusting refcount for @a @b %b (@i %i): %m\n"),
1031
1145
PROMPT_NONE, 0 },
1147
/* Duplicate/bad block range in inode */
1150
PROMPT_NONE, PR_LATCH_DBLOCK | PR_PREEN_NOHDR },
1033
1152
/* Pass 1C: Scan directories for inodes with multiply-claimed blocks. */
1034
1153
{ PR_1C_PASS_HEADER,
1035
1154
N_("Pass 1C: Scanning directories for @is with @m @bs\n"),
1409
1528
N_("i_file_acl_hi @F %N, @s zero.\n"),
1410
1529
PROMPT_CLEAR, PR_PREEN_OK },
1531
/* htree root node fails checksum */
1532
{ PR_2_HTREE_ROOT_CSUM_INVALID,
1533
N_("@p @h %d: root node fails checksum.\n"),
1534
PROMPT_CLEAR_HTREE, PR_PREEN_OK },
1536
/* htree internal node fails checksum */
1537
{ PR_2_HTREE_NODE_CSUM_INVALID,
1538
N_("@p @h %d: internal node fails checksum.\n"),
1539
PROMPT_CLEAR_HTREE, PR_PREEN_OK },
1541
/* leaf node has no checksum */
1542
{ PR_2_LEAF_NODE_MISSING_CSUM,
1543
N_("@d @i %i, %B, offset %N: @d has no checksum.\n"),
1544
PROMPT_FIX, PR_PREEN_OK },
1546
/* leaf node passes checks but fails checksum */
1547
{ PR_2_LEAF_NODE_ONLY_CSUM_INVALID,
1548
N_("@d @i %i, %B, offset %N: @d passes checks but fails checksum.\n"),
1549
PROMPT_FIX, PR_PREEN_OK },
1551
/* inline directory inode size must be a multiple of 4 */
1552
{ PR_2_BAD_INLINE_DIR_SIZE,
1553
N_("Inline @d @i %i size (%N) must be a multiple of 4.\n"),
1556
/* fixing size of inline directory inode failed */
1557
{ PR_2_FIX_INLINE_DIR_FAILED,
1558
N_("Fixing size of inline @d @i %i failed.\n"),
1559
PROMPT_TRUNCATE, 0 },
1412
1561
/* Pass 3 errors */
1414
1563
/* Pass 3: Checking directory connectivity */
1531
1680
N_("/@l is not a @d (ino=%i)\n"),
1532
1681
PROMPT_UNLINK, 0 },
1683
/* Lost+found has inline data */
1684
{ PR_3_LPF_INLINE_DATA,
1685
N_("/@l has inline data\n"),
1688
/* Cannot allocate /lost+found. */
1689
{ PR_3_LPF_NO_SPACE,
1690
N_("Cannot allocate space for /@l.\nPlace lost files in root directory instead"),
1693
/* Delete some files and re-run e2fsck. */
1694
{ PR_3_NO_SPACE_TO_RECOVER,
1695
N_("Insufficient space to recover lost files!\nMove data off the @f and re-run e2fsck.\n\n"),
1534
1698
/* Pass 3A Directory Optimization */
1536
1700
/* Pass 3A: Optimizing directories */
1725
1889
N_("@g %g @i(s) in use but @g is marked INODE_UNINIT\n"),
1726
1890
PROMPT_FIX, PR_PREEN_OK },
1892
/* Group N inode bitmap does not match checksum */
1893
{ PR_5_INODE_BITMAP_CSUM_INVALID,
1894
N_("@g %g @i @B does not match checksum.\n"),
1895
PROMPT_FIX, PR_LATCH_IBITMAP | PR_PREEN_OK },
1897
/* Group N block bitmap does not match checksum */
1898
{ PR_5_BLOCK_BITMAP_CSUM_INVALID,
1899
N_("@g %g @b @B does not match checksum.\n"),
1900
PROMPT_FIX, PR_LATCH_BBITMAP | PR_PREEN_OK },
1728
1902
/* Post-Pass 5 errors */
1730
1904
/* Recreate journal if E2F_FLAG_JOURNAL_INODE flag is set */