summaryrefslogtreecommitdiff
tag namerealtime-rmap_2021-12-15 (0077cff16986e5115f29b33fcc224f684d71aa0a)
tag date2021-12-15 17:31:06 -0800
tagged byDarrick J. Wong <djwong@kernel.org>
tagged objectcommit 9d2bc3f95e...
xfs: realtime reverse-mapping support
This is the latest revision of a patchset that adds to XFS kernel support for reverse mapping for the realtime device. This time around I've fixed some of the bitrot that I've noticed over the past few months, and most notably have converted rtrmapbt to use the metadata inode directory feature instead of burning more space in the superblock. At the beginning of the set are patches to implement storing B+tree leaves in an inode root, since the realtime rmapbt is rooted in an inode, unlike the regular rmapbt which is rooted in an AG block. Prior to this, the only btree that could be rooted in the inode fork was the block mapping btree; if all the extent records fit in the inode, format would be switched from 'btree' to 'extents'. The next few patches widen the reverse mapping routines to fit the 64-bit numbers required to store information about the realtime device and establish a new b+tree type (rtrmapbt) for the realtime variant of the rmapbt. After that are a few patches to handle rooting the rtrmapbt in a specific inode that's referenced by the superblock. Finally, there are patches to implement GETFSMAP with the rtrmapbt and scrub functionality for the rtrmapbt and rtbitmap; and then wire up the online scrub functionality. We also enhance EFIs to support tracking freeing of realtime extents so that when rmap is turned on we can maintain the same order of operations as the regular rmap code. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEUzaAxoMeQq6m2jMV+H93GTRKtOsFAmG6ltoACgkQ+H93GTRK tOv8ww//T0SBikycqsJt4JlQZGsfKJeN45J8YPjRDzLf25xwrwcYFIpOdDHblvUk HwzZTDW78P9ouqGJ1P/+0NvWwe7GFeRKa/sGuGDci6QfrylJPMV9XkbW801yRNkm KV9VxhI8zpwmsI9oNbZrQt6IyJNW+0heJsWSr7uP7daZLUValeEJ36erPQz7oF0D Z9b+LS3QpppUW6cQm7UIaAmQMiXooXR1jVc9zE4+r9mOzg/ul13Fd4qxqq3WDrd+ RDqxDwGMlvpf1tdfry8pIMZgRDj/OWTSyMSVC3QoxWSxpeUQ+53jPXHCPvq0HOcZ ttU6eItVqdmrsQL+xcHjHFEeycC+orde4zgM1QHzA/6rEn8O/sO7eSv7Q3OwhYxr s8RkbqwmnLVhmLLex9c+la5ubgBFpPkt69XPCryB4E3kpYJgZmLAN/REvgx4okbL 8Z3fqI/NRAQeQZ/MxRGn+sEKw5m/kEI+SNdRHbiG8etyniPZMikaQG+0Dy/eUJ28 rNPjfbb7yzwj4DjmQEd2y2ip2YKQzFyNfQ+EmnU2wo7dXCGzM1ZV+WXkfURuGZjW 0/1IExglL5ASlNXpvxYe37+Gk2zc3MvN8XZlLu7AiLIKHqbet1db578YyuNyyBvg VzXrV/shloHEaE4XGAxDC888Qvqvj2C5qmoQVY6/16idrQrp8Fc= =jqqt -----END PGP SIGNATURE-----