Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Mar 2019 07:46:20 +0000 (UTC)
From:      Allan Jude <allanjude@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r345491 - in head/sys: conf fs/tmpfs modules/tmpfs
Message-ID:  <201903250746.x2P7kKUu019786@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: allanjude
Date: Mon Mar 25 07:46:20 2019
New Revision: 345491
URL: https://svnweb.freebsd.org/changeset/base/345491

Log:
  Make TMPFS_PAGES_MINRESERVED a kernel option
  
  TMPFS_PAGES_MINRESERVED controls how much memory is reserved for the system
  and not used by tmpfs.
  
  On very small memory systems, the default value may be too high and this
  prevents these small memory systems from using reroot, which is required
  for them to install firmware updates.
  
  Submitted by:	Hiroki Mori <yamori813@yahoo.co.jp>
  Reviewed by:	mizhka
  Differential Revision:	https://reviews.freebsd.org/D13583

Modified:
  head/sys/conf/options
  head/sys/fs/tmpfs/tmpfs.h
  head/sys/fs/tmpfs/tmpfs_vfsops.c
  head/sys/modules/tmpfs/Makefile

Modified: head/sys/conf/options
==============================================================================
--- head/sys/conf/options	Mon Mar 25 01:18:26 2019	(r345490)
+++ head/sys/conf/options	Mon Mar 25 07:46:20 2019	(r345491)
@@ -640,6 +640,9 @@ NFS_MINDIRATTRTIMO	opt_nfs.h
 NFS_MAXDIRATTRTIMO	opt_nfs.h
 NFS_DEBUG		opt_nfs.h
 
+# TMPFS options
+TMPFS_PAGES_MINRESERVED		opt_tmpfs.h
+
 # For the Bt848/Bt848A/Bt849/Bt878/Bt879 driver
 OVERRIDE_CARD			opt_bktr.h
 OVERRIDE_TUNER			opt_bktr.h

Modified: head/sys/fs/tmpfs/tmpfs.h
==============================================================================
--- head/sys/fs/tmpfs/tmpfs.h	Mon Mar 25 01:18:26 2019	(r345490)
+++ head/sys/fs/tmpfs/tmpfs.h	Mon Mar 25 07:46:20 2019	(r345491)
@@ -487,7 +487,9 @@ struct tmpfs_dirent *tmpfs_dir_next(struct tmpfs_node 
  * Amount of memory pages to reserve for the system (e.g., to not use by
  * tmpfs).
  */
+#if !defined(TMPFS_PAGES_MINRESERVED)
 #define TMPFS_PAGES_MINRESERVED		(4 * 1024 * 1024 / PAGE_SIZE)
+#endif
 
 size_t tmpfs_mem_avail(void);
 

Modified: head/sys/fs/tmpfs/tmpfs_vfsops.c
==============================================================================
--- head/sys/fs/tmpfs/tmpfs_vfsops.c	Mon Mar 25 01:18:26 2019	(r345490)
+++ head/sys/fs/tmpfs/tmpfs_vfsops.c	Mon Mar 25 07:46:20 2019	(r345491)
@@ -42,6 +42,9 @@
  * memory-specific data structures and algorithms to automatically
  * allocate and release resources.
  */
+
+#include "opt_tmpfs.h"
+
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 

Modified: head/sys/modules/tmpfs/Makefile
==============================================================================
--- head/sys/modules/tmpfs/Makefile	Mon Mar 25 01:18:26 2019	(r345490)
+++ head/sys/modules/tmpfs/Makefile	Mon Mar 25 07:46:20 2019	(r345491)
@@ -4,6 +4,6 @@
 
 KMOD=	tmpfs
 SRCS=	vnode_if.h \
-	tmpfs_vnops.c tmpfs_fifoops.c tmpfs_vfsops.c tmpfs_subr.c
+	tmpfs_vnops.c tmpfs_fifoops.c tmpfs_vfsops.c tmpfs_subr.c opt_tmpfs.h
 
 .include <bsd.kmod.mk>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201903250746.x2P7kKUu019786>