023a0563c8b1deb8ad22b1e36572c4136fd4f21b iomap: pass writeback errors to the mapping c708313e9d7638265526ffd9c8dd8e1f3101b4ad From: Darrick J. Wong Date: 2021-07-13 14:18:01 -0700 cac39ec157ffa76c1d0c11cdb2cd93b0facde638 xfs: drop experimental warnings for bigtime and inobtcount 8a9fb3a80c0735142f33e0e3d1c9ac58708db706 xfs: grab active perag ref when reading AG headers e5515ed6ff9446eda6883c88a2d3255ec0c382f8 xfs: dump log intent items that cannot be recovered due to corruption 61b647a1fc55fdbaca601efca8fe3bb59a5201ac xfs: attach dquots earlier in xfs_inactive() c89734807e2f0009cac2e31a4933f2d1166744e5 xfs: move xfs_inactive call to xfs_inode_mark_reclaimable dbf5dc200d38851e0c08a436526e3c99d5b474a4 xfs: detach dquots from inode if we don't need to inactivate it 273d5694f010d9aa3f97fe4a35c97b9e259715d8 xfs: defer inode inactivation to a workqueue 9e5fb82be7935301c61f0e3f7ba3895966e9e754 xfs: throttle inode inactivation queuing on memory reclaim f86d13d951f850cbd7bb5210ba5bf9c13051e9ea xfs: don't throttle memory reclaim trying to queue inactive inodes 422ed1c784e032ce562187e908021be33a05a24e xfs: throttle inodegc queuing on backlog 4303ef57dbc36e4a22581c54b219154e59b07e95 xfs: allow quotaoff to dqdetach NEEDS_INACTIVE inodes 0103e25d56289170e966d8ead42aa4bd0db0e5f3 xfs: drop dead dquots before scheduling inode for inactivation f3f4f7750f65f8d324b05282c09ca60e2a71aa32 xfs: queue inodegc worker immediately when memory is tight f184197b85dd50da508da2a837974df3d36d89b1 xfs: expose sysfs knob to control inode inactivation delay 87a4f4cf4b70ea62f95983d753ea3396ee6dfb95 xfs: reduce inactivation delay when free space is tight 9aa29b6f41d81b9416a42a0d0770b6138a4be349 xfs: reduce inactivation delay when quota are tight 0bbf5fa9eb9c5562f21788a0d1b60a3e71ef44d2 xfs: reduce inactivation delay when realtime extents are tight 1129a06b417fa8f6a1a50a48115ce37d626f92b5 xfs: inactivate inodes any time we try to free speculative preallocations 28610c8b3500660948ffc762a5cc9fb5aae1d726 xfs: debugging patch #1 for deferred inodegc e2d022f002d4138c8b35337b4ff008cb0e0c83e0 xfs: flush inode inactivation work when compiling usage statistics d33d33b4c32b47972756fa277fabdfc18348ed30 xfs: parallelize inode inactivation 57eb42998e6a1500aa3b6bedffe4faba9c52caf7 xfs: reduce inactivation delay when AG free space are tight fe62617707370d876b83a2e9bb38ab122c36f8ea xfs: queue inodegc worker immediately on backlog 513f336192791ffad9bd6c885a9dc3ea31881bad xfs: debugging patch #2 for deferred inodegc 3944d29212c570cf07382a6a0f275b1849041e48 xfs: don't run speculative preallocation gc when fs is frozen e208b125eca7e862073fc1d55815d532930addef xfs: scale speculative preallocation gc delay based on free space cb5a4b57a446ef8104748dcb547dc3634f8378b0 xfs: use background worker pool when transactions can't get free space c8c9cd1a5e06366b261e5226adb385b0931cf42d xfs: avoid buffer deadlocks when walking fs inodes a3bdb20d2bb1228d180b87d5a4f9103f02a5523f xfs: cancel enospc inode flush work before unmounting 93154f56e1baded9d0622ebde4f20be8995dee5b xfs: fix rmap key comparison functions 308dadd4a45b600d592f3813bc1f05d0a7207cac xfs: teach xfs_btree_has_record to return false if there are gaps 6a298a006d4fdca6c3cf1c50aa3d9e86c2d377ea xfs: check btree keys reflect the child block 7a1deb1349035aa5a30ac04092f28ae6fefdc41e xfs: online checking of the free rt extent count 283d8c4547759ac69ce39a655cf055cdef001e1b xfs: teach scrub to check for adjacent bmaps when rmap larger than bmap fdb728073cb7f26c3c67e384ff33239e683e3eaa xfs: check quota files for unwritten extents 0c03f6323c0f7019bf7d6caa9ebbd2cfd440516d xfs: check the reference counts of gaps in the refcount btree 8fbe0ae6d38f868126340b0da8070182b3338b89 xfs: simplify xfs_rmap_lookup_le call sites f47feedc526f96b8504fe637f0a11cf8de144b77 xfs: speed up rmap lookups by using non-overlapped lookups when possible 2ab3d5b8ec4dd634c0e1217e61bc1b894264c3ff xfs: speed up write operations by using non-overlapped lookups when possible 9c26f70e3e147bf65254e22514e1cc57d5ca163a xfs: stop artificially limiting the length of bunmap calls 5e7e2e57a889ccaea5a32ce0a172d55084a0cc8a xfs: remove a __xfs_bunmapi call from reflink b1d1b1cb1ee5423f9e207a1ab9be750fb280cc78 xfs: create shadow transaction reservations for computing minimum log size 3083acb681a60d4badfa513f145ca9029e2d2687 xfs: reduce the absurdly large log reservations 8f9c74663dcc42d1fdd6a65867f543618ceeed1a xfs: reduce transaction reservations with reflink f03a000d4d14fa01ede449cb72724518d13c02a8 xfs: rewrite xfs_reflink_end_cow to use intents 9bd8e58c41581500f9cd5b3cb28198b3723a16c5 xfs: only invalidate blocks if we're going to free them 9519909d3f64c1c87787682d5af5d15d370d2a0a xfs: only allow reaping of per-AG blocks in xrep_reap_extents fbbe9bdb2ac87ba5c69bdae61e588cb966960f43 xfs: use deferred frees to reap old btree blocks d54ba93839273a6ef97abe182da18eb243f26272 xfs: remove the for_each_xbitmap_ helpers 6b281c8e37aaf97465486833056437c2b270d727 xfs: drop the _safe behavior from the xbitmap foreach macro 5294a016c607f051df227ae4bda9af1f7d5658b4 xfs: reap large extents when possible 70dc4ec81a64e84f606d64671fa826ab53ea5676 xfs: convert xbitmap to interval tree d30c530eb98f084d433fc55b571943d473cd89cb xfs: implement block reservation accounting for btrees we're staging 459f75bac2b114725c0bc66e0c1c7dd0a612a2d6 xfs: add debug knobs to control btree bulk load slack factors 31df58219585fd0604298e29aa731bdbf1a5958c xfs: log EFIs for all btree blocks being used to stage a btree c562382ddea4b9c0655b871617967cf5ca9bae9f xfs: create a big array data structure 9d1c9772fe42cc272c84a6ed21ee04eef460c8f8 xfs: get our own reference to inodes that we want to scrub fd7cfddd68b4fbad183b982d673dd4f375c9c28b xfs: move the realtime summary file scrubber to a separate source file db5a5386df8d90f7b8818860cf83213cbe866168 xfs: implement online scrubbing of rtsummary info eb8996183c9f0bd5d085552e170cd13b4305db75 xfs: always rescan allegedly healthy per-ag metadata after repair 17c54ca11410106f34ba9951c225bdceeee3c17c xfs: repair free space btrees 9b8ab3c319c68951479c48c80eea6f8711c00e3c xfs: repair inode btrees 028f48798b92f040901e1f3d4a4ff959c4b8c4cb xfs: repair refcount btrees 5725819e64779e7e2314af7e6a81cfdcae900b1b xfs: warn about inodes with project id of -1 a6c54dc42d8c2898b88ab4199801bdbed58d0410 xfs: repair inode records d773ae90f4dbc206d0948f03c9fd25a4577a43cf xfs: zap broken inode forks 86bc728584464376fc128f0505026aca59e74bae xfs: repair obviously broken inode modes 55ea97d3ae169d55de3cb7f34a1515a992f66cff xfs: reintroduce reaping of file extents to xrep_reap_extents d3c651c31aab150baf49475b2f2fc87eb852c229 xfs: repair inode block maps 3dd8f1e8d8b7b0fd884267847d73cc909e7253e2 xfs: repair damaged symlinks d08fa6164086d50f68bacbb0b5f151ce1d6fb277 xfs: repair the inode core and forks of a metadata inode 9aafdf957b177b8f8eee3623a72442bb5e614d7e xfs: create a new inode fork block unmap helper 07caf93b63378521e2d92626b2a14cfb3dcc1e0b xfs: repair quotas cdc7c3c11426b5028d6851658dea861d853ecb1d xfs: report the health of quota counts 51d3a82255c2e81a44122c43d3de46811289d256 xfs: implement live quotacheck inode scan 72691a2a4079a4147f5a2fc625eca2d5a84dec33 xfs: track quota updates during live quotacheck 2373798d9e72322856dfa409f8b5b7469338c8b6 xfs: repair dquots based on live quotacheck results 8c0131315e369725829d152a04e2213e9f7ee094 xfs: separate the marking of sick and checked metadata 93388ab6aa4c68786268d239fa509e9d2961d47b xfs: report ag header corruption errors to the health tracking system a52a18c75566411d26ff23660697b866df02d35d xfs: report block map corruption errors to the health tracking system 90b3698cf4e418dded6422b9ba44902786b4fc6a xfs: report btree block corruption errors to the health system dab8b0bab70a4e6cc82d54ec1eb2852ceb8639b3 xfs: report dir/attr block corruption errors to the health system 8fe3909d27f329597aa6ea12eade1540f38e3249 xfs: report symlink block corruption errors to the health system 5c6f3c9837b2b123beb75e822c87b3f965b40711 xfs: report inode corruption errors to the health system 11cf64ccf72a0a0a91b91c489acd96f2861402ea xfs: report quota block corruption errors to the health system cc795a5f835a61f236d30996ecf86e22afeb0a6c xfs: report realtime metadata corruption errors to the health system 3e7ef78d8501204e5de06f12d30b4310b82f8693 xfs: report XFS_CORRUPT_ON errors to the health system 54286b43e4ba5c55cad7c0e6481a3e064b7f12d6 xfs: add secondary and indirect classes to the health tracking system 114dd54f871925adc2764d8ca60196757d8aeab3 xfs: remember sick inodes that get inactivated 66fd303110add42ca5689a4b881c3fc0946d1c80 xfs: update health status if we get a clean bill of health ca9c57d020f42a3271eec5adf89dbdf87d52610f xfs: introduce online scrub freeze 1219b66d3ccab84f1b6904f0cd48a5133529af53 xfs: ask to freeze if fscounters scrubber fails e3823945d9c4efdd66961d293f731eadfc7478d5 xfs: repair the rmapbt 33721285edf2cb0534364cf4fda1fa7517267e5c xfs: allow rmap repair to grab unlinked inodes 11ff386df1c527c0352b2d15f29750760d9a831d xfs: repair summary counters fc03d4b84e79cfd4cd7bae69047acee8eef3db6d xfs: fix xfs_bunmapi to allow unmapping of partial rt extents 2e4dc6b1053d18d56aff32e22fe13f4bfe9bdad8 xfs: hoist freeing of rt data fork extent mappings 51ccfb1976b76a8f508bc9a1349661c6cda18050 xfs: create a helper to decide if a file mapping targets the rt volume 1ced377e45dd6426b12385701620012b3a118b94 xfs: add a realtime flag to the bmap update log redo items 250ea26548cb48db95633198d51be6a4972a3140 xfs: support recovering bmap intent items targetting realtime extents faeb4a90125e1c4a7b0236d8e7d969bbf21a367e xfs: support deferred bmap updates on the attr fork 166a096018e947abb1a81f24cf6bb2981878d843 xfs: xfs_bmap_finish_one should map unwritten extents properly fe9e8c4d9b9d0675ae3236a3fed02f5e8290c757 xfs: allow setting and clearing of log incompat feature flags 742434a96937861e9478ff308d148fd6ba44aeef xfs: clear log incompat feature bits when the log is idle 1bf3739c93164bc21eac4df4bf1b1d61680c6bf1 vfs: introduce new file range exchange ioctl dbe50b5022dd2a06e8e3515b712e63718a12d53a xfs: support two inodes in the defer capture structure 4db845d5a911236b0b25a2fb0a921f4dab3149c1 xfs: create a new helper to return a file's allocation unit bb807c0e7249d7b087b6a687be3c6b9edf025844 xfs: refactor non-power-of-two alignment checks cdd000f5962cee468b37b30f34094c1b690930b6 xfs: create a log incompat flag for atomic extent swapping fc6c36ca1d08979faf24e3c23bed1d7f831dd515 xfs: introduce a swap-extent log intent item 0761c4c009db758226408bfd45089b0d653508de xfs: refactor xfs_iget calls from log intent recovery d1baaf5215f179818873e8b9beb63d50d5b2a479 xfs: create deferred log items for extent swapping 11eb88af802fc12275b1adf29fb4123e93ebbae8 xfs: add a ->xchg_file_range handler f4513d9cf6b970417f60898a4cdbb14324dd54b9 xfs: add error injection to test swapext recovery 65080193fc6c69315ef3d6c6abe0a3f331b7fdbf xfs: port xfs_swap_extents_rmap to our new code 58fc67bbd8f7142c213ef959785ac57dd9384fd3 xfs: consolidate all of the xfs_swap_extent_forks code 0f50ea4929e1940fcfec31f5a921f5f0afd6887f xfs: refactor reflink flag handling in xfs_swap_extent_forks e2ccf7456b05d331e62064c70c6a730791241df7 xfs: allow xfs_swap_range to use older extent swap algorithms 49358c195be2608fa57e6e8efc1841d3a900a3c5 xfs: remove old swap extents implementation 7a8dd0e80525fa5ce26d64ed73cfc89d581d1de6 xfs: condense extended attributes after an atomic swap 13849b69ffc71322abd17a90e731a90120e0c259 xfs: condense directories after an atomic swap 64cf938ce50d5747becf30cb5c6bf8a32e8becf8 xfs: make atomic extent swapping support realtime files 5716d2c59ce5088c31e2973f2ca848467e743ec0 xfs: support non-power-of-two rtextsize with exchange-range 4f249f4a3f2f2961fbe760468577ae0588b9e5dd xfs: enable atomic swapext feature c6ca012e991cf27e75fb54c7f2e66e09ed87a5ad xfs: hide private inodes from bulkstat and handle functions 62345ad2cdf7cdbcbaaf96c5bf79de510450d858 xfs: create temporary files and directories for online repair 946b0a71398a9764ed967975bb00a8c9f2712ee8 xfs: online repair of realtime summaries 912e240dc24f7bbe789846ec62c2cb5d8746d1d5 xfs: create a blob array data structure 03f9bca1ce59e81cb423407ba439a1d843cc554e xfs: repair extended attributes c6172064b847174e0f8ad0f61cb8c6e781c1dfd0 xfs: scrub should set preen if attr leaf has holes 2432036652cc8f67af66dd02ebde69e2bf7425c8 xfs: online repair of directories 28b0d412103632279efadc4a702471e06e59ce60 xfs: online repair of parent pointers ebf5c62a35e5fabda00246bbe23d3ffa9a00283f xfs: ask the dentry cache if it knows the parent of a directory 4d2d0ff3eae8c96aee0033c0bd39ae96fbee971f xfs: move orphan files to the orphanage e57a3454aa3beb0ac837052d5e9194f4bf2c44b0 xfs: move inode copy-on-write predicates to xfs_inode.[ch] df823e8ed16dfc99c348a38c3d1011572b002597 xfs: hoist extent size helpers to libxfs 2b27f0ca45f99a88f528b3ff55202490033d1758 xfs: hoist inode flag conversion functions to libxfs 31067106fb926341941dfa12f0cc3f493ffc4e7e xfs: hoist project id get/set functions to libxfs ccac6ecaca22a7af20ea58d5ca08923363364857 xfs: pack icreate initialization parameters into a separate structure 680444c8c7ad61dac8f34e3e7063c2549691d60d xfs: implement atime updates in xfs_trans_ichgtime 50c3fbb251de4721cb273557cfaa390f4bd8f678 xfs: use xfs_trans_ichgtime to set times when allocating inode c07b6cd2a95ef75305d18bba243c395bb43ca892 xfs: split new inode creation into two pieces bd6d9b562903024b7f18841ef6405dafca7e83bf xfs: hoist new inode initialization functions to libxfs 73a17e07b1e1306f39aa9419d84531e858cb6c41 xfs: push xfs_icreate_args creation out of xfs_create* 33f2c49b2ac3ec4566e8793a4dd9de8ac071866e xfs: wrap inode creation dqalloc calls 16d0b87f3068e8872c1d4e9d6a83f5d00ba92b4f xfs: hoist xfs_iunlink to libxfs 64f2a99d77afe6098092c23c15e803aa54c6c38d xfs: hoist xfs_{bump,drop}link to libxfs 3e8bede685e932acbca9144f42e239a1c4aa3189 xfs: create libxfs helper to link a new inode into a directory 0a2211148983d4667cc9bc831f7402f47fdab4b6 xfs: create libxfs helper to link an existing inode into a directory 1b06ce4ddad4409bf2cf11752977ab344272d752 xfs: hoist inode free function to libxfs c0add74a97bccad924d2a089122eae04d9546029 xfs: create libxfs helper to remove an existing inode/name from a directory 943af5045f8f28ae777a0cbc8812d9ba7f10706e xfs: create libxfs helper to exchange two directory entries 6b5663053e4ad2f8681a497d63bc0d1c59c4509a xfs: create libxfs helper to rename two directory entries 52e193b4d077ac73580d13114a72b934f9c10c1d xfs: get rid of cross_rename 23699c192dfd4fa2b349d4a3a96ce2f39d69c8c7 xfs: create imeta abstractions to get and set metadata inodes 5978055c94fb265d2324314e7c4b4a184658f961 xfs: create transaction reservations for metadata inode operations 4f5a72449e30ec1200c613f071fb275d964113d2 xfs: refactor the v4 group/project inode pointer switch 544bf3dd3728c0e5348211edda63c5f744665427 xfs: convert all users to xfs_imeta_log 192a73fc7d81723ee386512ac03fb6897f373119 xfs: iget for metadata inodes 7ae172f7d4596eb6995fdd74b8a2c6e0fb4b2c36 xfs: define the on-disk format for the metadir feature 6a62f4c46207dc1a5256ffca2f4346b914af498d xfs: update imeta transaction reservations for metadir f398fa71d80be95a2be2b669a4e289b12ba8981f xfs: load metadata directory root at mount time 5c997523944e640b497cbb877b54001a56289671 xfs: convert metadata inode lookup keys to use paths 61dd2d014474706a14a48baee5354ca5d394ff5a xfs: enforce metadata inode flag 57d2f24e3b435fdc51e87b337ea8881ff9db3c22 xfs: read and write metadata inode directory 8f2f7e2a428e959876ce6f3d3f56059bac8cbf0b xfs: ensure metadata directory paths exist before creating files eb833f76f3810edc7e00951aa5bf195fe7c0361f xfs: disable the agi rotor for metadata inodes e53d8fcc43b97fa5e93f48ee68c081b4a4806276 xfs: hide metadata inodes from everyone because they are special 27b6cfd33afb0d49d819f3d7e2de8e8d406b796e xfs: advertise metadata directory feature 51d3f32d3a42757d1ecb3ca1e2fa8e20ca90e8a3 xfs: allow bulkstat to return metadata directories 9eedf420e04dcfeb6c521a3125906adf11eecfb0 xfs: scrub metadata directories 6e681f22c8f1bd23f6a22d366903329307460098 xfs: enable metadata directory feature