mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-12-24 18:39:34 +03:00
Remove shrink_dcache_memory() and shrink_icache_memory()
This functionality is optional and until Linux 3.0, which provided per-filesystem shinkers, they was never a reasonable interface. Therefore, this functionality is being dropped for earlier kernels. Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Issue #2757
This commit is contained in:
parent
60bba62814
commit
050d22b068
@ -288,34 +288,18 @@ zpl_prune_sb(struct super_block *sb, void *arg)
|
||||
error = -zfs_sb_prune(sb, *(unsigned long *)arg, &objects);
|
||||
ASSERT3S(error, <=, 0);
|
||||
}
|
||||
#endif /* HAVE_SHRINK */
|
||||
|
||||
void
|
||||
zpl_prune_sbs(int64_t bytes_to_scan, void *private)
|
||||
{
|
||||
#ifdef HAVE_SHRINK
|
||||
unsigned long nr_to_scan = (bytes_to_scan / sizeof (znode_t));
|
||||
|
||||
iterate_supers_type(&zpl_fs_type, zpl_prune_sb, &nr_to_scan);
|
||||
kmem_reap();
|
||||
}
|
||||
#else
|
||||
/*
|
||||
* Linux 2.6.x - 3.0 API
|
||||
*
|
||||
* These are best effort interfaces are provided by the SPL to induce
|
||||
* the Linux VM subsystem to reclaim a fraction of the both dnode and
|
||||
* inode caches. Ideally, we want to just target the zfs file systems
|
||||
* however our only option is to reclaim from them all.
|
||||
*/
|
||||
void
|
||||
zpl_prune_sbs(int64_t bytes_to_scan, void *private)
|
||||
{
|
||||
unsigned long nr_to_scan = (bytes_to_scan / sizeof (znode_t));
|
||||
|
||||
shrink_dcache_memory(nr_to_scan, GFP_KERNEL);
|
||||
shrink_icache_memory(nr_to_scan, GFP_KERNEL);
|
||||
kmem_reap();
|
||||
}
|
||||
#endif /* HAVE_SHRINK */
|
||||
}
|
||||
|
||||
#ifdef HAVE_NR_CACHED_OBJECTS
|
||||
static int
|
||||
|
Loading…
Reference in New Issue
Block a user