@@ -106,6 +106,95 @@ features see :doc:`Status<Status>` page.
106
106
6.8 - new mount API
107
107
Use new mount API (https://lwn.net/Articles/753473/)
108
108
109
+ 6.9 - statx can read the subvolume id
110
+ The extendable syscall *statx * also returns the subvolume id and
111
+ sets the *result_mask * bit *STATX_SUBVOL *.
112
+
113
+ 6.9 - reflinked file range and concurrent read
114
+ An optimization for concurrent access to a range that is reflinked
115
+ and read at the same time, the read latency is decreased due to reduced
116
+ locking.
117
+
118
+ 6.10 - automatic stale subvolume group removal
119
+ This applies to 0 level qgroups (the one automatically created for a
120
+ subvolume), once the subvolume is deleted the respective qgroup is
121
+ also deleted. This may take some time until the qgroup accounting is
122
+ correct and consistent again as the subvolume deletion is delayed.
123
+
124
+ This is also affected by presence of the subvolume qgroup in higher
125
+ level qgroups or the sysfs setting of *drop_subtree_threshold * that will
126
+ need a quota rescan.
127
+
128
+ 6.10 - sysfs reports reclaim status
129
+ A per-filesystem report of background reclaim status, file names
130
+ matching *reclaim_ * in the space info directory.
131
+
132
+ 6.10 - tunable dynamic background reclaim threshold
133
+ Run background block group reclaim (using the relocation/balance mechanism)
134
+ if the used size is above the configured value and the dynamic reclaim
135
+ is enabled (not by default). When enabled, there's a heuristic that ties to
136
+ avoid increasing system load if there's enough unallocated space but will
137
+ try hard (but cannot be perfect) to avoid a situation when there's last
138
+ chunk remaining to make the relocation possible.
139
+
140
+ 6.10 - new mount option rescue= mode *ignoremetacsums *
141
+ When enabled, any metadata checksum mismatch is ignored (in read-only mount),
142
+ this may be useful in an interrupted checksum type conversion (:doc: `btrfstune `).
143
+
144
+ 6.10 - new mount option rescue= mode *ignoresuperflags *
145
+ An option to ignore unknown super block flags, at this point applies
146
+ only to the interrupted checksum conversion, but can be useful for
147
+ similar operations in the future.
148
+
149
+ 6.10 - tree-checker updates
150
+ Properly verify all types of directory items and reject unknown ones.
151
+ Do relevant device item checks.
152
+
153
+ 6.10 - allow to clone/reflink the tail extent
154
+ Check if the last inode extent (not a full block length) can be cloned
155
+ and do it, this fixes a problem in send/receive.
156
+
157
+ 6.10 - unlink updates ctime
158
+ Mandated by POSIX (https://pubs.opengroup.org/onlinepubs/9699919799/functions/unlink.html),
159
+ the link count is changed.
160
+
161
+ 6.11 - unconditionally wake up cleaner thread on SYNC ioctl
162
+ Avoid indirection when the BTRFS_IOC_SYNC ioctl is called and wake
163
+ up the cleaner thread which is among other things responsible to
164
+ clean deleted subvolumes.
165
+
166
+ 6.11 - reduced locking around buffered reads
167
+ Improve concurrency by reducing scope of locking around buffered
168
+ reads. The direct io is still locked but this should not be mixed with
169
+ buffered writes.
170
+
171
+ 6.12 - cancellable discard/TRIM
172
+ Add more points where the discard can be interrupted by signals before
173
+ it finishes the whole operation.
174
+
175
+ 6.13 - new config option CONFIG_BTRFS_EXPERIMENTAL
176
+ Add separate config option to distinguish purely debugging features
177
+ (like extended safety checks) and features that still need some
178
+ refinements (and were hidden under the debugging config option not to
179
+ expose them to users). When enabled this namely covers extent tree v2,
180
+ raid stripe tree, send protocol version 3 and checksum offloading strategy.
181
+
182
+ 6.13 - encoded read integration with io_uring
183
+ The io_uring subsystem understands a command that is directed to
184
+ Btrfs encoded read ioctl.
185
+
186
+ 6.13 - new ioctl to wait for cleaned subvolumes
187
+ Add specialized ioctl to wait for deleted (and maybe not yet cleaned)
188
+ subvolumes, available to any user. The related command :command: `btrfs subvolume sync `
189
+ uses the privileged SEARCH_TREE ioctl otherwise.
190
+
191
+ 6.13 - seeding device use case change
192
+ The sprout device (the writable one added to the seeding device) does
193
+ not touch the superblock read-only status, preventing removal of
194
+ accumulated deleted snapshots to be cleaned.
195
+
196
+ 6.13 - update tree-checker to detect more wrong inline extent references
197
+
109
198
5.x
110
199
---
111
200
0 commit comments