[PATCH 1/2] erofs-utils: mkfs: fix double write of long xattr name prefixes
Jingbo Xu
jefflexu at linux.alibaba.com
Thu Aug 10 16:46:32 AEST 2023
Fix double write of long xattr name prefixes in non-tarerofs mode.
Besides fix the compiling error of tar.h. Include "internal.h" to
introduce prototypes of `struct erofs_inode` and `struct erofs_sb_info`.
Fixes: 95d315fd7958 ("erofs-utils: introduce tarerofs")
Signed-off-by: Jingbo Xu <jefflexu at linux.alibaba.com>
---
include/erofs/tar.h | 11 +++++++++++
mkfs/main.c | 3 ---
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/include/erofs/tar.h b/include/erofs/tar.h
index 8d3f8de..b7c2ef8 100644
--- a/include/erofs/tar.h
+++ b/include/erofs/tar.h
@@ -2,8 +2,15 @@
#ifndef __EROFS_TAR_H
#define __EROFS_TAR_H
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
#include <sys/stat.h>
+#include "internal.h"
+
struct erofs_pax_header {
struct stat st;
bool use_mtime;
@@ -27,4 +34,8 @@ int tarerofs_parse_tar(struct erofs_inode *root, struct erofs_tarfile *tar);
int tarerofs_reserve_devtable(struct erofs_sb_info *sbi, unsigned int devices);
int tarerofs_write_devtable(struct erofs_sb_info *sbi, struct erofs_tarfile *tar);
+#ifdef __cplusplus
+}
+#endif
+
#endif
diff --git a/mkfs/main.c b/mkfs/main.c
index 9c2397c..c03a7a8 100644
--- a/mkfs/main.c
+++ b/mkfs/main.c
@@ -912,9 +912,6 @@ int main(int argc, char **argv)
erofs_inode_manager_init();
- if (cfg.c_extra_ea_name_prefixes)
- erofs_xattr_write_name_prefixes(&sbi, packedfile);
-
if (!tar_mode) {
err = erofs_build_shared_xattrs_from_path(&sbi, cfg.c_src_path);
if (err) {
--
2.19.1.6.gb485710b
More information about the Linux-erofs
mailing list