Files
mirror_zfs/module/zfs
Chunwei Chen c82eb27b22 ZFS send should use spill block prefetched from send_reader_thread
Currently, even though send_reader_thread prefetches spill block,
do_dump() will not use it and issues its own blocking arc_read. This
causes significant performance degradation when sending datasets with
lots of spill blocks.

For unmodified spill blocks, we also create send_range struct for them
in send_reader_thread and issue prefetches for them. We piggyback them
on the dnode send_range instead of enqueueing them so we don't break
send_range_after check.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Signed-off-by: Chunwei Chen <david.chen@nutanix.com>
Co-authored-by: david.chen <david.chen@nutanix.com>
Closes #16701
2024-11-06 11:54:32 -08:00
..
2024-09-14 13:47:59 -07:00
2022-03-15 15:13:42 -07:00
2023-01-10 13:39:22 -08:00
2024-09-14 13:47:59 -07:00
2024-11-04 16:46:39 -08:00
2024-09-04 14:17:02 -07:00
2024-08-16 12:03:35 -07:00
2024-05-29 10:49:11 -07:00
2024-11-04 16:46:39 -08:00
2024-10-02 20:47:11 -07:00
2024-11-04 16:46:39 -08:00
2024-11-04 16:46:39 -08:00
2023-03-14 15:59:58 -07:00
2023-06-09 10:12:52 -07:00
2022-03-15 15:13:42 -07:00
2022-01-12 16:14:36 -08:00
2024-04-09 16:23:19 -07:00
2019-06-19 09:48:12 -07:00
2022-03-15 15:13:42 -07:00
2023-11-08 10:19:41 -08:00
2024-09-14 13:47:59 -07:00
2024-09-14 13:47:59 -07:00
2024-10-02 20:47:11 -07:00
2023-03-14 15:25:50 -07:00
2022-09-02 13:31:19 -07:00
2024-05-29 10:49:11 -07:00
2024-09-14 13:47:59 -07:00
2022-11-29 09:26:03 -08:00