erofs-utils: lib: rearrange struct erofs_configure
authorHongzhen Luo <hongzhen@linux.alibaba.com>
Mon, 11 Nov 2024 09:57:15 +0000 (17:57 +0800)
committerGao Xiang <hsiangkao@linux.alibaba.com>
Tue, 12 Nov 2024 02:09:48 +0000 (10:09 +0800)
Move the fields controlled by the NDEBUG macro to the end
to maintain a consistent layout for preceding variables.

It addresses cases where a third-party application does not define
NDEBUG while erofs-utils does.  Ideally, third-party applications
should use the same macros as erofs-utils to get a unique
`struct erofs_configure`. However, since NDEBUG enables unnecessary
assertions, restructuring the layout resolves such inconsistencies.

Fixes: ad6c80dc168d ("erofs-utils: lib: add erofs_get_configure()")
Signed-off-by: Hongzhen Luo <hongzhen@linux.alibaba.com>
Link: https://lore.kernel.org/r/20241111095715.3814956-1-hongzhen@linux.alibaba.com
Signed-off-by: Gao Xiang <hsiangkao@linux.alibaba.com>
include/erofs/config.h

index ae366c150232d7be796cd3460f283f74ce12e8d5..cff4ceadb7bceea0f1c27f45f2e523bc05017c30 100644 (file)
@@ -46,10 +46,6 @@ struct erofs_configure {
        int c_dbg_lvl;
        bool c_dry_run;
        bool c_legacy_compress;
-#ifndef NDEBUG
-       bool c_random_pclusterblks;
-       bool c_random_algorithms;
-#endif
        char c_timeinherit;
        char c_chunkbits;
        bool c_inline_data;
@@ -94,6 +90,10 @@ struct erofs_configure {
        char *fs_config_file;
        char *block_list_file;
 #endif
+#ifndef NDEBUG
+       bool c_random_pclusterblks;
+       bool c_random_algorithms;
+#endif
 };
 
 extern struct erofs_configure cfg;