What happened in UBIFS during drop cache?

來源:互聯網
上載者:User

標籤:

Today I want to know what happend in UBIFS during drop cache. 

Drop cache is part of sysctl, you can get the details from Documentation/sysctl/vm.txt as below:

drop_caches

Writing to this will cause the kernel to drop clean caches, dentries and
inodes from memory, causing that memory to become free.

To free pagecache:
echo 1 > /proc/sys/vm/drop_caches
To free dentries and inodes:
echo 2 > /proc/sys/vm/drop_caches
To free pagecache, dentries and inodes:
echo 3 > /proc/sys/vm/drop_caches

As this is a non-destructive operation and dirty objects are not freeable, the
user should run `sync‘ first.

==============================================================

 

After echo N > /proc/sys/vm/drop_caches, kernel will call function drop_caches_sysctl_handler, this is the top interface to drop caches:

 1 int drop_caches_sysctl_handler(ctl_table *table, int write, 2     void __user *buffer, size_t *length, loff_t *ppos) 3 { 4     int ret; 5  6     ret = proc_dointvec_minmax(table, write, buffer, length, ppos); 7     if (ret) 8         return ret; 9     if (write) {                                                                                                                                                                             10         if (sysctl_drop_caches & 1)11             iterate_supers(drop_pagecache_sb, NULL);12         if (sysctl_drop_caches & 2)13             drop_slab();14     }   15     return 0;16 }
fs/drop_caches.c

 

drop_slab will call all the shrinkers to free memory, like ubifs_shrinker.

In ubifs_shinker, will free the znodes and tnc tree. Details please refer to ubifs_shrinker in fs/ubifs/shrinker.c.

Author: Marty

Date: 2016-8-24

The end.

 

What happened in UBIFS during drop cache?

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.