]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/xattr.h
Disable pristine-tar option in gbp.conf, since there is no pristine-tar branch.
[bcachefs-tools-debian] / libbcachefs / xattr.h
index 1365032d56c39aa19e298d48e78f06562ffbdb7d..1337f31a5c492c8401eefefdcd56c4a450d73514 100644 (file)
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0 */
 #ifndef _BCACHEFS_XATTR_H
 #define _BCACHEFS_XATTR_H
 
@@ -5,13 +6,15 @@
 
 extern const struct bch_hash_desc bch2_xattr_hash_desc;
 
-const char *bch2_xattr_invalid(const struct bch_fs *, struct bkey_s_c);
-void bch2_xattr_to_text(struct bch_fs *, char *, size_t, struct bkey_s_c);
+int bch2_xattr_invalid(struct bch_fs *, struct bkey_s_c,
+                      enum bkey_invalid_flags, struct printbuf *);
+void bch2_xattr_to_text(struct printbuf *, struct bch_fs *, struct bkey_s_c);
 
-#define bch2_bkey_xattr_ops (struct bkey_ops) {                \
+#define bch2_bkey_ops_xattr ((struct bkey_ops) {       \
        .key_invalid    = bch2_xattr_invalid,           \
        .val_to_text    = bch2_xattr_to_text,           \
-}
+       .min_val_size   = 8,                            \
+})
 
 static inline unsigned xattr_val_u64s(unsigned name_len, unsigned val_len)
 {
@@ -35,15 +38,11 @@ struct xattr_handler;
 struct bch_hash_info;
 struct bch_inode_info;
 
-struct bkey_s_c bch2_xattr_get_iter(struct bch_fs *,
-                                   struct btree_iter *,
-                                   struct bch_inode_info *,
-                                   const char *, int);
-int bch2_xattr_get(struct bch_fs *, struct bch_inode_info *,
-                 const char *, void *, size_t, int);
+/* Exported for cmd_migrate.c in tools: */
+int bch2_xattr_set(struct btree_trans *, subvol_inum,
+                  struct bch_inode_unpacked *, const struct bch_hash_info *,
+                  const char *, const void *, size_t, int, int);
 
-int bch2_xattr_set(struct bch_fs *, u64, const struct bch_hash_info *,
-                  const char *, const void *, size_t, int, int, u64 *);
 ssize_t bch2_xattr_list(struct dentry *, char *, size_t);
 
 extern const struct xattr_handler *bch2_xattr_handlers[];