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

Reply via email to