mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 02:27:36 +03:00
Let default arc_c_max be platform dependent
Linux changed the default max ARC size to 1/2 of physical memory to deal with shortcomings of the Linux SLUB allocator. Other platforms do not require the same logic. Implement an arc_default_max() function to determine a default max ARC size in platform code. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Ryan Moeller <ryan@iXsystems.com> Closes #10155
This commit is contained in:
@@ -60,6 +60,16 @@
|
||||
int64_t last_free_memory;
|
||||
free_memory_reason_t last_free_reason;
|
||||
|
||||
/*
|
||||
* Return a default max arc size based on the amount of physical memory.
|
||||
*/
|
||||
uint64_t
|
||||
arc_default_max(uint64_t min, uint64_t allmem)
|
||||
{
|
||||
/* Default to 1/2 of all memory. */
|
||||
return (MAX(allmem / 2, min));
|
||||
}
|
||||
|
||||
#ifdef _KERNEL
|
||||
/*
|
||||
* Return maximum amount of memory that we could possibly use. Reduced
|
||||
|
||||
Reference in New Issue
Block a user