Memory pages not released by the filesystem after a truncate

Houssem Daoud houssem.daoud at
Tue Jul 12 17:16:20 EDT 2016

The situation is as follows:

Filesystem inactive pages are consuming all the available memory and 
only 100 MB is left to the system.

The network driver, which allocates memory objects for Jumbo frames, 
needs more than 100 MB to run correctly.  If a burst of networks packets 
arrive together, the available memory is fully consumed and the new 
packets are dropped.

This situation wouldn't happen if the "useless" pages of the filesystem 
were released just after the truncate operation.

What is the point of keeping truncated pages in memory ? Is that a 
choice made by the kernel developers or there is something wrong with 
the filesystem implementation ?

On 16-07-06 12:29 PM, Mulyadi Santosa wrote:
> Hi
> Trying to help here:
> You said you wanna do atomic allocation. But then you said you want to 
> allocate around ~100 MB contiguous memory region.
> IIRC, if you want to do atomic allocation, usually it can not be that 
> big. I am not sure how large, but surely not reaching 100 MB. For that 
> size, I think you should rely on vmalloc.
> But, for clarification, maybe you should also post your full content 
> of  /proc/buddyinfo and /proc/meminfo
> -- 
> regards,
> Mulyadi Santosa
> Freelance Linux trainer and consultant
> blog: <>
> training: 
> <>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at

-------------- next part --------------
An HTML attachment was scrubbed...

More information about the Kernelnewbies mailing list