* [PATCH v2] btrfs-progs: set transid in btrfs_insert_dir_item
@ 2024-07-22 13:33 Mark Harmstone
2024-07-22 14:15 ` Josef Bacik
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Mark Harmstone @ 2024-07-22 13:33 UTC (permalink / raw)
To: linux-btrfs; +Cc: Mark Harmstone
btrfs_insert_dir_item wasn't setting the transid field in
btrfs_dir_item. Set it to the current transaction ID rather than writing
uninitialized memory to disk.
Signed-off-by: Mark Harmstone <maharmstone@fb.com>
---
kernel-shared/dir-item.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/kernel-shared/dir-item.c b/kernel-shared/dir-item.c
index 4c62597b..5e7d09e6 100644
--- a/kernel-shared/dir-item.c
+++ b/kernel-shared/dir-item.c
@@ -27,6 +27,7 @@
#include "kernel-shared/accessors.h"
#include "kernel-shared/extent_io.h"
#include "kernel-shared/uapi/btrfs_tree.h"
+#include "kernel-shared/transaction.h"
struct btrfs_trans_handle;
@@ -173,6 +174,7 @@ int btrfs_insert_dir_item(struct btrfs_trans_handle *trans, struct btrfs_root
btrfs_set_dir_flags(leaf, dir_item, type);
btrfs_set_dir_data_len(leaf, dir_item, 0);
btrfs_set_dir_name_len(leaf, dir_item, name_len);
+ btrfs_set_dir_transid(leaf, dir_item, trans->transid);
name_ptr = (unsigned long)(dir_item + 1);
write_extent_buffer(leaf, name, name_ptr, name_len);
@@ -202,6 +204,7 @@ insert:
btrfs_set_dir_flags(leaf, dir_item, type);
btrfs_set_dir_data_len(leaf, dir_item, 0);
btrfs_set_dir_name_len(leaf, dir_item, name_len);
+ btrfs_set_dir_transid(leaf, dir_item, trans->transid);
name_ptr = (unsigned long)(dir_item + 1);
write_extent_buffer(leaf, name, name_ptr, name_len);
btrfs_mark_buffer_dirty(leaf);
--
2.44.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v2] btrfs-progs: set transid in btrfs_insert_dir_item
2024-07-22 13:33 [PATCH v2] btrfs-progs: set transid in btrfs_insert_dir_item Mark Harmstone
@ 2024-07-22 14:15 ` Josef Bacik
2024-07-22 23:03 ` Qu Wenruo
2024-07-29 22:35 ` David Sterba
2 siblings, 0 replies; 4+ messages in thread
From: Josef Bacik @ 2024-07-22 14:15 UTC (permalink / raw)
To: Mark Harmstone; +Cc: linux-btrfs
On Mon, Jul 22, 2024 at 02:33:02PM +0100, Mark Harmstone wrote:
> btrfs_insert_dir_item wasn't setting the transid field in
> btrfs_dir_item. Set it to the current transaction ID rather than writing
> uninitialized memory to disk.
>
> Signed-off-by: Mark Harmstone <maharmstone@fb.com>
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Thanks,
Josef
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2] btrfs-progs: set transid in btrfs_insert_dir_item
2024-07-22 13:33 [PATCH v2] btrfs-progs: set transid in btrfs_insert_dir_item Mark Harmstone
2024-07-22 14:15 ` Josef Bacik
@ 2024-07-22 23:03 ` Qu Wenruo
2024-07-29 22:35 ` David Sterba
2 siblings, 0 replies; 4+ messages in thread
From: Qu Wenruo @ 2024-07-22 23:03 UTC (permalink / raw)
To: Mark Harmstone, linux-btrfs
在 2024/7/22 23:03, Mark Harmstone 写道:
> btrfs_insert_dir_item wasn't setting the transid field in
> btrfs_dir_item. Set it to the current transaction ID rather than writing
> uninitialized memory to disk.
>
> Signed-off-by: Mark Harmstone <maharmstone@fb.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Thanks,
Qu
> ---
> kernel-shared/dir-item.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/kernel-shared/dir-item.c b/kernel-shared/dir-item.c
> index 4c62597b..5e7d09e6 100644
> --- a/kernel-shared/dir-item.c
> +++ b/kernel-shared/dir-item.c
> @@ -27,6 +27,7 @@
> #include "kernel-shared/accessors.h"
> #include "kernel-shared/extent_io.h"
> #include "kernel-shared/uapi/btrfs_tree.h"
> +#include "kernel-shared/transaction.h"
>
> struct btrfs_trans_handle;
>
> @@ -173,6 +174,7 @@ int btrfs_insert_dir_item(struct btrfs_trans_handle *trans, struct btrfs_root
> btrfs_set_dir_flags(leaf, dir_item, type);
> btrfs_set_dir_data_len(leaf, dir_item, 0);
> btrfs_set_dir_name_len(leaf, dir_item, name_len);
> + btrfs_set_dir_transid(leaf, dir_item, trans->transid);
> name_ptr = (unsigned long)(dir_item + 1);
>
> write_extent_buffer(leaf, name, name_ptr, name_len);
> @@ -202,6 +204,7 @@ insert:
> btrfs_set_dir_flags(leaf, dir_item, type);
> btrfs_set_dir_data_len(leaf, dir_item, 0);
> btrfs_set_dir_name_len(leaf, dir_item, name_len);
> + btrfs_set_dir_transid(leaf, dir_item, trans->transid);
> name_ptr = (unsigned long)(dir_item + 1);
> write_extent_buffer(leaf, name, name_ptr, name_len);
> btrfs_mark_buffer_dirty(leaf);
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2] btrfs-progs: set transid in btrfs_insert_dir_item
2024-07-22 13:33 [PATCH v2] btrfs-progs: set transid in btrfs_insert_dir_item Mark Harmstone
2024-07-22 14:15 ` Josef Bacik
2024-07-22 23:03 ` Qu Wenruo
@ 2024-07-29 22:35 ` David Sterba
2 siblings, 0 replies; 4+ messages in thread
From: David Sterba @ 2024-07-29 22:35 UTC (permalink / raw)
To: Mark Harmstone; +Cc: linux-btrfs
On Mon, Jul 22, 2024 at 02:33:02PM +0100, Mark Harmstone wrote:
> btrfs_insert_dir_item wasn't setting the transid field in
> btrfs_dir_item. Set it to the current transaction ID rather than writing
> uninitialized memory to disk.
>
> Signed-off-by: Mark Harmstone <maharmstone@fb.com>
Qu merged it to devel, thanks.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-07-29 22:35 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-22 13:33 [PATCH v2] btrfs-progs: set transid in btrfs_insert_dir_item Mark Harmstone
2024-07-22 14:15 ` Josef Bacik
2024-07-22 23:03 ` Qu Wenruo
2024-07-29 22:35 ` David Sterba
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.