George Amanakis 77f6826b83
Persistent L2ARC
This commit makes the L2ARC persistent across reboots. We implement
a light-weight persistent L2ARC metadata structure that allows L2ARC
contents to be recovered after a reboot. This significantly eases the
impact a reboot has on read performance on systems with large caches.

Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Reviewed-by: George Wilson <gwilson@delphix.com>
Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Co-authored-by: Saso Kiselkov <skiselkov@gmail.com>
Co-authored-by: Jorgen Lundman <lundman@lundman.net>
Co-authored-by: George Amanakis <gamanakis@gmail.com>
Ported-by: Yuxuan Shui <yshuiv7@gmail.com>
Signed-off-by: George Amanakis <gamanakis@gmail.com>
Closes #925 
Closes #1823 
Closes #2672 
Closes #3744 
Closes #9582
2020-04-10 10:33:35 -07:00
..
2018-05-13 18:59:02 -07:00
2020-04-01 10:02:06 -07:00
2020-04-10 10:33:35 -07:00
2020-02-11 13:19:12 -08:00
2019-12-11 11:58:37 -08:00
2020-01-14 10:11:07 -08:00
2020-03-18 13:31:10 -07:00
2019-12-11 11:58:37 -08:00
2020-04-01 10:02:06 -07:00
2020-04-01 10:02:06 -07:00
2020-03-06 09:28:19 -08:00
2019-05-08 10:59:32 -07:00
2019-03-15 14:14:31 -07:00
2020-04-10 10:33:35 -07:00
2020-03-04 15:07:11 -08:00
2020-03-04 15:07:11 -08:00
2020-04-10 10:33:35 -07:00