Subject : tmpfs error

Solution Description:
=====================

통상 tmp file system 곤련하여
"Memory allocation failed, tmpfs over memory limit" 또는 
"File system full, memory allocation failed"등의 error message 유형을 
분석하였을 때 swap의 사용공간이 충분히 남아 있는 경우를 알게된다.

이것은 file을 open할 때 swap space에서 이루어지는게 아니라 memory에서
이루어지기 때문이다. 그러므로 swap size를 늘리는 것은 의미가 없다. 
원래 physical memory가 충분하지 못하다면 tmpf로 mount하는 것은 의미가
없다. memory를 더 늘려주거나 대신에 /tmp를 ufs file system으로 놔두는 게 
효과적이다.
반면에 "File system full, swap space limit exceeded" error message가 
발생하면 swap space를 늘려주면 해결될 것이다.
tmpfs를 사용한다는 것은 virtual memory(swap)에 mount하여 사용한다는 것이다.
그러므로 빠른 file I/O를 기대한다면 효과적이다. 하지만 그만큼 swap공간을
차지한다. 그래서 tmpfs size를 제한할 수 있다.
예를들어 mount option 으로 -o size=SZ, 또는 
tmpfs_minfree(tmpfs로 사용할 수 없는 swap space의 page수를 set)라는 
kernel 변수값으로 제한할수 있다. 


----------------------------------------------------------------------------

Revision History

작성일자 : 97.03.01
작성자 : 이민호

수정일자 :
수정자 :