Merge to Fedora kernel-2.6.18-1.2260_FC5 patched with stable patch-2.6.18.5-vs2.0...
authorMarc Fiuczynski <mef@cs.princeton.edu>
Fri, 29 Dec 2006 02:21:54 +0000 (02:21 +0000)
committerMarc Fiuczynski <mef@cs.princeton.edu>
Fri, 29 Dec 2006 02:21:54 +0000 (02:21 +0000)
Makefile
arch/i386/kernel/sysenter.c
fs/Kconfig
fs/Makefile
fs/squashfs/Makefile [new file with mode: 0644]
scripts/kernel-2.6-planetlab.spec

index bdbcae0..b2e0c3c 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 VERSION = 2
 PATCHLEVEL = 6
 SUBLEVEL = 18
-EXTRAVERSION = -1.2257_FC5.0
+EXTRAVERSION = -1.2260_FC5.0
 NAME=Avast! A bilge rat!
 
 # *DOCUMENTATION*
index 0cc7b29..765af04 100644 (file)
@@ -16,6 +16,7 @@
 #include <linux/string.h>
 #include <linux/elf.h>
 #include <linux/mm.h>
+#include <linux/mman.h>
 #include <linux/module.h>
 #include <linux/vs_base.h>
 #include <linux/vs_memory.h>
index 75b7c07..e9f181d 100644 (file)
@@ -1285,6 +1285,71 @@ config CRAMFS
 
          If unsure, say N.
 
+config SQUASHFS
+       tristate "SquashFS 3.0 - Squashed file system support"
+       select ZLIB_INFLATE
+       help
+         Saying Y here includes support for SquashFS 3.0 (a Compressed Read-Only File
+         System).  Squashfs is a highly compressed read-only filesystem for Linux.
+         It uses zlib compression to compress both files, inodes and directories.
+         Inodes in the system are very small and all blocks are packed to minimise
+         data overhead. Block sizes greater than 4K are supported up to a maximum of 64K.
+         SquashFS 3.0 supports 64 bit filesystems and files (larger than 4GB), full
+         uid/gid information, hard links and timestamps.
+
+         Squashfs is intended for general read-only filesystem use, for archival
+         use (i.e. in cases where a .tar.gz file may be used), and in embedded
+         systems where low overhead is needed.  Further information and filesystem tools
+         are available from http://squashfs.sourceforge.net.
+
+         If you want to compile this as a module ( = code which can be
+         inserted in and removed from the running kernel whenever you want),
+         say M here and read <file:Documentation/modules.txt>.  The module
+         will be called squashfs.  Note that the root file system (the one
+         containing the directory /) cannot be compiled as a module.
+
+         If unsure, say N.
+
+config SQUASHFS_EMBEDDED
+
+       bool "Additional options for memory-constrained systems"
+       depends on SQUASHFS
+       default n
+       help
+         Saying Y here allows you to specify cache sizes and how Squashfs
+         allocates memory.  This is only intended for memory constrained
+         systems.
+
+         If unsure, say N.
+
+config SQUASHFS_FRAGMENT_CACHE_SIZE
+       int "Number of fragments cached" if SQUASHFS_EMBEDDED
+       depends on SQUASHFS
+       default "3"
+       help
+         By default SquashFS caches the last 3 fragments read from
+         the filesystem.  Increasing this amount may mean SquashFS
+         has to re-read fragments less often from disk, at the expense
+         of extra system memory.  Decreasing this amount will mean
+         SquashFS uses less memory at the expense of extra reads from disk.
+
+         Note there must be at least one cached fragment.  Anything
+         much more than three will probably not make much difference.
+
+config SQUASHFS_VMALLOC
+       bool "Use Vmalloc rather than Kmalloc" if SQUASHFS_EMBEDDED
+       depends on SQUASHFS
+       default n
+       help
+         By default SquashFS uses kmalloc to obtain fragment cache memory.
+         Kmalloc memory is the standard kernel allocator, but it can fail
+         on memory constrained systems.  Because of the way Vmalloc works,
+         Vmalloc can succeed when kmalloc fails.  Specifying this option
+         will make SquashFS always use Vmalloc to allocate the
+         fragment cache memory.
+
+         If unsure, say N.
+
 config VXFS_FS
        tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
        help
index e5efb4b..970aed3 100644 (file)
@@ -58,6 +58,7 @@ obj-$(CONFIG_EXT3_FS)         += ext3/ # Before ext2 so root fs can be ext3
 obj-$(CONFIG_JBD)              += jbd/
 obj-$(CONFIG_EXT2_FS)          += ext2/
 obj-$(CONFIG_CRAMFS)           += cramfs/
+obj-$(CONFIG_SQUASHFS)         += squashfs/
 obj-$(CONFIG_RAMFS)            += ramfs/
 obj-$(CONFIG_HUGETLBFS)                += hugetlbfs/
 obj-$(CONFIG_CODA_FS)          += coda/
diff --git a/fs/squashfs/Makefile b/fs/squashfs/Makefile
new file mode 100644 (file)
index 0000000..1bc7b06
--- /dev/null
@@ -0,0 +1,7 @@
+#
+# Makefile for the linux squashfs routines.
+#
+
+obj-$(CONFIG_SQUASHFS) += squashfs.o
+squashfs-y += inode.o
+squashfs-y += squashfs2_0.o
index 75a38f8..2d5b389 100644 (file)
@@ -5,7 +5,7 @@ Summary: The Linux kernel (the core of the Linux operating system)
 
 %define buildup 1
 %define buildsmp 1
-%define builduml 1
+%define builduml 0
 %define buildxen 1
 %define builddoc 1
 
@@ -20,7 +20,7 @@ Summary: The Linux kernel (the core of the Linux operating system)
 %define sublevel 18
 %define kversion 2.6.%{sublevel}
 %define rpmversion 2.6.%{sublevel}
-%define release 1.2257_FC5.1%{?pldistro:.%{pldistro}}%{?date:.%{date}}
+%define release 1.2260_FC5.0%{?pldistro:.%{pldistro}}%{?date:.%{date}}
 %define signmodules 0
 %define make_target bzImage
 %define kernel_arch i386