History

md: Runtime support for multiple ppls

Increase PPL area to 1MB and use it as circular buffer to store PPL. The entry with highest generation number is the latest one. If PPL to be written is larger then space left in a buffer, rewind the buffer to the start (don't wrap it).

Pawel Baldysiak committed 9 years ago

Commit ddc08821 parent 8a8e6f87 files · +62 −9Browse files

Showing the changes to include/uapi/linux/raid (1 of 7 files). Show all

Unified · Split

include/uapi/linux/raid/md_p.h+3−1
@@ -324,9 +324,10 @@ struct mdp_superblock_1 { · 323 unmodified lines
324#define MD_FEATURE_RECOVERY_BITMAP 128 /* recovery that is happening324#define MD_FEATURE_RECOVERY_BITMAP 128 /* recovery that is happening
325 * is guided by bitmap.325 * is guided by bitmap.
326 */326 */
327#define MD_FEATURE_CLUSTERED 256 /* clustered MD */327#define MD_FEATURE_CLUSTERED 256 /* clustered MD */
328#define MD_FEATURE_JOURNAL 512 /* support write cache */328#define MD_FEATURE_JOURNAL 512 /* support write cache */
329#define MD_FEATURE_PPL 1024 /* support PPL */329#define MD_FEATURE_PPL 1024 /* support PPL */
330#define MD_FEATURE_MULTIPLE_PPLS 2048 /* support for multiple PPLs */
330#define MD_FEATURE_ALL (MD_FEATURE_BITMAP_OFFSET \331#define MD_FEATURE_ALL (MD_FEATURE_BITMAP_OFFSET \
331 |MD_FEATURE_RECOVERY_OFFSET \332 |MD_FEATURE_RECOVERY_OFFSET \
332 |MD_FEATURE_RESHAPE_ACTIVE \333 |MD_FEATURE_RESHAPE_ACTIVE \
@@ -338,6 +339,7 @@ struct mdp_superblock_1 { · 5 unmodified lines
338 |MD_FEATURE_CLUSTERED \339 |MD_FEATURE_CLUSTERED \
339 |MD_FEATURE_JOURNAL \340 |MD_FEATURE_JOURNAL \
340 |MD_FEATURE_PPL \341 |MD_FEATURE_PPL \
342 |MD_FEATURE_MULTIPLE_PPLS \
341 )343 )
342 344
343struct r5l_payload_header {345struct r5l_payload_header {