The code we added to show it was happening was:
```
@@ -976,7 +976,8 @@ vdev_raidz_reconstruct_q(raidz_map_t *rm, int *tgts, int ntg
ts)
dst = rm->rm_col[x].rc_abd;
if (c == rm->rm_firstdatacol) {
- abd_copy(dst, src, size);
+ if (dst != src)
+ abd_copy(dst, src, size);
```
```
@@ -1069,6 +1069,10 @@ abd_iterate_func2(abd_t *dabd, abd_t *sabd, size_t doff,
size_t soff,
int ret = 0;
struct abd_iter daiter, saiter;
+ if (dabd == sabd) {
+ printf("dabd and sabd are equal\n");
+ return 0;
+ }
```
Technically both changes fixes the same problem.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/commit/4ee0199ec059ca9417a72125beae8d89fbc5a9df#commitcomment-21956498
------------------------------------------
openzfs-developer
Archives: https://openzfs.topicbox-beta.com/groups/developer/
Powered by Topicbox: https://topicbox-beta.com