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 <yamori...@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>
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to