]> git.proxmox.com Git - mirror_zfs.git/commitdiff
Fix wrong offset args in vdev_cache_write
authorChunwei Chen <tuxoko@gmail.com>
Tue, 28 Mar 2017 18:06:22 +0000 (11:06 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 28 Mar 2017 18:06:22 +0000 (11:06 -0700)
The offset arguments is wrong when changing to abd_copy_off in a6255b7

Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Gvozden Neskovic <neskovic@gmail.com>
Signed-off-by: Chunwei Chen <david.chen@osnexus.com>
Closes #5932
Closes #5936

module/zfs/vdev_cache.c

index ec701097bde16b8f4ec2510524060d6cd2fa4a38..7317373b8a02cbb8aa931300087e8ead1fe30bc8 100644 (file)
@@ -355,8 +355,9 @@ vdev_cache_write(zio_t *zio)
                if (ve->ve_fill_io != NULL) {
                        ve->ve_missed_update = 1;
                } else {
-                       abd_copy_off(ve->ve_abd, zio->io_abd, start - io_start,
-                           start - ve->ve_offset, end - start);
+                       abd_copy_off(ve->ve_abd, zio->io_abd,
+                           start - ve->ve_offset, start - io_start,
+                           end - start);
                }
                ve = AVL_NEXT(&vc->vc_offset_tree, ve);
        }