problem.h revision a701823a31505c5765d327d02bb14aa43fc34ae5
121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* 221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * problem.h --- e2fsck problem error codes 321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * 421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * Copyright 1996 by Theodore Ts'o 521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * 621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * %Begin-Header% 721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * This file may be redistributed under the terms of the GNU Public 821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * License. 921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * %End-Header% 1021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o */ 1121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 121b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'otypedef __u32 problem_t; 131b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 1421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'ostruct problem_context { 151b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o errcode_t errcode; 1686c627ec1136446409a0170d439e60c148e6eb48Theodore Ts'o ext2_ino_t ino, ino2, dir; 1721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o struct ext2_inode *inode; 1821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o struct ext2_dir_entry *dirent; 1915d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o blk64_t blk, blk2; 209d1bd3de8dd44603a8141dbe4f0b2057dbdc5ea7Theodore Ts'o e2_blkcnt_t blkcount; 213971bfe878d6c30f9b5be3a2c0310943982a4775Theodore Ts'o dgrp_t group; 22b9a64a519af790216b6cd5105ccce55ff7f41a09Theodore Ts'o __u32 csum1, csum2; 23246501c612cb8309dc81b354b785405bbeef05ceTheodore Ts'o __u64 num; 241b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o const char *str; 2521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o}; 2621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 2721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* 2821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * We define a set of "latch groups"; these are problems which are 2921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * handled as a set. The user answers once for a particular latch 3021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * group. 3121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o */ 3221afac096df642708ebf63dc4354575883f11174Theodore Ts'o#define PR_LATCH_MASK 0x0ff0 /* Latch mask */ 3321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_LATCH_BLOCK 0x0010 /* Latch for illegal blocks (pass 1) */ 3421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_LATCH_BBLOCK 0x0020 /* Latch for bad block inode blocks (pass 1) */ 351b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_LATCH_IBITMAP 0x0030 /* Latch for pass 5 inode bitmap proc. */ 361b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_LATCH_BBITMAP 0x0040 /* Latch for pass 5 inode bitmap proc. */ 371b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_LATCH_RELOC 0x0050 /* Latch for superblock relocate hint */ 381b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_LATCH_DBLOCK 0x0060 /* Latch for pass 1b dup block headers */ 3921afac096df642708ebf63dc4354575883f11174Theodore Ts'o#define PR_LATCH_LOW_DTIME 0x0070 /* Latch for pass1 orphaned list refugees */ 40da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o#define PR_LATCH_TOOBIG 0x0080 /* Latch for file to big errors */ 41850d05e9aa405497e57c72090b9561af98b1b661Theodore Ts'o#define PR_LATCH_OPTIMIZE_DIR 0x0090 /* Latch for optimize directories */ 4260139154878ebdafd4b372cdcf179c5a957c519dTheodore Ts'o#define PR_LATCH_BG_CHECKSUM 0x00A0 /* Latch for block group checksums */ 43e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong#define PR_LATCH_OPTIMIZE_EXT 0x00B0 /* Latch for rebuild extents */ 4421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 4521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_LATCH(x) ((((x) & PR_LATCH_MASK) >> 4) - 1) 4621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 4721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* 481b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o * Latch group descriptor flags 491b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o */ 501b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PRL_YES 0x0001 /* Answer yes */ 511b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PRL_NO 0x0002 /* Answer no */ 521b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PRL_LATCHED 0x0004 /* The latch group is latched */ 531b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PRL_SUPPRESS 0x0008 /* Suppress all latch group questions */ 541b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 551b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PRL_VARIABLE 0x000f /* All the flags that need to be reset */ 561b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 571b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* 5821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * Pre-Pass 1 errors 5921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o */ 6021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 6121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Block bitmap not in group */ 6221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_0_BB_NOT_GROUP 0x000001 6321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 6421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Inode bitmap not in group */ 6521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_0_IB_NOT_GROUP 0x000002 6621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 6721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Inode table not in group */ 6821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_0_ITABLE_NOT_GROUP 0x000003 6921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 701b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Superblock corrupt */ 711b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_0_SB_CORRUPT 0x000004 721b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 731b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Filesystem size is wrong */ 741b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_0_FS_SIZE_WRONG 0x000005 751b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 761b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Fragments not supported */ 771b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_0_NO_FRAGMENTS 0x000006 781b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 791b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Bad blocks_per_group */ 801b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_0_BLOCKS_PER_GROUP 0x000007 811b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 821b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Bad first_data_block */ 831b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_0_FIRST_DATA_BLOCK 0x000008 841b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 851b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Adding UUID to filesystem */ 861b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_0_ADD_UUID 0x000009 871b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 88db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Relocate hint */ 891b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_0_RELOCATE_HINT 0x00000A 901b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 911b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Miscellaneous superblock corruption */ 921b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_0_MISC_CORRUPT_SUPER 0x00000B 93db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 941b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error determing physical device size of filesystem */ 951b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_0_GETSIZE_ERROR 0x00000C 961b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 97d4b0ce03168d313e89110ab9fbaa6caf616d1786Theodore Ts'o/* Inode count in the superblock incorrect */ 98d4b0ce03168d313e89110ab9fbaa6caf616d1786Theodore Ts'o#define PR_0_INODE_COUNT_WRONG 0x00000D 99d4b0ce03168d313e89110ab9fbaa6caf616d1786Theodore Ts'o 1004ea0a1109d761e9caaa53f6fa9e036321826c5faTheodore Ts'o/* The Hurd does not support the filetype feature */ 1014ea0a1109d761e9caaa53f6fa9e036321826c5faTheodore Ts'o#define PR_0_HURD_CLEAR_FILETYPE 0x00000E 1023b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 1033b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o/* Journal inode is invalid */ 1043b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o#define PR_0_JOURNAL_BAD_INODE 0x00000F 1053b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 106adee8d75db09dc8ecb2a32f59a8c64d3f4c64b0eTheodore Ts'o/* The external journal has multiple filesystems (which we can't handle yet) */ 107adee8d75db09dc8ecb2a32f59a8c64d3f4c64b0eTheodore Ts'o#define PR_0_JOURNAL_UNSUPP_MULTIFS 0x000010 1083b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 109adee8d75db09dc8ecb2a32f59a8c64d3f4c64b0eTheodore Ts'o/* Can't find external journal */ 110adee8d75db09dc8ecb2a32f59a8c64d3f4c64b0eTheodore Ts'o#define PR_0_CANT_FIND_JOURNAL 0x000011 1113b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 112adee8d75db09dc8ecb2a32f59a8c64d3f4c64b0eTheodore Ts'o/* External journal has bad superblock */ 113adee8d75db09dc8ecb2a32f59a8c64d3f4c64b0eTheodore Ts'o#define PR_0_EXT_JOURNAL_BAD_SUPER 0x000012 1143b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 1153b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o/* Superblock has a bad journal UUID */ 1163b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o#define PR_0_JOURNAL_BAD_UUID 0x000013 1173b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 1183b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o/* Journal has an unknown superblock type */ 1193b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o#define PR_0_JOURNAL_UNSUPP_SUPER 0x000014 1203b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 1213b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o/* Journal superblock is corrupt */ 1223b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o#define PR_0_JOURNAL_BAD_SUPER 0x000015 1233b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 1243b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o/* Journal superblock is corrupt */ 1253b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o#define PR_0_JOURNAL_HAS_JOURNAL 0x000016 1263b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 1273b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o/* Superblock has recovery flag set but no journal */ 1283b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o#define PR_0_JOURNAL_RECOVER_SET 0x000017 1293b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 130d37066a9fa14ff3c0e7f4ea95e07204fce95f41aTheodore Ts'o/* Journal has data, but recovery flag is clear */ 131d37066a9fa14ff3c0e7f4ea95e07204fce95f41aTheodore Ts'o#define PR_0_JOURNAL_RECOVERY_CLEAR 0x000018 1323b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 133d37066a9fa14ff3c0e7f4ea95e07204fce95f41aTheodore Ts'o/* Ask if we should clear the journal */ 134d37066a9fa14ff3c0e7f4ea95e07204fce95f41aTheodore Ts'o#define PR_0_JOURNAL_RESET_JOURNAL 0x000019 1353b5386dca8e0008e13351be5de6323576329aa58Theodore Ts'o 136060b5fbf807dca3ce5f977a693ac68e84c03d13eTheodore Ts'o/* Filesystem revision is 0, but feature flags are set */ 137060b5fbf807dca3ce5f977a693ac68e84c03d13eTheodore Ts'o#define PR_0_FS_REV_LEVEL 0x00001A 138060b5fbf807dca3ce5f977a693ac68e84c03d13eTheodore Ts'o 139ecf1b7767e1772f4c6dba8f02026057ed05397bdTheodore Ts'o/* Clearing orphan inode */ 1408394902e04e64ed10ca81e869892c00143ee4931Theodore Ts'o#define PR_0_ORPHAN_CLEAR_INODE 0x000020 141db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 14280bfaa3e40ae6ab00cc3d4d1f4c0eeefce0b1a96Theodore Ts'o/* Illegal block found in orphaned inode */ 143ecf1b7767e1772f4c6dba8f02026057ed05397bdTheodore Ts'o#define PR_0_ORPHAN_ILLEGAL_BLOCK_NUM 0x000021 14480bfaa3e40ae6ab00cc3d4d1f4c0eeefce0b1a96Theodore Ts'o 14580bfaa3e40ae6ab00cc3d4d1f4c0eeefce0b1a96Theodore Ts'o/* Already cleared block found in orphaned inode */ 146ecf1b7767e1772f4c6dba8f02026057ed05397bdTheodore Ts'o#define PR_0_ORPHAN_ALREADY_CLEARED_BLOCK 0x000022 147db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 14880bfaa3e40ae6ab00cc3d4d1f4c0eeefce0b1a96Theodore Ts'o/* Illegal orphan inode in superblock */ 149ecf1b7767e1772f4c6dba8f02026057ed05397bdTheodore Ts'o#define PR_0_ORPHAN_ILLEGAL_HEAD_INODE 0x000023 15080bfaa3e40ae6ab00cc3d4d1f4c0eeefce0b1a96Theodore Ts'o 15180bfaa3e40ae6ab00cc3d4d1f4c0eeefce0b1a96Theodore Ts'o/* Illegal inode in orphaned inode list */ 152ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_0_ORPHAN_ILLEGAL_INODE 0x000024 15380bfaa3e40ae6ab00cc3d4d1f4c0eeefce0b1a96Theodore Ts'o 154424cd2beb7c40a3e4cf96b5bf28b24e48554a754Theodore Ts'o/* Journal has unsupported read-only feature - abort */ 155424cd2beb7c40a3e4cf96b5bf28b24e48554a754Theodore Ts'o#define PR_0_JOURNAL_UNSUPP_ROCOMPAT 0x000025 156424cd2beb7c40a3e4cf96b5bf28b24e48554a754Theodore Ts'o 157424cd2beb7c40a3e4cf96b5bf28b24e48554a754Theodore Ts'o/* Journal has unsupported incompatible feature - abort */ 158424cd2beb7c40a3e4cf96b5bf28b24e48554a754Theodore Ts'o#define PR_0_JOURNAL_UNSUPP_INCOMPAT 0x000026 159424cd2beb7c40a3e4cf96b5bf28b24e48554a754Theodore Ts'o 160c7f23364fd6d8d25d74e51ba5f342fc2230048d8Theodore Ts'o/* Journal has unsupported version number */ 1612f686ace1c8e2f680ffd450d143cdd01a649687aTheodore Ts'o#define PR_0_JOURNAL_UNSUPP_VERSION 0x000027 162c7f23364fd6d8d25d74e51ba5f342fc2230048d8Theodore Ts'o 163773fd8a1d4202af708a37bdc7754134e6fdcfe22Theodore Ts'o/* Moving journal to hidden file */ 164773fd8a1d4202af708a37bdc7754134e6fdcfe22Theodore Ts'o#define PR_0_MOVE_JOURNAL 0x000028 165773fd8a1d4202af708a37bdc7754134e6fdcfe22Theodore Ts'o 166773fd8a1d4202af708a37bdc7754134e6fdcfe22Theodore Ts'o/* Error moving journal */ 167773fd8a1d4202af708a37bdc7754134e6fdcfe22Theodore Ts'o#define PR_0_ERR_MOVE_JOURNAL 0x000029 168773fd8a1d4202af708a37bdc7754134e6fdcfe22Theodore Ts'o 16962e3e7fe4f32c2186e848f37b7f977835975413eTheodore Ts'o/* Clearing V2 journal superblock */ 17062e3e7fe4f32c2186e848f37b7f977835975413eTheodore Ts'o#define PR_0_CLEAR_V2_JOURNAL 0x00002A 17162e3e7fe4f32c2186e848f37b7f977835975413eTheodore Ts'o 172d37066a9fa14ff3c0e7f4ea95e07204fce95f41aTheodore Ts'o/* Run journal anyway */ 173d37066a9fa14ff3c0e7f4ea95e07204fce95f41aTheodore Ts'o#define PR_0_JOURNAL_RUN 0x00002B 174d37066a9fa14ff3c0e7f4ea95e07204fce95f41aTheodore Ts'o 175d37066a9fa14ff3c0e7f4ea95e07204fce95f41aTheodore Ts'o/* Run journal anyway by default */ 176d37066a9fa14ff3c0e7f4ea95e07204fce95f41aTheodore Ts'o#define PR_0_JOURNAL_RUN_DEFAULT 0x00002C 177d37066a9fa14ff3c0e7f4ea95e07204fce95f41aTheodore Ts'o 178a435ec3449694a8fa299337197cc09624960a3a6Theodore Ts'o/* Backup journal inode blocks */ 179a435ec3449694a8fa299337197cc09624960a3a6Theodore Ts'o#define PR_0_BACKUP_JNL 0x00002D 180a435ec3449694a8fa299337197cc09624960a3a6Theodore Ts'o 181e75cfc5da83c749be43f87c0ccf5ec1f1dd26e2cTheodore Ts'o/* Reserved blocks w/o resize_inode */ 182e75cfc5da83c749be43f87c0ccf5ec1f1dd26e2cTheodore Ts'o#define PR_0_NONZERO_RESERVED_GDT_BLOCKS 0x00002E 183e75cfc5da83c749be43f87c0ccf5ec1f1dd26e2cTheodore Ts'o 184e75cfc5da83c749be43f87c0ccf5ec1f1dd26e2cTheodore Ts'o/* Resize_inode not enabled, but resize inode is non-zero */ 185e75cfc5da83c749be43f87c0ccf5ec1f1dd26e2cTheodore Ts'o#define PR_0_CLEAR_RESIZE_INODE 0x00002F 186e75cfc5da83c749be43f87c0ccf5ec1f1dd26e2cTheodore Ts'o 187c3ffaf833b7ddb3c1d422c71f59e1623029ede0cTheodore Ts'o/* Resize inode invalid */ 188c3ffaf833b7ddb3c1d422c71f59e1623029ede0cTheodore Ts'o#define PR_0_RESIZE_INODE_INVALID 0x000030 189c3ffaf833b7ddb3c1d422c71f59e1623029ede0cTheodore Ts'o 1908dceb92407f751d1a8aecd4bfb36d1fe2dc3cf9aTheodore Ts'o/* Last mount time is in the future */ 1918dceb92407f751d1a8aecd4bfb36d1fe2dc3cf9aTheodore Ts'o#define PR_0_FUTURE_SB_LAST_MOUNT 0x000031 1928dceb92407f751d1a8aecd4bfb36d1fe2dc3cf9aTheodore Ts'o 1938dceb92407f751d1a8aecd4bfb36d1fe2dc3cf9aTheodore Ts'o/* Last write time is in the future */ 1948dceb92407f751d1a8aecd4bfb36d1fe2dc3cf9aTheodore Ts'o#define PR_0_FUTURE_SB_LAST_WRITE 0x000032 1958dceb92407f751d1a8aecd4bfb36d1fe2dc3cf9aTheodore Ts'o 196b1c52b26a44efeb366402985763c242a4b21aeb1Theodore Ts'o/* Superblock hint for external journal incorrect */ 197b1c52b26a44efeb366402985763c242a4b21aeb1Theodore Ts'o#define PR_0_EXTERNAL_JOURNAL_HINT 0x000033 198b1c52b26a44efeb366402985763c242a4b21aeb1Theodore Ts'o 199f77704e416fca7dbe4cc91abba674d2ae3c14f6fTheodore Ts'o/* Superblock hint for external journal incorrect */ 200f77704e416fca7dbe4cc91abba674d2ae3c14f6fTheodore Ts'o#define PR_0_DIRHASH_HINT 0x000034 201f77704e416fca7dbe4cc91abba674d2ae3c14f6fTheodore Ts'o 20249a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos/* Group descriptor N checksum is invalid */ 20349a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos#define PR_0_GDT_CSUM 0x000035 20449a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos 20549a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos/* Group descriptor N marked uninitialized without feature set. */ 20649a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos#define PR_0_GDT_UNINIT 0x000036 20749a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos 20840b9cc517351dbedff43ab4f4da59af4921b6d25Theodore Ts'o/* Block bitmap is not initialised and Inode bitmap is -- NO LONGER USED */ 20940b9cc517351dbedff43ab4f4da59af4921b6d25Theodore Ts'o/* #define PR_0_BB_UNINIT_IB_INIT 0x000037 */ 21049a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos 21149a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos/* Group descriptor N has invalid unused inodes count. */ 21249a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos#define PR_0_GDT_ITABLE_UNUSED 0x000038 21349a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos 2140d5439c8e0bc63438f45315755e7f0d9dcb09ccfAndreas Dilger/* Last group block bitmap is uninitialized. */ 2150d5439c8e0bc63438f45315755e7f0d9dcb09ccfAndreas Dilger#define PR_0_BB_UNINIT_LAST 0x000039 2160d5439c8e0bc63438f45315755e7f0d9dcb09ccfAndreas Dilger 217185c4aeaf23d48375e3506218305031663203d0fTheodore Ts'o/* Journal transaction found corrupt */ 218185c4aeaf23d48375e3506218305031663203d0fTheodore Ts'o#define PR_0_JNL_TXN_CORRUPT 0x00003A 219185c4aeaf23d48375e3506218305031663203d0fTheodore Ts'o 22080875db58a6db58e3e2f01caf1adabca068d3ffbTheodore Ts'o/* The test_fs filesystem flag is set and ext4 is available */ 22180875db58a6db58e3e2f01caf1adabca068d3ffbTheodore Ts'o#define PR_0_CLEAR_TESTFS_FLAG 0x00003B 22280875db58a6db58e3e2f01caf1adabca068d3ffbTheodore Ts'o 22326ea4899d1fea0fbc5d28120944d2c2758ac1b11Theodore Ts'o/* Last mount time is in the future (fudged) */ 22426ea4899d1fea0fbc5d28120944d2c2758ac1b11Theodore Ts'o#define PR_0_FUTURE_SB_LAST_MOUNT_FUDGED 0x00003C 22526ea4899d1fea0fbc5d28120944d2c2758ac1b11Theodore Ts'o 22626ea4899d1fea0fbc5d28120944d2c2758ac1b11Theodore Ts'o/* Last write time is in the future (fudged) */ 22726ea4899d1fea0fbc5d28120944d2c2758ac1b11Theodore Ts'o#define PR_0_FUTURE_SB_LAST_WRITE_FUDGED 0x00003D 22826ea4899d1fea0fbc5d28120944d2c2758ac1b11Theodore Ts'o 22960139154878ebdafd4b372cdcf179c5a957c519dTheodore Ts'o/* Block group checksum (latch question) */ 23060139154878ebdafd4b372cdcf179c5a957c519dTheodore Ts'o#define PR_0_GDT_CSUM_LATCH 0x00003E 23160139154878ebdafd4b372cdcf179c5a957c519dTheodore Ts'o 232a3efe4842054175d01b465fbe0b29b9be8b800a1Theodore Ts'o/* Free inodes count wrong */ 233a3efe4842054175d01b465fbe0b29b9be8b800a1Theodore Ts'o#define PR_0_FREE_INODE_COUNT 0x00003F 234a3efe4842054175d01b465fbe0b29b9be8b800a1Theodore Ts'o 235a3efe4842054175d01b465fbe0b29b9be8b800a1Theodore Ts'o/* Free blocks count wrong */ 236a3efe4842054175d01b465fbe0b29b9be8b800a1Theodore Ts'o#define PR_0_FREE_BLOCK_COUNT 0x000040 237a3efe4842054175d01b465fbe0b29b9be8b800a1Theodore Ts'o 238624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali/* Make quota file hidden */ 239624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali#define PR_0_HIDE_QUOTA 0x000041 240624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali 2410f5eba7501f467f757792ee449d16c9259b994fdAndreas Dilger/* Superblock has invalid MMP block. */ 2420f5eba7501f467f757792ee449d16c9259b994fdAndreas Dilger#define PR_0_MMP_INVALID_BLK 0x000042 2430f5eba7501f467f757792ee449d16c9259b994fdAndreas Dilger 2440f5eba7501f467f757792ee449d16c9259b994fdAndreas Dilger/* Superblock has invalid MMP magic. */ 2450f5eba7501f467f757792ee449d16c9259b994fdAndreas Dilger#define PR_0_MMP_INVALID_MAGIC 0x000043 2460f5eba7501f467f757792ee449d16c9259b994fdAndreas Dilger 247010c49cf499738c7a06de13077f31f2a12ecadebTheodore Ts'o/* Opening file system failed */ 248010c49cf499738c7a06de13077f31f2a12ecadebTheodore Ts'o#define PR_0_OPEN_FAILED 0x000044 249010c49cf499738c7a06de13077f31f2a12ecadebTheodore Ts'o 250010c49cf499738c7a06de13077f31f2a12ecadebTheodore Ts'o/* Checking group descriptor failed */ 251010c49cf499738c7a06de13077f31f2a12ecadebTheodore Ts'o#define PR_0_CHECK_DESC_FAILED 0x000045 25226ea4899d1fea0fbc5d28120944d2c2758ac1b11Theodore Ts'o 25321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* 254387e6384cbb74fb68f6c0a64c9c3b72b8abc6699Darrick J. Wong * metadata_csum supersedes uninit_bg; both feature bits cannot be set 255387e6384cbb74fb68f6c0a64c9c3b72b8abc6699Darrick J. Wong * simultaneously. 256387e6384cbb74fb68f6c0a64c9c3b72b8abc6699Darrick J. Wong */ 257387e6384cbb74fb68f6c0a64c9c3b72b8abc6699Darrick J. Wong#define PR_0_META_AND_GDT_CSUM_SET 0x000046 258387e6384cbb74fb68f6c0a64c9c3b72b8abc6699Darrick J. Wong 259f57b371506734f381a1612be9ac465499f1c1676Darrick J. Wong/* Superblock has invalid MMP checksum. */ 260f57b371506734f381a1612be9ac465499f1c1676Darrick J. Wong#define PR_0_MMP_CSUM_INVALID 0x000047 261f57b371506734f381a1612be9ac465499f1c1676Darrick J. Wong 26227b2297d5726623c2d119c671a0e1778aae6010aDarrick J. Wong/* 64bit is set but extents are not set. */ 26327b2297d5726623c2d119c671a0e1778aae6010aDarrick J. Wong#define PR_0_64BIT_WITHOUT_EXTENTS 0x000048 26427b2297d5726623c2d119c671a0e1778aae6010aDarrick J. Wong 2657a4352dccd18928ffddd188cc927f4983ba80f72Theodore Ts'o/* The first_meta_bg is too big */ 2667a4352dccd18928ffddd188cc927f4983ba80f72Theodore Ts'o#define PR_0_FIRST_META_BG_TOO_BIG 0x000049 267387e6384cbb74fb68f6c0a64c9c3b72b8abc6699Darrick J. Wong 2686aabb75493a77aaee301fb5e9d39202439c4a325Darrick J. Wong/* External journal has corrupt superblock */ 2696aabb75493a77aaee301fb5e9d39202439c4a325Darrick J. Wong#define PR_0_EXT_JOURNAL_SUPER_CSUM_INVALID 0x00004A 2706aabb75493a77aaee301fb5e9d39202439c4a325Darrick J. Wong 27117f2fbf7371f2f1a1d35af986af24cfc57e3e8a0Darrick J. Wong/* metadata_csum_seed means nothing without metadata_csum */ 27217f2fbf7371f2f1a1d35af986af24cfc57e3e8a0Darrick J. Wong#define PR_0_CSUM_SEED_WITHOUT_META_CSUM 0x00004B 27317f2fbf7371f2f1a1d35af986af24cfc57e3e8a0Darrick J. Wong 274a701823a31505c5765d327d02bb14aa43fc34ae5Theodore Ts'o/* Error initializing quota context */ 275a701823a31505c5765d327d02bb14aa43fc34ae5Theodore Ts'o#define PR_0_QUOTA_INIT_CTX 0x00004C 276a701823a31505c5765d327d02bb14aa43fc34ae5Theodore Ts'o 277a701823a31505c5765d327d02bb14aa43fc34ae5Theodore Ts'o 278387e6384cbb74fb68f6c0a64c9c3b72b8abc6699Darrick J. Wong/* 27921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * Pass 1 errors 28021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o */ 28121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 2821b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Pass 1: Checking inodes, blocks, and sizes */ 2831b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_PASS_HEADER 0x010000 2841b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 28521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Root directory is not an inode */ 2861b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_ROOT_NO_DIR 0x010001 28721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 28821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Root directory has dtime set */ 2891b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_ROOT_DTIME 0x010002 29021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 29121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Reserved inode has bad mode */ 2921b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_RESERVED_BAD_MODE 0x010003 29321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 29421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Deleted inode has zero dtime */ 2951b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_ZERO_DTIME 0x010004 29621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 29721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Inode in use, but dtime set */ 2981b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_SET_DTIME 0x010005 29921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 30021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Zero-length directory */ 3011b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_ZERO_LENGTH_DIR 0x010006 30221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 30321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Block bitmap conflicts with some other fs block */ 3041b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_BB_CONFLICT 0x010007 30521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 30621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Inode bitmap conflicts with some other fs block */ 3071b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_IB_CONFLICT 0x010008 30821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 30921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Inode table conflicts with some other fs block */ 3101b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_ITABLE_CONFLICT 0x010009 31121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 31221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Block bitmap is on a bad block */ 3131b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_BB_BAD_BLOCK 0x01000A 31421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 31521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Inode bitmap is on a bad block */ 3161b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_IB_BAD_BLOCK 0x01000B 31721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 31821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Inode has incorrect i_size */ 3191b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_BAD_I_SIZE 0x01000C 32021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 32121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Inode has incorrect i_blocks */ 3221b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_BAD_I_BLOCKS 0x01000D 32321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 32421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Illegal block number in inode */ 3251b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_ILLEGAL_BLOCK_NUM 0x01000E 32621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 32721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Block number overlaps fs metadata */ 32821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_1_BLOCK_OVERLAPS_METADATA 0x01000F 32921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 33021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Inode has illegal blocks (latch question) */ 3311b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_INODE_BLOCK_LATCH 0x010010 33221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 33321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Too many bad blocks in inode */ 334ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_1_TOO_MANY_BAD_BLOCKS 0x010011 335db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 33621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Illegal block number in bad block inode */ 337ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_1_BB_ILLEGAL_BLOCK_NUM 0x010012 33821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 33921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Bad block inode has illegal blocks (latch question) */ 3401b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_INODE_BBLOCK_LATCH 0x010013 3411b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 3421b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Duplicate or bad blocks in use! */ 3431b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_DUP_BLOCKS_PREENSTOP 0x010014 344db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 345db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Bad block used as bad block indirect block */ 3461b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_BBINODE_BAD_METABLOCK 0x010015 3471b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 3481b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Inconsistency can't be fixed prompt */ 3491b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1_BBINODE_BAD_METABLOCK_PROMPT 0x010016 350db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 3511b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Bad primary block */ 352b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_BAD_PRIMARY_BLOCK 0x010017 353db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 3541b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Bad primary block prompt */ 355b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_BAD_PRIMARY_BLOCK_PROMPT 0x010018 3561b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 3571b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Bad primary superblock */ 358b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_BAD_PRIMARY_SUPERBLOCK 0x010019 3591b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 3601b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Bad primary block group descriptors */ 361b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_BAD_PRIMARY_GROUP_DESCRIPTOR 0x01001A 3621b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 3631b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Bad superblock in group */ 364b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_BAD_SUPERBLOCK 0x01001B 3651b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 3661b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Bad block group descriptors in group */ 367b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_BAD_GROUP_DESCRIPTORS 0x01001C 3681b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 369db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Block claimed for no reason */ 370b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_PROGERR_CLAIMED_BLOCK 0x01001D 3711b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 372f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o/* Error allocating blocks for relocating metadata */ 373b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_RELOC_BLOCK_ALLOCATE 0x01001E 374db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 375f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o/* Error allocating block buffer during relocation process */ 376b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_RELOC_MEMORY_ALLOCATE 0x01001F 377db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 378db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Relocating metadata group information from X to Y */ 379b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_RELOC_FROM_TO 0x010020 380db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 3811b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Relocating metatdata group information to X */ 382b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_RELOC_TO 0x010021 383db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 3841b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Block read error during relocation process */ 385b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_RELOC_READ_ERR 0x010022 386db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 3871b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Block write error during relocation process */ 388b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_RELOC_WRITE_ERR 0x010023 3891b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 3901b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error allocating inode bitmap */ 391b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_ALLOCATE_IBITMAP_ERROR 0x010024 3921b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 3931b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error allocating block bitmap */ 394b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_ALLOCATE_BBITMAP_ERROR 0x010025 3951b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 3961b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error allocating icount structure */ 397b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_ALLOCATE_ICOUNT 0x010026 398db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 3991b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error allocating dbcount */ 400b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_ALLOCATE_DBCOUNT 0x010027 4011b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 4021b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error while scanning inodes */ 403b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_ISCAN_ERROR 0x010028 4041b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 4051b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error while iterating over blocks */ 406b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_BLOCK_ITERATE 0x010029 4071b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 408db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Error while storing inode count information */ 409b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_ICOUNT_STORE 0x01002A 4101b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 411db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Error while storing directory block information */ 412b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_ADD_DBLOCK 0x01002B 4131b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 4141b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error while reading inode (for clearing) */ 415b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_READ_INODE 0x01002C 4161b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 417f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o/* Suppress messages prompt */ 418b2f93192a1701855d4f5f05f0087c45e92a35681Theodore Ts'o#define PR_1_SUPPRESS_MESSAGES 0x01002D 41921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 4206fdc7a325c8bff67fc3a0489d0858bc7c48dc1a3Theodore Ts'o/* Imagic flag set on an inode when filesystem doesn't support it */ 4216fdc7a325c8bff67fc3a0489d0858bc7c48dc1a3Theodore Ts'o#define PR_1_SET_IMAGIC 0x01002F 4226fdc7a325c8bff67fc3a0489d0858bc7c48dc1a3Theodore Ts'o 4236fdc7a325c8bff67fc3a0489d0858bc7c48dc1a3Theodore Ts'o/* Immutable flag set on a device or socket inode */ 4246fdc7a325c8bff67fc3a0489d0858bc7c48dc1a3Theodore Ts'o#define PR_1_SET_IMMUTABLE 0x010030 4251917875fcd16428d14eb5a86acf414472bc216f1Theodore Ts'o 4264a05268cf86f7138c78d80a53f7e162f32128a3dTheodore Ts'o/* Compression flag set on a non-compressed filesystem -- no longer used*/ 4274a05268cf86f7138c78d80a53f7e162f32128a3dTheodore Ts'o/* #define PR_1_COMPR_SET 0x010031 */ 4281917875fcd16428d14eb5a86acf414472bc216f1Theodore Ts'o 429d647a1ea4db5fa4e4ed48573c63a1bde56e071dbTheodore Ts'o/* Non-zero size on on device, fifo or socket inode */ 430d647a1ea4db5fa4e4ed48573c63a1bde56e071dbTheodore Ts'o#define PR_1_SET_NONZSIZE 0x010032 431d647a1ea4db5fa4e4ed48573c63a1bde56e071dbTheodore Ts'o 432060b5fbf807dca3ce5f977a693ac68e84c03d13eTheodore Ts'o/* Filesystem revision is 0, but feature flags are set */ 433060b5fbf807dca3ce5f977a693ac68e84c03d13eTheodore Ts'o#define PR_1_FS_REV_LEVEL 0x010033 434060b5fbf807dca3ce5f977a693ac68e84c03d13eTheodore Ts'o 435f18996c8eb7f530a7a408b8ede4a99fd52c02533Theodore Ts'o/* Journal inode not in use, needs clearing */ 436a9ca2016e14b5b56e5f0b61a73d52c4caee718bcTheodore Ts'o#define PR_1_JOURNAL_INODE_NOT_CLEAR 0x010034 437f18996c8eb7f530a7a408b8ede4a99fd52c02533Theodore Ts'o 438a9ca2016e14b5b56e5f0b61a73d52c4caee718bcTheodore Ts'o/* Journal inode has wrong mode */ 439a9ca2016e14b5b56e5f0b61a73d52c4caee718bcTheodore Ts'o#define PR_1_JOURNAL_BAD_MODE 0x010035 44021afac096df642708ebf63dc4354575883f11174Theodore Ts'o 44121afac096df642708ebf63dc4354575883f11174Theodore Ts'o/* Inode that was part of orphan linked list */ 44221afac096df642708ebf63dc4354575883f11174Theodore Ts'o#define PR_1_LOW_DTIME 0x010036 44321afac096df642708ebf63dc4354575883f11174Theodore Ts'o 44421afac096df642708ebf63dc4354575883f11174Theodore Ts'o/* Latch question which asks how to deal with low dtime inodes */ 44521afac096df642708ebf63dc4354575883f11174Theodore Ts'o#define PR_1_ORPHAN_LIST_REFUGEES 0x010037 446342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o 447342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o/* Error allocating refcount structure */ 448342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o#define PR_1_ALLOCATE_REFCOUNT 0x010038 449db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 450342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o/* Error reading Extended Attribute block */ 451342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o#define PR_1_READ_EA_BLOCK 0x010039 452342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o 453342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o/* Invalid Extended Attribute block */ 454342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o#define PR_1_BAD_EA_BLOCK 0x01003A 455342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o 456e8a3ee628ad693cbae231089b18886e6ba0e59d3Theodore Ts'o/* Error reading Extended Attribute block while fixing refcount -- abort */ 457e8a3ee628ad693cbae231089b18886e6ba0e59d3Theodore Ts'o#define PR_1_EXTATTR_READ_ABORT 0x01003B 458e8a3ee628ad693cbae231089b18886e6ba0e59d3Theodore Ts'o 459e8a3ee628ad693cbae231089b18886e6ba0e59d3Theodore Ts'o/* Extended attribute reference count incorrect */ 460e8a3ee628ad693cbae231089b18886e6ba0e59d3Theodore Ts'o#define PR_1_EXTATTR_REFCOUNT 0x01003C 461e8a3ee628ad693cbae231089b18886e6ba0e59d3Theodore Ts'o 462db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Error writing Extended Attribute block while fixing refcount */ 463a6217f5ae2ca02f2f12c259b34615cbd7f4110d6Theodore Ts'o#define PR_1_EXTATTR_WRITE_ABORT 0x01003D 46455fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o 46555fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o/* Multiple EA blocks not supported */ 46655fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o#define PR_1_EA_MULTI_BLOCK 0x01003E 46755fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o 46855fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o/* Error allocating EA region allocation structure */ 469a6217f5ae2ca02f2f12c259b34615cbd7f4110d6Theodore Ts'o#define PR_1_EA_ALLOC_REGION_ABORT 0x01003F 470b94a052a25d0c524209782e408c31d8ff25a6fe1Andreas Dilger 47155fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o/* Error EA allocation collision */ 47255fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o#define PR_1_EA_ALLOC_COLLISION 0x010040 473b94a052a25d0c524209782e408c31d8ff25a6fe1Andreas Dilger 47455fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o/* Bad extended attribute name */ 47555fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o#define PR_1_EA_BAD_NAME 0x010041 47655fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o 47755fd07ed0a5f4ed3dcc770526ee1ad3be967ac98Theodore Ts'o/* Bad extended attribute value */ 478b94a052a25d0c524209782e408c31d8ff25a6fe1Andreas Dilger#define PR_1_EA_BAD_VALUE 0x010042 479b94a052a25d0c524209782e408c31d8ff25a6fe1Andreas Dilger 480da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o/* Inode too big (latch question) */ 481da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o#define PR_1_INODE_TOOBIG 0x010043 482da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o 483da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o/* Directory too big */ 484da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o#define PR_1_TOOBIG_DIR 0x010044 485da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o 486da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o/* Regular file too big */ 487da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o#define PR_1_TOOBIG_REG 0x010045 488da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o 489da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o/* Symlink too big */ 490da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o#define PR_1_TOOBIG_SYMLINK 0x010046 491da307041e75bdf3b24c1eb43132a4f9d8a1b3844Theodore Ts'o 4928fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o/* INDEX_FL flag set on a non-HTREE filesystem */ 4938fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o#define PR_1_HTREE_SET 0x010047 4948fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o 495db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* INDEX_FL flag set on a non-directory */ 496503f9e7f6eb331c5b75d7f1ad126f71bcdcfb4e3Theodore Ts'o#define PR_1_HTREE_NODIR 0x010048 497503f9e7f6eb331c5b75d7f1ad126f71bcdcfb4e3Theodore Ts'o 498db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Invalid root node in HTREE directory */ 499503f9e7f6eb331c5b75d7f1ad126f71bcdcfb4e3Theodore Ts'o#define PR_1_HTREE_BADROOT 0x010049 500503f9e7f6eb331c5b75d7f1ad126f71bcdcfb4e3Theodore Ts'o 501db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Unsupported hash version in HTREE directory */ 502503f9e7f6eb331c5b75d7f1ad126f71bcdcfb4e3Theodore Ts'o#define PR_1_HTREE_HASHV 0x01004A 503503f9e7f6eb331c5b75d7f1ad126f71bcdcfb4e3Theodore Ts'o 504db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Incompatible flag in HTREE root node */ 505503f9e7f6eb331c5b75d7f1ad126f71bcdcfb4e3Theodore Ts'o#define PR_1_HTREE_INCOMPAT 0x01004B 506503f9e7f6eb331c5b75d7f1ad126f71bcdcfb4e3Theodore Ts'o 507db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* HTREE too deep */ 508503f9e7f6eb331c5b75d7f1ad126f71bcdcfb4e3Theodore Ts'o#define PR_1_HTREE_DEPTH 0x01004C 509503f9e7f6eb331c5b75d7f1ad126f71bcdcfb4e3Theodore Ts'o 510000ba4046fbcc11ff70ef840988854d82235e5b5Theodore Ts'o/* Bad block has indirect block that conflicts with filesystem block */ 511000ba4046fbcc11ff70ef840988854d82235e5b5Theodore Ts'o#define PR_1_BB_FS_BLOCK 0x01004D 512000ba4046fbcc11ff70ef840988854d82235e5b5Theodore Ts'o 513c3ffaf833b7ddb3c1d422c71f59e1623029ede0cTheodore Ts'o/* Resize inode failed */ 514c3ffaf833b7ddb3c1d422c71f59e1623029ede0cTheodore Ts'o#define PR_1_RESIZE_INODE_CREATE 0x01004E 515c3ffaf833b7ddb3c1d422c71f59e1623029ede0cTheodore Ts'o 516db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* inode->i_size is too long */ 517cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o#define PR_1_EXTRA_ISIZE 0x01004F 518cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o 519cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o/* attribute name is too long */ 520cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o#define PR_1_ATTR_NAME_LEN 0x010050 521cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o 522cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o/* wrong EA value offset */ 523cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o#define PR_1_ATTR_VALUE_OFFSET 0x010051 524cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o 525cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o/* wrong EA blocknumber */ 526cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o#define PR_1_ATTR_VALUE_BLOCK 0x010052 527cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o 528cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o/* wrong EA value size */ 529cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o#define PR_1_ATTR_VALUE_SIZE 0x010053 530cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o 531cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o/* wrong EA hash value */ 532cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o#define PR_1_ATTR_HASH 0x010054 533cebe48a1ece8b9f61271c73ead83b59c8b36233eTheodore Ts'o 534fbc3f90194ca557e377c25f71db242c38c78f836Theodore Ts'o/* inode appears to be a directory */ 535fbc3f90194ca557e377c25f71db242c38c78f836Theodore Ts'o#define PR_1_TREAT_AS_DIRECTORY 0x010055 536fbc3f90194ca557e377c25f71db242c38c78f836Theodore Ts'o 53715d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o/* Error while reading extent tree */ 53815d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o#define PR_1_READ_EXTENT 0x010056 53915d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o 5407518c176867099eb529502103106501861a71280Theodore Ts'o/* Failure to iterate extents */ 5417518c176867099eb529502103106501861a71280Theodore Ts'o#define PR_1_EXTENT_ITERATE_FAILURE 0x010057 54215d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o 54315d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o/* Bad starting block in extent */ 54415d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o#define PR_1_EXTENT_BAD_START_BLK 0x010058 54515d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o 54615d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o/* Extent ends beyond filesystem */ 54715d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o#define PR_1_EXTENT_ENDS_BEYOND 0x010059 54815d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o 54915d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o/* EXTENTS_FL flag set on a non-extents capable filesystem */ 55015d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o#define PR_1_EXTENTS_SET 0x01005A 55115d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o 55215d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o/* inode has extents, superblock missing INCOMPAT_EXTENTS feature */ 55315d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o#define PR_1_EXTENT_FEATURE 0x01005B 55415d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o 55515d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o/* inode missing EXTENTS_FL, but is an extent inode */ 55615d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o#define PR_1_UNSET_EXTENT_FL 0x01005C 55715d482ba6e46b6979d8d9e9b3b28e0942b626c2eTheodore Ts'o 558ee19c902e6f09ae058577f6b742d60692e7fb853Theodore Ts'o/* Fast symlink has EXTENTS_FL set */ 559ee19c902e6f09ae058577f6b742d60692e7fb853Theodore Ts'o#define PR_1_FAST_SYMLINK_EXTENT_FL 0x01005D 560ee19c902e6f09ae058577f6b742d60692e7fb853Theodore Ts'o 561d5a8f9a9f25a85b69335915e5dac2a359334b5d7Theodore Ts'o/* Extents are out of order */ 562d5a8f9a9f25a85b69335915e5dac2a359334b5d7Theodore Ts'o#define PR_1_OUT_OF_ORDER_EXTENTS 0x01005E 563d5a8f9a9f25a85b69335915e5dac2a359334b5d7Theodore Ts'o 5647518c176867099eb529502103106501861a71280Theodore Ts'o/* Extent node header invalid */ 5657518c176867099eb529502103106501861a71280Theodore Ts'o#define PR_1_EXTENT_HEADER_INVALID 0x01005F 5667518c176867099eb529502103106501861a71280Theodore Ts'o 567010dc7b90d97b93907cbf57b3b44f1c1cad234f6Lukas Czerner/* PR_1_EOFBLOCKS_FL_SET 0x010060 was here */ 5682291fbb0358be8251df0d611913f49fbb9beb740Theodore Ts'o 56944fe08f1fa1e9a994ff304aa02022c53c9341519Theodore Ts'o/* Failed to convert subcluster bitmap */ 57044fe08f1fa1e9a994ff304aa02022c53c9341519Theodore Ts'o#define PR_1_CONVERT_SUBCLUSTER 0x010061 57144fe08f1fa1e9a994ff304aa02022c53c9341519Theodore Ts'o 572624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali/* Quota inode has wrong mode */ 573624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali#define PR_1_QUOTA_BAD_MODE 0x010062 574624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali 575624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali/* Quota inode is not in use, but contains data */ 576624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali#define PR_1_QUOTA_INODE_NOT_CLEAR 0x010063 577624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali 578624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali/* Quota inode is user visible */ 579624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali#define PR_1_QUOTA_INODE_NOT_HIDDEN 0x010064 580624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0Aditya Kali 58196a8afa7c134ef9239a70f264c35e709737f42cdTheodore Ts'o/* Invalid bad inode */ 58296a8afa7c134ef9239a70f264c35e709737f42cdTheodore Ts'o#define PR_1_INVALID_BAD_INODE 0x010065 58396a8afa7c134ef9239a70f264c35e709737f42cdTheodore Ts'o 58426c09eb8145a16dcba6c40810d46a78712d253f2Theodore Ts'o/* Extent has zero length */ 58526c09eb8145a16dcba6c40810d46a78712d253f2Theodore Ts'o#define PR_1_EXTENT_LENGTH_ZERO 0x010066 58626c09eb8145a16dcba6c40810d46a78712d253f2Theodore Ts'o 58768d70624e34b90fd153964950b7a2917b5bb3a8cDarrick J. Wong/* inode seems to contain garbage */ 58868d70624e34b90fd153964950b7a2917b5bb3a8cDarrick J. Wong#define PR_1_INODE_IS_GARBAGE 0x010067 589b9cde40d4d1119a16ced92b83b85af0587b52215Darrick J. Wong 590b9cde40d4d1119a16ced92b83b85af0587b52215Darrick J. Wong/* inode passes checks, but checksum does not match inode */ 591b9cde40d4d1119a16ced92b83b85af0587b52215Darrick J. Wong#define PR_1_INODE_ONLY_CSUM_INVALID 0x010068 592b9cde40d4d1119a16ced92b83b85af0587b52215Darrick J. Wong 59378c666b832b4c703aa0a87e7f34ccc8d15b00261Darrick J. Wong/* Inode EA allocation collision */ 59478c666b832b4c703aa0a87e7f34ccc8d15b00261Darrick J. Wong#define PR_1_INODE_EA_ALLOC_COLLISION 0x010069 59578c666b832b4c703aa0a87e7f34ccc8d15b00261Darrick J. Wong 5961e2372b3ae9a5f65f9daad7322c095d2003acc7bDarrick J. Wong/* extent block passes checks, but checksum does not match extent block */ 5971e2372b3ae9a5f65f9daad7322c095d2003acc7bDarrick J. Wong#define PR_1_EXTENT_ONLY_CSUM_INVALID 0x01006A 5981e2372b3ae9a5f65f9daad7322c095d2003acc7bDarrick J. Wong 5995e07cb280f30b2f44f90d9bbbe36b5f305be5cc5Darrick J. Wong/* ea block passes checks, but checksum invalid */ 6005e07cb280f30b2f44f90d9bbbe36b5f305be5cc5Darrick J. Wong#define PR_1_EA_BLOCK_ONLY_CSUM_INVALID 0x01006C 6015e07cb280f30b2f44f90d9bbbe36b5f305be5cc5Darrick J. Wong 602789bd401c3bce85d3c2ae4504ca62509aa0a8b88Eric Sandeen/* Index start doesn't match start of next extent down */ 603789bd401c3bce85d3c2ae4504ca62509aa0a8b88Eric Sandeen#define PR_1_EXTENT_INDEX_START_INVALID 0x01006D 604387e6384cbb74fb68f6c0a64c9c3b72b8abc6699Darrick J. Wong 605d3f32c2db8f11c87aa7939d78e7eb4c373f7034fDavid Jeffery#define PR_1_EXTENT_END_OUT_OF_BOUNDS 0x01006E 60625fed0fc394c060c483f7a8c13dc60989f2696cdZheng Liu 60725fed0fc394c060c483f7a8c13dc60989f2696cdZheng Liu/* Inode has inline data, but superblock is missing INLINE_DATA feature. */ 60825fed0fc394c060c483f7a8c13dc60989f2696cdZheng Liu#define PR_1_INLINE_DATA_FEATURE 0x01006F 60925fed0fc394c060c483f7a8c13dc60989f2696cdZheng Liu 61025fed0fc394c060c483f7a8c13dc60989f2696cdZheng Liu/* INLINE_DATA feature is set in a non-inline-data filesystem */ 61125fed0fc394c060c483f7a8c13dc60989f2696cdZheng Liu#define PR_1_INLINE_DATA_SET 0x010070 61225fed0fc394c060c483f7a8c13dc60989f2696cdZheng Liu 61335c8faaffcb9a1a75ad1210e605df21978c2b2ceDarrick J. Wong/* file metadata collides with critical metadata */ 61435c8faaffcb9a1a75ad1210e605df21978c2b2ceDarrick J. Wong#define PR_1_CRITICAL_METADATA_COLLISION 0x010071 61535c8faaffcb9a1a75ad1210e605df21978c2b2ceDarrick J. Wong 61657b7fabc2e06e145811977b88b46239267bbd1e6Darrick J. Wong/* Directory inode has a missing block (hole) */ 61757b7fabc2e06e145811977b88b46239267bbd1e6Darrick J. Wong#define PR_1_COLLAPSE_DBLOCK 0x010072 61857b7fabc2e06e145811977b88b46239267bbd1e6Darrick J. Wong 61957b7fabc2e06e145811977b88b46239267bbd1e6Darrick J. Wong/* uninit directory block */ 62057b7fabc2e06e145811977b88b46239267bbd1e6Darrick J. Wong#define PR_1_UNINIT_DBLOCK 0x010073 62157b7fabc2e06e145811977b88b46239267bbd1e6Darrick J. Wong 6229a1d614df217c02ea6b2cb0072fccfe706aea111Darrick J. Wong/* Inode logical block is misaligned */ 6239a1d614df217c02ea6b2cb0072fccfe706aea111Darrick J. Wong#define PR_1_MISALIGNED_CLUSTER 0x010074 6249a1d614df217c02ea6b2cb0072fccfe706aea111Darrick J. Wong 62549a3749aded829c1802cb5e0a972a83ace7629b0Darrick J. Wong/* Inode has INLINE_DATA_FL flag but extended attribute not found */ 62649a3749aded829c1802cb5e0a972a83ace7629b0Darrick J. Wong#define PR_1_INLINE_DATA_NO_ATTR 0x010075 62749a3749aded829c1802cb5e0a972a83ace7629b0Darrick J. Wong 6288dae07fb5550dfc3022c7eed4ea797a42b595e6eDarrick J. Wong/* extents/inlinedata set on fifo/socket/device */ 6298dae07fb5550dfc3022c7eed4ea797a42b595e6eDarrick J. Wong#define PR_1_SPECIAL_EXTENTS_IDATA 0x010076 6308dae07fb5550dfc3022c7eed4ea797a42b595e6eDarrick J. Wong 631fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong/* idata/extent flag set and extent header found, clear idata flag */ 632fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong#define PR_1_CLEAR_INLINE_DATA_FOR_EXTENT 0x010077 633fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong 634fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong/* inlinedata/extent set and no extent header found, clear extent flag */ 635fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong#define PR_1_CLEAR_EXTENT_FOR_INLINE_DATA 0x010078 636fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong 637fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong/* inlinedata/extent set, clear both flags */ 638fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong#define PR_1_CLEAR_EXTENT_INLINE_DATA_FLAGS 0x010079 639fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong 640fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong/* inlinedata/extent set, clear inode */ 641fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong#define PR_1_CLEAR_EXTENT_INLINE_DATA_INODE 0x01007A 642fa441f91f1dc02f7c72694b5d4f65374b5a18f44Darrick J. Wong 643c6c681632e45df376360303a00539b2a86ed7400Darrick J. Wong/* badblocks is in badblocks */ 644c6c681632e45df376360303a00539b2a86ed7400Darrick J. Wong#define PR_1_BADBLOCKS_IN_BADBLOCKS 0x01007B 645c6c681632e45df376360303a00539b2a86ed7400Darrick J. Wong 64679362360658a70e3d4304435bc06837494cf198dDarrick J. Wong/* can't allocate extent region */ 64779362360658a70e3d4304435bc06837494cf198dDarrick J. Wong#define PR_1_EXTENT_ALLOC_REGION_ABORT 0x01007C 64879362360658a70e3d4304435bc06837494cf198dDarrick J. Wong 64979362360658a70e3d4304435bc06837494cf198dDarrick J. Wong/* leaf extent collision */ 65079362360658a70e3d4304435bc06837494cf198dDarrick J. Wong#define PR_1_EXTENT_COLLISION 0x01007D 65179362360658a70e3d4304435bc06837494cf198dDarrick J. Wong 652dbff534ec685ea0815544746558dbd3e31284912Theodore Ts'o/* Error allocating memory for encrypted directory list */ 653dbff534ec685ea0815544746558dbd3e31284912Theodore Ts'o#define PR_1_ALLOCATE_ENCRYPTED_DIRLIST 0x01007E 654dbff534ec685ea0815544746558dbd3e31284912Theodore Ts'o 655e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* extent tree max depth too big */ 656e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong#define PR_1_EXTENT_BAD_MAX_DEPTH 0x01007F 657e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong 658faa427d34f8ae3b63f408fa004925d4be10fe66dDarrick J. Wong/* bigalloc fs cannot have blockmap files */ 659faa427d34f8ae3b63f408fa004925d4be10fe66dDarrick J. Wong#define PR_1_NO_BIGALLOC_BLOCKMAP_FILES 0x010080 660faa427d34f8ae3b63f408fa004925d4be10fe66dDarrick J. Wong 661f680db654b2f095712f2528dc178eea5cfd6401fDarrick J. Wong/* Missing extent header */ 662f680db654b2f095712f2528dc178eea5cfd6401fDarrick J. Wong#define PR_1_MISSING_EXTENT_HEADER 0x010081 663f680db654b2f095712f2528dc178eea5cfd6401fDarrick J. Wong 664082ed5dcd9f2d3c5a9d36a938744cab6a727b509David Turner/* Timestamp(s) on inode beyond 2310-04-04 are likely pre-1970. */ 665082ed5dcd9f2d3c5a9d36a938744cab6a727b509David Turner#define PR_1_EA_TIME_OUT_OF_RANGE 0x010082 666082ed5dcd9f2d3c5a9d36a938744cab6a727b509David Turner 66721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* 66821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * Pass 1b errors 66921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o */ 67021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 6711b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Pass 1B: Rescan for duplicate/bad blocks */ 6721b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1B_PASS_HEADER 0x011000 6731b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 6741b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Duplicate/bad block(s) header */ 6751b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1B_DUP_BLOCK_HEADER 0x011001 6761b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 6771b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Duplicate/bad block(s) in inode */ 6781b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1B_DUP_BLOCK 0x011002 6791b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 6801b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Duplicate/bad block(s) end */ 6811b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1B_DUP_BLOCK_END 0x011003 682db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 6831b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error while scanning inodes */ 6841b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1B_ISCAN_ERROR 0x011004 6851b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 6861b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error allocating inode bitmap */ 6871b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1B_ALLOCATE_IBITMAP_ERROR 0x011005 6881b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 689133a56dc9da52054bc27b4c1a23f03e3405003dbTheodore Ts'o/* Error while iterating over blocks */ 6907494cbfd59eb61301e168dd8aa4b19c2f4b73532Andreas Dilger#define PR_1B_BLOCK_ITERATE 0x011006 6911b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 6920684a4f33b5c268fe12f57fcbc77a880c79ab282Theodore Ts'o/* Error adjusting EA refcount */ 6937494cbfd59eb61301e168dd8aa4b19c2f4b73532Andreas Dilger#define PR_1B_ADJ_EA_REFCOUNT 0x011007 6940684a4f33b5c268fe12f57fcbc77a880c79ab282Theodore Ts'o 69528b966d7c667049f19a2947441ed29a95b415469Darrick J. Wong/* Duplicate/bad block range in inode */ 69628b966d7c667049f19a2947441ed29a95b415469Darrick J. Wong#define PR_1B_DUP_RANGE 0x011008 69728b966d7c667049f19a2947441ed29a95b415469Darrick J. Wong 6981b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Pass 1C: Scan directories for inodes with dup blocks. */ 6991b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1C_PASS_HEADER 0x012000 7001b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 7011b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 7021b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Pass 1D: Reconciling duplicate blocks */ 7031b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1D_PASS_HEADER 0x013000 7041b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 70521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* File has duplicate blocks */ 7061b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1D_DUP_FILE 0x013001 70721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 708db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* List of files sharing duplicate blocks */ 7091b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1D_DUP_FILE_LIST 0x013002 71021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 711db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* File sharing blocks with filesystem metadata */ 7121b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1D_SHARE_METADATA 0x013003 7131b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 714db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Report of how many duplicate/bad inodes */ 7151b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1D_NUM_DUP_INODES 0x013004 7161b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 7171b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Duplicated blocks already reassigned or cloned. */ 7181b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1D_DUP_BLOCKS_DEALT 0x013005 7191b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 7201b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Clone duplicate/bad blocks? */ 7211b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1D_CLONE_QUESTION 0x013006 7221b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 7231b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Delete file? */ 7241b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1D_DELETE_QUESTION 0x013007 725521e36857227b21e7ab47b0a97f788d2af9f9717Theodore Ts'o 7261b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Couldn't clone file (error) */ 7271b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_1D_CLONE_ERROR 0x013008 728db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 72921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* 730e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong * Pass 1e --- rebuilding extent trees 731e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong */ 732e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* Pass 1e: Rebuilding extent trees */ 733e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong#define PR_1E_PASS_HEADER 0x014000 734e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong 735e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* Error rehash directory */ 736e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong#define PR_1E_OPTIMIZE_EXT_ERR 0x014001 737e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong 738e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* Rebuilding extent trees */ 739e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong#define PR_1E_OPTIMIZE_EXT_HEADER 0x014002 740e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong 741e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* Rebuilding extent %d */ 742e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong#define PR_1E_OPTIMIZE_EXT 0x014003 743e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong 744e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* Rebuilding extent tree end */ 745e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong#define PR_1E_OPTIMIZE_EXT_END 0x014004 746e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong 747e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* Internal error: extent tree depth too large */ 748e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong#define PR_1E_MAX_EXTENT_TREE_DEPTH 0x014005 749e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong 750e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* Inode extent tree could be shorter */ 751e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong#define PR_1E_CAN_COLLAPSE_EXTENT_TREE 0x014006 752e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong 753e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* Inode extent tree could be narrower */ 754e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong#define PR_1E_CAN_NARROW_EXTENT_TREE 0x014007 755e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong 756e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* 75721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * Pass 2 errors 75821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o */ 75921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 7601b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Pass 2: Checking directory structure */ 7611b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_PASS_HEADER 0x020000 7621b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 76321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Bad inode number for '.' */ 76421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_BAD_INODE_DOT 0x020001 76521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 76621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Directory entry has bad inode number */ 76721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_BAD_INO 0x020002 76821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 76921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Directory entry has deleted or unused inode */ 77021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_UNUSED_INODE 0x020003 77121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 77221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Directry entry is link to '.' */ 77321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_LINK_DOT 0x020004 77421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 77521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Directory entry points to inode now located in a bad block */ 77621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_BB_INODE 0x020005 77721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 77821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Directory entry contains a link to a directory */ 77921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_LINK_DIR 0x020006 78021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 78121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Directory entry contains a link to the root directry */ 78221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_LINK_ROOT 0x020007 78321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 78421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Directory entry has illegal characters in its name */ 78521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_BAD_NAME 0x020008 78621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 787db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Missing '.' in directory inode */ 78821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_MISSING_DOT 0x020009 78921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 790db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Missing '..' in directory inode */ 79121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_MISSING_DOT_DOT 0x02000A 79221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 79321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* First entry in directory inode doesn't contain '.' */ 79421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_1ST_NOT_DOT 0x02000B 79521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 79621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Second entry in directory inode doesn't contain '..' */ 79721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_2ND_NOT_DOT_DOT 0x02000C 79821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 79921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* i_faddr should be zero */ 80021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_FADDR_ZERO 0x02000D 80121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 80221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* i_file_acl should be zero */ 80321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_FILE_ACL_ZERO 0x02000E 80421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 80521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* i_dir_acl should be zero */ 80621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_DIR_ACL_ZERO 0x02000F 80721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 80821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* i_frag should be zero */ 80921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_FRAG_ZERO 0x020010 81021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 81121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* i_fsize should be zero */ 81221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_FSIZE_ZERO 0x020011 813db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 81421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* inode has bad mode */ 81521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_BAD_MODE 0x020012 81621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 81721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* directory corrupted */ 81821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_DIR_CORRUPTED 0x020013 819db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 82021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* filename too long */ 82121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_FILENAME_LONG 0x020014 822db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 82321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Directory inode has a missing block (hole) */ 82421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_DIRECTORY_HOLE 0x020015 82521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 82621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* '.' is not NULL terminated */ 82721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_DOT_NULL_TERM 0x020016 82821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 82921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* '..' is not NULL terminated */ 83021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o#define PR_2_DOT_DOT_NULL_TERM 0x020017 83121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 8327cf73dcd3d173d88ceab26d381f4abac362d8518Theodore Ts'o/* Illegal character device in inode */ 8337cf73dcd3d173d88ceab26d381f4abac362d8518Theodore Ts'o#define PR_2_BAD_CHAR_DEV 0x020018 8347cf73dcd3d173d88ceab26d381f4abac362d8518Theodore Ts'o 8357cf73dcd3d173d88ceab26d381f4abac362d8518Theodore Ts'o/* Illegal block device in inode */ 8367cf73dcd3d173d88ceab26d381f4abac362d8518Theodore Ts'o#define PR_2_BAD_BLOCK_DEV 0x020019 8377cf73dcd3d173d88ceab26d381f4abac362d8518Theodore Ts'o 8381b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Duplicate '.' entry */ 8391b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_DUP_DOT 0x02001A 8401b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 8411b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Duplicate '..' entry */ 8421b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_DUP_DOT_DOT 0x02001B 843db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 8441b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Internal error: couldn't find dir_info */ 8451b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_NO_DIRINFO 0x02001C 8461b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 8471b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Final rec_len is wrong */ 8481b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_FINAL_RECLEN 0x02001D 8491b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 8501b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error allocating icount structure */ 8511b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_ALLOCATE_ICOUNT 0x02001E 8521b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 8531b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error iterating over directory blocks */ 8541b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_DBLIST_ITERATE 0x02001F 8551b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 8561b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error reading directory block */ 8571b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_READ_DIRBLOCK 0x020020 8581b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 8591b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error writing directory block */ 8601b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_WRITE_DIRBLOCK 0x020021 8611b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 8621b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error allocating new directory block */ 8631b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_ALLOC_DIRBOCK 0x020022 8641b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 8651b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error deallocating inode */ 8661b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_2_DEALLOC_INODE 0x020023 8671b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 868f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o/* Directory entry for '.' is big. Split? */ 8697142db08c4e54a863fea2e757c6d3afa42ba2290Theodore Ts'o#define PR_2_SPLIT_DOT 0x020024 870f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o 8711dde43f0c1176f61dd0bf91aff265ce8cd1c5fd6Theodore Ts'o/* Illegal FIFO */ 8721dde43f0c1176f61dd0bf91aff265ce8cd1c5fd6Theodore Ts'o#define PR_2_BAD_FIFO 0x020025 8731dde43f0c1176f61dd0bf91aff265ce8cd1c5fd6Theodore Ts'o 8741dde43f0c1176f61dd0bf91aff265ce8cd1c5fd6Theodore Ts'o/* Illegal socket */ 8751dde43f0c1176f61dd0bf91aff265ce8cd1c5fd6Theodore Ts'o#define PR_2_BAD_SOCKET 0x020026 8761dde43f0c1176f61dd0bf91aff265ce8cd1c5fd6Theodore Ts'o 877aa4115a47c554a936fdf5e6679e72a9329fecf45Theodore Ts'o/* Directory filetype not set */ 878aa4115a47c554a936fdf5e6679e72a9329fecf45Theodore Ts'o#define PR_2_SET_FILETYPE 0x020027 879aa4115a47c554a936fdf5e6679e72a9329fecf45Theodore Ts'o 880aa4115a47c554a936fdf5e6679e72a9329fecf45Theodore Ts'o/* Directory filetype incorrect */ 881aa4115a47c554a936fdf5e6679e72a9329fecf45Theodore Ts'o#define PR_2_BAD_FILETYPE 0x020028 882aa4115a47c554a936fdf5e6679e72a9329fecf45Theodore Ts'o 8837847c1d4fff9195c16b6d74194d104200b3f6c67Theodore Ts'o/* Directory filetype set when it shouldn't be */ 8847847c1d4fff9195c16b6d74194d104200b3f6c67Theodore Ts'o#define PR_2_CLEAR_FILETYPE 0x020029 8857847c1d4fff9195c16b6d74194d104200b3f6c67Theodore Ts'o 886c40db6d5717023bdd6bb4935161e7ce9678d6234Theodore Ts'o/* Directory filename can't be zero-length */ 887c40db6d5717023bdd6bb4935161e7ce9678d6234Theodore Ts'o#define PR_2_NULL_NAME 0x020030 888c40db6d5717023bdd6bb4935161e7ce9678d6234Theodore Ts'o 889bcf9c5d4016975c3c2afdb4a4b358569bd3c8681Theodore Ts'o/* Invalid symlink */ 890bcf9c5d4016975c3c2afdb4a4b358569bd3c8681Theodore Ts'o#define PR_2_INVALID_SYMLINK 0x020031 891fdbdea09b87dbd8e39c23286f22653e7641599aeTheodore Ts'o 892342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o/* i_file_acl (extended attribute) is bad */ 893342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o#define PR_2_FILE_ACL_BAD 0x020032 894342d847db355d81299218e07a1e58ece82080a04Theodore Ts'o 895a47426914745b7d50bb58a3d44b3509c647c637eTheodore Ts'o/* Filesystem contains large files, but has no such flag in sb */ 896a47426914745b7d50bb58a3d44b3509c647c637eTheodore Ts'o#define PR_2_FEATURE_LARGE_FILES 0x020033 897a47426914745b7d50bb58a3d44b3509c647c637eTheodore Ts'o 8988fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o/* Node in HTREE directory not referenced */ 8998fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o#define PR_2_HTREE_NOTREF 0x020034 9008fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o 9018fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o/* Node in HTREE directory referenced twice */ 9028fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o#define PR_2_HTREE_DUPREF 0x020035 9038fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o 9048fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o/* Node in HTREE directory has bad min hash */ 9058fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o#define PR_2_HTREE_MIN_HASH 0x020036 9068fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o 9078fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o/* Node in HTREE directory has bad max hash */ 9088fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o#define PR_2_HTREE_MAX_HASH 0x020037 9098fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o 9108fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o/* Clear invalid HTREE directory */ 9118fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o#define PR_2_HTREE_CLEAR 0x020038 9128fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o 9138fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o/* Clear the htree flag forcibly */ 91433db8f80f2b5c5c5d8cd5068205c79f0ea11905bTheodore Ts'o/* #define PR_2_HTREE_FCLR 0x020039 */ 9158fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o 9168fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o/* Bad block in htree interior node */ 9178fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o#define PR_2_HTREE_BADBLK 0x02003A 9188fdc9985c1e2a4467630b33719b7feb281b7b33bTheodore Ts'o 9190684a4f33b5c268fe12f57fcbc77a880c79ab282Theodore Ts'o/* Error adjusting EA refcount */ 9200684a4f33b5c268fe12f57fcbc77a880c79ab282Theodore Ts'o#define PR_2_ADJ_EA_REFCOUNT 0x02003B 9210684a4f33b5c268fe12f57fcbc77a880c79ab282Theodore Ts'o 922ea1959f01523ffc105747d660ccc5b7f02805928Theodore Ts'o/* Invalid HTREE root node */ 923ea1959f01523ffc105747d660ccc5b7f02805928Theodore Ts'o#define PR_2_HTREE_BAD_ROOT 0x02003C 924ea1959f01523ffc105747d660ccc5b7f02805928Theodore Ts'o 925ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o/* Invalid HTREE limit */ 926ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o#define PR_2_HTREE_BAD_LIMIT 0x02003D 927ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o 928ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o/* Invalid HTREE count */ 929ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o#define PR_2_HTREE_BAD_COUNT 0x02003E 930ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o 931ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o/* HTREE interior node has out-of-order hashes in table */ 932ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o#define PR_2_HTREE_HASH_ORDER 0x02003F 933ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o 934ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o/* Node in HTREE directory has bad depth */ 935b0700a1b6083f2f0c19c349f07ca80e70ec456beTheodore Ts'o#define PR_2_HTREE_BAD_DEPTH 0x020040 936b0700a1b6083f2f0c19c349f07ca80e70ec456beTheodore Ts'o 937b0700a1b6083f2f0c19c349f07ca80e70ec456beTheodore Ts'o/* Duplicate directory entry found */ 938b0700a1b6083f2f0c19c349f07ca80e70ec456beTheodore Ts'o#define PR_2_DUPLICATE_DIRENT 0x020041 939b0700a1b6083f2f0c19c349f07ca80e70ec456beTheodore Ts'o 940b0700a1b6083f2f0c19c349f07ca80e70ec456beTheodore Ts'o/* Non-unique filename found */ 941b0700a1b6083f2f0c19c349f07ca80e70ec456beTheodore Ts'o#define PR_2_NON_UNIQUE_FILE 0x020042 942ad4fa4660404ed88a3231fee338397af11e041b4Theodore Ts'o 9430926668d3af802b4d385d0fc3525a5a4e679574aTheodore Ts'o/* Duplicate directory entry found */ 9440926668d3af802b4d385d0fc3525a5a4e679574aTheodore Ts'o#define PR_2_REPORT_DUP_DIRENT 0x020043 9450926668d3af802b4d385d0fc3525a5a4e679574aTheodore Ts'o 9465d17119d14fe1276936c85d7986695a4543b1aa1Theodore Ts'o/* i_blocks_hi should be zero */ 9475d17119d14fe1276936c85d7986695a4543b1aa1Theodore Ts'o#define PR_2_BLOCKS_HI_ZERO 0x020044 9485d17119d14fe1276936c85d7986695a4543b1aa1Theodore Ts'o 949d45edec0fb2e5d100d122fdda0914560c64def44Theodore Ts'o/* Unexpected HTREE block */ 950d45edec0fb2e5d100d122fdda0914560c64def44Theodore Ts'o#define PR_2_UNEXPECTED_HTREE_BLOCK 0x020045 951d45edec0fb2e5d100d122fdda0914560c64def44Theodore Ts'o 95249a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos/* Inode found in group where _INODE_UNINIT is set */ 95349a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos#define PR_2_INOREF_BG_INO_UNINIT 0x020046 95449a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos 95549a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos/* Inode found in group unused inodes area */ 95649a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos#define PR_2_INOREF_IN_UNUSED 0x020047 95749a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos 958911ec6261568ca56d2d7b9a15f00578c4d127cf4Theodore Ts'o/* i_file_acl_hi should be zero */ 959911ec6261568ca56d2d7b9a15f00578c4d127cf4Theodore Ts'o#define PR_2_I_FILE_ACL_HI_ZERO 0x020048 960911ec6261568ca56d2d7b9a15f00578c4d127cf4Theodore Ts'o 96107307114dea005917b0c3a18a08948435f4a2abcDarrick J. Wong/* htree root node fails checksum */ 96207307114dea005917b0c3a18a08948435f4a2abcDarrick J. Wong#define PR_2_HTREE_ROOT_CSUM_INVALID 0x020049 96307307114dea005917b0c3a18a08948435f4a2abcDarrick J. Wong 96407307114dea005917b0c3a18a08948435f4a2abcDarrick J. Wong/* htree node fails checksum */ 96507307114dea005917b0c3a18a08948435f4a2abcDarrick J. Wong#define PR_2_HTREE_NODE_CSUM_INVALID 0x02004A 96607307114dea005917b0c3a18a08948435f4a2abcDarrick J. Wong 967e8548796a5bb59b2319c81973b7a460f036faa3eDarrick J. Wong/* no space in leaf for checksum */ 968e8548796a5bb59b2319c81973b7a460f036faa3eDarrick J. Wong#define PR_2_LEAF_NODE_MISSING_CSUM 0x02004C 969e8548796a5bb59b2319c81973b7a460f036faa3eDarrick J. Wong 970e8548796a5bb59b2319c81973b7a460f036faa3eDarrick J. Wong/* dir leaf node passes checks, but fails checksum */ 971e8548796a5bb59b2319c81973b7a460f036faa3eDarrick J. Wong#define PR_2_LEAF_NODE_ONLY_CSUM_INVALID 0x02004D 972e8548796a5bb59b2319c81973b7a460f036faa3eDarrick J. Wong 97352b0c6e6c9b2497f5d749bf30e6bc632aa45e6cbDarrick J. Wong/* bad inline directory size */ 97452b0c6e6c9b2497f5d749bf30e6bc632aa45e6cbDarrick J. Wong#define PR_2_BAD_INLINE_DIR_SIZE 0x02004E 97552b0c6e6c9b2497f5d749bf30e6bc632aa45e6cbDarrick J. Wong 97652b0c6e6c9b2497f5d749bf30e6bc632aa45e6cbDarrick J. Wong/* fixing inline dir size failed */ 97752b0c6e6c9b2497f5d749bf30e6bc632aa45e6cbDarrick J. Wong#define PR_2_FIX_INLINE_DIR_FAILED 0x02004F 97852b0c6e6c9b2497f5d749bf30e6bc632aa45e6cbDarrick J. Wong 979e3dd5c6f1a1cf9baeb7073fe2ecc5214fdfe0621Theodore Ts'o/* Encrypted directory entry is too short */ 980e3dd5c6f1a1cf9baeb7073fe2ecc5214fdfe0621Theodore Ts'o#define PR_2_BAD_ENCRYPTED_NAME 0x020050 981e3dd5c6f1a1cf9baeb7073fe2ecc5214fdfe0621Theodore Ts'o 98221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* 98321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * Pass 3 errors 98421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o */ 98521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 9861b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Pass 3: Checking directory connectivity */ 9871b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_PASS_HEADER 0x030000 9881b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 98921c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Root inode not allocated */ 9901b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_NO_ROOT_INODE 0x030001 99121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 99221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* No room in lost+found */ 9931b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_EXPAND_LF_DIR 0x030002 99421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 99521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Unconnected directory inode */ 9961b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_UNCONNECTED_DIR 0x030003 99721c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 99821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* /lost+found not found */ 9991b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_NO_LF_DIR 0x030004 100021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 100121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* .. entry is incorrect */ 10021b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_BAD_DOT_DOT 0x030005 10031b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 10041b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Bad or non-existent /lost+found. Cannot reconnect */ 10051b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_NO_LPF 0x030006 10061b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 10071b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Could not expand /lost+found */ 10081b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_CANT_EXPAND_LPF 0x030007 10091b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 10101b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Could not reconnect inode */ 10111b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_CANT_RECONNECT 0x030008 10121b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 10131b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error while trying to find /lost+found */ 10141b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_ERR_FIND_LPF 0x030009 10151b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 10161b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error in ext2fs_new_block while creating /lost+found */ 10171b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_ERR_LPF_NEW_BLOCK 0x03000A 101821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 10191b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error in ext2fs_new_inode while creating /lost+found */ 10201b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_ERR_LPF_NEW_INODE 0x03000B 10211b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 1022db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Error in ext2fs_new_dir_block while creating /lost+found */ 10231b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_ERR_LPF_NEW_DIR_BLOCK 0x03000C 1024db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 10251b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error while writing directory block for /lost+found */ 10261b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_ERR_LPF_WRITE_BLOCK 0x03000D 10271b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 10281b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error while adjusting inode count */ 10291b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_ADJUST_INODE 0x03000E 10301b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 10311b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Couldn't fix parent directory -- error */ 10321b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_FIX_PARENT_ERR 0x03000F 10331b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 1034db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Couldn't fix parent directory -- couldn't find it */ 10351b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_FIX_PARENT_NOFIND 0x030010 1036db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 10371b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error allocating inode bitmap */ 10381b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_ALLOCATE_IBITMAP_ERROR 0x030011 1039db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 10401b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error creating root directory */ 10411b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_CREATE_ROOT_ERROR 0x030012 10421b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 10431b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Error creating lost and found directory */ 10441b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_3_CREATE_LPF_ERROR 0x030013 104521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 1046f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o/* Root inode is not directory; aborting */ 1047f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o#define PR_3_ROOT_NOT_DIR_ABORT 0x030014 1048f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o 1049f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o/* Cannot proceed without a root inode. */ 1050f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o#define PR_3_NO_ROOT_INODE_ABORT 0x030015 1051f8188fff23dc2d9c9f858fb21264e46b17672825Theodore Ts'o 10527f813ba33711902f5e557da49f98622532e7556dTheodore Ts'o/* Internal error: couldn't find dir_info */ 10534a9f59366b3c5503bde40e9566dc996a0a40626fTheodore Ts'o#define PR_3_NO_DIRINFO 0x030016 10544a9f59366b3c5503bde40e9566dc996a0a40626fTheodore Ts'o 10554a9f59366b3c5503bde40e9566dc996a0a40626fTheodore Ts'o/* Lost+found is not a directory */ 10564a9f59366b3c5503bde40e9566dc996a0a40626fTheodore Ts'o#define PR_3_LPF_NOTDIR 0x030017 10577f813ba33711902f5e557da49f98622532e7556dTheodore Ts'o 10589676f3a94f4cece2458e5a13332c978832bb0ce7Zheng Liu/* Lost+found has inline data */ 10599676f3a94f4cece2458e5a13332c978832bb0ce7Zheng Liu#define PR_3_LPF_INLINE_DATA 0x030018 10609676f3a94f4cece2458e5a13332c978832bb0ce7Zheng Liu 10610991896720917b467e573a5fae38539d950d0617Darrick J. Wong/* Cannot allocate lost+found */ 10620991896720917b467e573a5fae38539d950d0617Darrick J. Wong#define PR_3_LPF_NO_SPACE 0x030019 10630991896720917b467e573a5fae38539d950d0617Darrick J. Wong 1064d5da89e868cd7b32801ae8f5322e13d373ab7060Darrick J. Wong/* Insufficient space to recover lost files */ 1065d5da89e868cd7b32801ae8f5322e13d373ab7060Darrick J. Wong#define PR_3_NO_SPACE_TO_RECOVER 0x03001A 1066d5da89e868cd7b32801ae8f5322e13d373ab7060Darrick J. Wong 10674ecd63d7869922dab94d88e6e0a4fa4c9f0d0c66Theodore Ts'o/* Lost+found is encrypted */ 10684ecd63d7869922dab94d88e6e0a4fa4c9f0d0c66Theodore Ts'o#define PR_3_LPF_ENCRYPTED 0x03001B 10694ecd63d7869922dab94d88e6e0a4fa4c9f0d0c66Theodore Ts'o 107021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* 1071b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o * Pass 3a --- rehashing diretories 1072b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o */ 1073b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o/* Pass 3a: Reindexing directories */ 1074b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o#define PR_3A_PASS_HEADER 0x031000 1075b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o 1076b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o/* Error iterating over directories */ 1077850d05e9aa405497e57c72090b9561af98b1b661Theodore Ts'o#define PR_3A_OPTIMIZE_ITER 0x031001 1078b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o 1079b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o/* Error rehash directory */ 1080db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o#define PR_3A_OPTIMIZE_DIR_ERR 0x031002 1081b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o 1082b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o/* Rehashing dir header */ 1083ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_3A_OPTIMIZE_DIR_HEADER 0x031003 1084b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o 1085b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o/* Rehashing directory %d */ 1086850d05e9aa405497e57c72090b9561af98b1b661Theodore Ts'o#define PR_3A_OPTIMIZE_DIR 0x031004 1087db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 1088db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Rehashing dir end */ 1089850d05e9aa405497e57c72090b9561af98b1b661Theodore Ts'o#define PR_3A_OPTIMIZE_DIR_END 0x031005 1090850d05e9aa405497e57c72090b9561af98b1b661Theodore Ts'o 1091e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong/* Pass 3B is really just 1E */ 1092e228d700d5b59d2d2e0e3a54c4c76b66ed71afdfDarrick J. Wong 1093b7a00563b22b0ea47ddc7117508c0b8e0d65df43Theodore Ts'o/* 109421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * Pass 4 errors 109521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o */ 109621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 10971b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Pass 4: Checking reference counts */ 1098ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_4_PASS_HEADER 0x040000 10991b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 110021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Unattached zero-length inode */ 1101ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_4_ZERO_LEN_INODE 0x040001 110221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 110321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Unattached inode */ 1104ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_4_UNATTACHED_INODE 0x040002 110521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 110621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* Inode ref count wrong */ 1107ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_4_BAD_REF_COUNT 0x040003 110821c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 11091b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Inconsistent inode count information cached */ 1110ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_4_INCONSISTENT_COUNT 0x040004 11111b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 111221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* 111321c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * Pass 5 errors 111421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o */ 111521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 11161b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Pass 5: Checking group summary information */ 11171b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_PASS_HEADER 0x050000 1118db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 11191b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Padding at end of inode bitmap is not set. */ 11201b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_INODE_BMAP_PADDING 0x050001 11211b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11221b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Padding at end of block bitmap is not set. */ 11231b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_BLOCK_BMAP_PADDING 0x050002 11241b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11251b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Block bitmap differences header */ 1126ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_5_BLOCK_BITMAP_HEADER 0x050003 11271b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11281b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Block not used, but marked in bitmap */ 1129f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o#define PR_5_BLOCK_UNUSED 0x050004 1130db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 11311b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Block used, but not marked used in bitmap */ 11321b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_BLOCK_USED 0x050005 11331b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 1134db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Block bitmap differences end */ 11351b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_BLOCK_BITMAP_END 0x050006 11361b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11371b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Inode bitmap differences header */ 11381b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_INODE_BITMAP_HEADER 0x050007 11391b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11401b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Inode not used, but marked in bitmap */ 1141f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o#define PR_5_INODE_UNUSED 0x050008 1142db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 11431b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Inode used, but not marked used in bitmap */ 11441b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_INODE_USED 0x050009 11451b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 1146db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o/* Inode bitmap differences end */ 11471b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_INODE_BITMAP_END 0x05000A 11481b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11491b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Free inodes count for group wrong */ 11501b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_FREE_INODE_COUNT_GROUP 0x05000B 11511b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11521b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Directories count for group wrong */ 11531b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_FREE_DIR_COUNT_GROUP 0x05000C 11541b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11551b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Free inodes count wrong */ 1156ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilger#define PR_5_FREE_INODE_COUNT 0x05000D 11571b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11581b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Free blocks count for group wrong */ 11591b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_FREE_BLOCK_COUNT_GROUP 0x05000E 11601b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11611b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Free blocks count wrong */ 11621b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_FREE_BLOCK_COUNT 0x05000F 11631b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o 11641b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Programming error: bitmap endpoints don't match */ 11651b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_BMAP_ENDPOINTS 0x050010 1166bbd47d76b7c12e98f9bf79b7c2582173252b4db6Theodore Ts'o 11671b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o/* Internal error: fudging end of bitmap */ 11681b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'o#define PR_5_FUDGE_BITMAP_ERROR 0x050011 1169bbd47d76b7c12e98f9bf79b7c2582173252b4db6Theodore Ts'o 1170bbd47d76b7c12e98f9bf79b7c2582173252b4db6Theodore Ts'o/* Error copying in replacement inode bitmap */ 1171bbd47d76b7c12e98f9bf79b7c2582173252b4db6Theodore Ts'o#define PR_5_COPY_IBITMAP_ERROR 0x050012 1172bbd47d76b7c12e98f9bf79b7c2582173252b4db6Theodore Ts'o 1173bbd47d76b7c12e98f9bf79b7c2582173252b4db6Theodore Ts'o/* Error copying in replacement block bitmap */ 1174bbd47d76b7c12e98f9bf79b7c2582173252b4db6Theodore Ts'o#define PR_5_COPY_BBITMAP_ERROR 0x050013 1175bbd47d76b7c12e98f9bf79b7c2582173252b4db6Theodore Ts'o 1176f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o/* Block range not used, but marked in bitmap */ 1177f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o#define PR_5_BLOCK_RANGE_UNUSED 0x050014 1178db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o 1179f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o/* Block range used, but not marked used in bitmap */ 1180f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o#define PR_5_BLOCK_RANGE_USED 0x050015 1181f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o 1182f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o/* Inode range not used, but marked in bitmap */ 1183f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o#define PR_5_INODE_RANGE_UNUSED 0x050016 118449a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos 1185f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o/* Inode rangeused, but not marked used in bitmap */ 1186f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o#define PR_5_INODE_RANGE_USED 0x050017 1187f122632e6bb8a51126da2c71bdb95fbcb52f51bcTheodore Ts'o 118849a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos/* Block in use but group is marked BLOCK_UNINIT */ 118949a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos#define PR_5_BLOCK_UNINIT 0x050018 119049a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos 119149a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos/* Inode in use but group is marked INODE_UNINIT */ 119249a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos#define PR_5_INODE_UNINIT 0x050019 119349a7360ba6b986242d9f0f33e102291d2e0dfb47Jose R. Santos 119411ac780e5f6a896e6b166314fafe66f334ca162aDarrick J. Wong/* Inode bitmap checksum does not match */ 119511ac780e5f6a896e6b166314fafe66f334ca162aDarrick J. Wong#define PR_5_INODE_BITMAP_CSUM_INVALID 0x05001A 119611ac780e5f6a896e6b166314fafe66f334ca162aDarrick J. Wong 1197da670fe0b52babe9721457039c66aefd1d9818a7Darrick J. Wong/* Block bitmap checksum does not match */ 1198da670fe0b52babe9721457039c66aefd1d9818a7Darrick J. Wong#define PR_5_BLOCK_BITMAP_CSUM_INVALID 0x05001B 1199da670fe0b52babe9721457039c66aefd1d9818a7Darrick J. Wong 120021c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* 12015107d0d196b9c51cf18380b6996b1074afe51df2Kalpak Shah * Post-Pass 5 errors 12025107d0d196b9c51cf18380b6996b1074afe51df2Kalpak Shah */ 12035107d0d196b9c51cf18380b6996b1074afe51df2Kalpak Shah 12045107d0d196b9c51cf18380b6996b1074afe51df2Kalpak Shah/* Recreate the journal if E2F_FLAG_JOURNAL_INODE flag is set */ 12055107d0d196b9c51cf18380b6996b1074afe51df2Kalpak Shah#define PR_6_RECREATE_JOURNAL 0x060001 12065107d0d196b9c51cf18380b6996b1074afe51df2Kalpak Shah 12077943ccf5f2fa76f1dc164ddd1ffd5044a1dca31aAditya Kali/* Update quota information if it is inconsistent */ 12087943ccf5f2fa76f1dc164ddd1ffd5044a1dca31aAditya Kali#define PR_6_UPDATE_QUOTAS 0x060002 12097943ccf5f2fa76f1dc164ddd1ffd5044a1dca31aAditya Kali 1210115d4b4b33540da49e5d04135417392f7c4d54fcTheodore Ts'o/* Error setting block group checksum info */ 1211115d4b4b33540da49e5d04135417392f7c4d54fcTheodore Ts'o#define PR_6_SET_BG_CHECKSUM 0x060003 1212115d4b4b33540da49e5d04135417392f7c4d54fcTheodore Ts'o 1213115d4b4b33540da49e5d04135417392f7c4d54fcTheodore Ts'o/* Error writing file system info */ 1214115d4b4b33540da49e5d04135417392f7c4d54fcTheodore Ts'o#define PR_6_FLUSH_FILESYSTEM 0x060004 1215115d4b4b33540da49e5d04135417392f7c4d54fcTheodore Ts'o 1216115d4b4b33540da49e5d04135417392f7c4d54fcTheodore Ts'o/* Error flushing writes to storage device */ 1217115d4b4b33540da49e5d04135417392f7c4d54fcTheodore Ts'o#define PR_6_IO_FLUSH 0x060005 1218115d4b4b33540da49e5d04135417392f7c4d54fcTheodore Ts'o 1219a701823a31505c5765d327d02bb14aa43fc34ae5Theodore Ts'o/* Error updating quota information */ 1220a701823a31505c5765d327d02bb14aa43fc34ae5Theodore Ts'o#define PR_6_WRITE_QUOTAS 0x060006 1221a701823a31505c5765d327d02bb14aa43fc34ae5Theodore Ts'o 1222a701823a31505c5765d327d02bb14aa43fc34ae5Theodore Ts'o 12235107d0d196b9c51cf18380b6996b1074afe51df2Kalpak Shah/* 122421c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o * Function declarations 122521c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o */ 12261b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'oint fix_problem(e2fsck_t ctx, problem_t code, struct problem_context *pctx); 12271b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'oint end_problem_latch(e2fsck_t ctx, int mask); 12281b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'oint set_latch_flags(int mask, int setflags, int clearflags); 12291b6bf1759af884957234b7dce768b785f792abd0Theodore Ts'oint get_latch_flags(int mask, int *value); 1230ae33f578c01b7171e556a75158baf7b713bfe68fAndreas Dilgervoid clear_problem_context(struct problem_context *pctx); 123121c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 123221c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o/* message.c */ 1233b0e91c89257d906324d6081c952157f768dfc699Theodore Ts'ovoid print_e2fsck_message(FILE *f, e2fsck_t ctx, const char *msg, 1234db0691b55521a072e05b47a4862bf5a30d550e7dTheodore Ts'o struct problem_context *pctx, int first, 12351a191d6648c8511d389cd9bea11dedb671f64456Theodore Ts'o int recurse); 123621c84b71e205b5ab13f14343da5645dcc985856dTheodore Ts'o 1237