1.\" 2.\" Copyright (c) 2007 Xin LI 3.\" All rights reserved. 4.\" 5.\" Redistribution and use in source and binary forms, with or without 6.\" modification, are permitted provided that the following conditions 7.\" are met: 8.\" 1. Redistributions of source code must retain the above copyright 9.\" notice, this list of conditions and the following disclaimer. 10.\" 2. Redistributions in binary form must reproduce the above copyright 11.\" notice, this list of conditions and the following disclaimer in the 12.\" documentation and/or other materials provided with the distribution. 13.\" 3. The name of the author may not be used to endorse or promote products 14.\" derived from this software without specific prior written permission 15.\" 16.\" THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 17.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 18.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 19.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 20.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 21.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 22.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 23.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 24.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 25.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26.\" 27.\" $FreeBSD: src/share/man/man5/tmpfs.5,v 1.7 2010/01/29 15:11:50 jh Exp $ 28.\" 29.Dd February 2, 2010 30.Dt TMPFS 5 31.Os 32.Sh NAME 33.Nm tmpfs 34.Nd "efficient memory file system" 35.Sh SYNOPSIS 36To compile this driver into the kernel, 37place the following line in your 38kernel configuration file: 39.Bd -ragged -offset indent 40.Cd "options TMPFS" 41.Ed 42.Pp 43Alternatively, to load the driver as a 44module at boot time, place the following line in 45.Xr loader.conf 5 : 46.Bd -literal -offset indent 47tmpfs_load="YES" 48.Ed 49.Sh OPTIONS 50The following options are available when 51mounting 52.Nm 53file systems: 54.Bl -tag -width indent 55.It Cm gid 56root group id. 57.It Cm uid 58root user id. 59.It Cm mode 60permissions in octal format. 61.It Cm inodes 62maximum number of inodes. 63.It Cm size 64maximum size (in bytes) for the file system. 65.It Cm maxfilesize 66maximum file size (in bytes). 67.El 68.Sh DESCRIPTION 69In the 70.Dx 71implementation, 72.Nm 73filesystems are backed by swap space. 74Only memory pressure will cause data to be backed to swap. 75Normal filesystem operations such as fsync(), buffer cache flushing, 76and vnode recycling have no effect. 77.Pp 78.Nm 79stores meta-data in wired kernel memory. 80Meta-data is not backed by swap so care must be taken if using 81.Nm 82to store large numbers of small files. 83.Pp 84It is recommended that a large amount of swap space be reserved on modern 85.Dx 86platforms to accommodate 87.Nm 88and other subsystems. 8932-bit kernels can accommodate 32G of swap by default while 64-bit kernels 90can accommodate 512G of swap by default. 91These defaults can be increased though it should be noted that 32-bit 92kernels are ultimately limited by the amount of KVM available in its 93small 32-bit address space. 94.Pp 95.Nm 96will allocate and deallocate swap backing store on the fly based on usage. 97By default 98.Nm 99allows up to 100% of swap space to be used. 100If this is not desirable then the size option should be used to limit 101its size. 102.Sh EXAMPLES 103To mount a 104.Nm 105memory file system: 106.Pp 107.Dl "mount -t tmpfs tmpfs /tmp" 108.Sh SEE ALSO 109.Xr fstab 5 , 110.Xr mount_tmpfs 8 , 111.Xr swapcache 8 112.Sh HISTORY 113The 114.Nm 115driver first appeared in 116.Dx 2.5.1 . 117.Sh AUTHORS 118.An -nosplit 119The 120.Nm 121kernel implementation was written by 122.An Julio M. Merino Vidal Aq jmmv@NetBSD.org 123as a Google SoC project. 124.Pp 125.An Rohit Jalan 126and others ported it from 127.Nx 128to 129.Fx . 130.Pp 131.An Naoya Sugioka 132and others ported it from 133.Nx 134to 135.Dx . 136.Pp 137This manual page was written by 138.An Xin LI Aq delphij@FreeBSD.org . 139.Sh BUGS 140Hopefully not. 141