aboutsummaryrefslogtreecommitdiffstats
path: root/module/zfs/aggsum.c
diff options
context:
space:
mode:
authorPaul Dagnelie <[email protected]>2020-12-10 14:09:23 -0800
committerGitHub <[email protected]>2020-12-10 14:09:23 -0800
commit60a4c7d2a2f8e8123e3c2e45d1773b5849f74b16 (patch)
tree6b524ac39fb098004ed115ff9fc14b10350d28a4 /module/zfs/aggsum.c
parentf483daa870e7d129ea988f976429e1210e8aa2e6 (diff)
Implement memory and CPU hotplug
ZFS currently doesn't react to hotplugging cpu or memory into the system in any way. This patch changes that by adding logic to the ARC that allows the system to take advantage of new memory that is added for caching purposes. It also adds logic to the taskq infrastructure to support dynamically expanding the number of threads allocated to a taskq. Reviewed-by: Brian Behlendorf <[email protected]> Co-authored-by: Matthew Ahrens <[email protected]> Co-authored-by: Brian Behlendorf <[email protected]> Signed-off-by: Paul Dagnelie <[email protected]> Closes #11212
Diffstat (limited to 'module/zfs/aggsum.c')
-rw-r--r--module/zfs/aggsum.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/module/zfs/aggsum.c b/module/zfs/aggsum.c
index e38f4a66c..e46da95f6 100644
--- a/module/zfs/aggsum.c
+++ b/module/zfs/aggsum.c
@@ -70,6 +70,11 @@
* zeroing out the borrowed value (forcing that thread to borrow on its next
* request, which will also be expensive). This is what makes aggsums well
* suited for write-many read-rarely operations.
+ *
+ * Note that the aggsums do not expand if more CPUs are hot-added. In that
+ * case, we will have less fanout than boot_ncpus, but we don't want to always
+ * reserve the RAM necessary to create the extra slots for additional CPUs up
+ * front, and dynamically adding them is a complex task.
*/
/*