kernel-ark/fs
Ollie Wild b6a2fea393 mm: variable length argument support
Remove the arg+env limit of MAX_ARG_PAGES by copying the strings directly from
the old mm into the new mm.

We create the new mm before the binfmt code runs, and place the new stack at
the very top of the address space.  Once the binfmt code runs and figures out
where the stack should be, we move it downwards.

It is a bit peculiar in that we have one task with two mm's, one of which is
inactive.

[a.p.zijlstra@chello.nl: limit stack size]
Signed-off-by: Ollie Wild <aaw@google.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: <linux-arch@vger.kernel.org>
Cc: Hugh Dickins <hugh@veritas.com>
[bunk@stusta.de: unexport bprm_mm_init]
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-19 10:04:45 -07:00
..
9p 9p: fix debug compilation error 2007-07-16 16:03:25 -05:00
adfs sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
affs sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
afs AFS: drop explicit extern 2007-07-16 09:05:43 -07:00
autofs
autofs4
befs Remove SLAB_CTOR_CONSTRUCTOR 2007-05-17 05:23:04 -07:00
bfs sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
cifs Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6 2007-07-19 00:38:57 +00:00
coda wrong order of arguments of ->readdir() 2007-07-15 16:40:51 -07:00
configfs configfs: config item dependancies. 2007-07-10 17:18:59 -07:00
cramfs
debugfs debugfs: remove rmdir() non-empty complaint 2007-07-18 15:49:48 -07:00
devpts
dlm configfs: Convert subsystem semaphore to mutex 2007-07-10 17:10:56 -07:00
ecryptfs eCryptfs: ecryptfs_setattr() bugfix 2007-07-19 10:04:43 -07:00
efs knfsd: exportfs: remove iget abuse 2007-07-17 10:23:06 -07:00
exportfs knfsd: exportfs: split out reconnecting a dentry from find_exported_dentry 2007-07-17 10:23:06 -07:00
ext2 Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
ext3 readahead: split ondemand readahead interface into two functions 2007-07-19 10:04:44 -07:00
ext4 readahead: split ondemand readahead interface into two functions 2007-07-19 10:04:44 -07:00
fat knfsd: exportfs: add exportfs.h header 2007-07-17 10:23:06 -07:00
freevxfs vxfs warning fixes 2007-07-16 09:05:41 -07:00
fuse sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
gfs2 mm: fault feedback #2 2007-07-19 10:04:41 -07:00
hfs sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
hfsplus Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
hostfs sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
hpfs sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
hppfs
hugetlbfs hugetlbfs: handle empty options string 2007-07-16 09:05:46 -07:00
isofs knfsd: exportfs: add exportfs.h header 2007-07-17 10:23:06 -07:00
jbd is_power_of_2(): jbd 2007-07-16 09:05:48 -07:00
jbd2 jbd2: Fix CONFIG_JBD_DEBUG ifdef to be CONFIG_JBD2_DEBUG 2007-07-18 08:57:06 -04:00
jffs2 Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
jfs Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
lockd knfsd: lockd: nfsd4: use same grace period for lockd and nfsd4 2007-07-17 10:23:07 -07:00
minix sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
msdos
ncpfs mm: fault feedback #1 2007-07-19 10:04:41 -07:00
nfs locks: make posix_test_lock() interface more consistent 2007-07-18 19:17:19 -04:00
nfs_common
nfsd locks: rename lease functions to reflect locks.c conventions 2007-07-18 19:14:12 -04:00
nls NLS: Remove obsolete Makefile entries 2007-07-16 09:05:52 -07:00
ntfs knfsd: exportfs: add exportfs.h header 2007-07-17 10:23:06 -07:00
ocfs2 mm: fault feedback #1 2007-07-19 10:04:41 -07:00
openpromfs Remove SLAB_CTOR_CONSTRUCTOR 2007-05-17 05:23:04 -07:00
partitions Fix LDM for new field in the VOL5 VBLK. 2007-07-16 12:01:30 -07:00
proc Avoid too many remote cpu references due to /proc/stat 2007-07-19 10:04:43 -07:00
qnx4 sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
ramfs Add __GFP_MOVABLE for callers to flag allocations from high memory that may be migrated 2007-07-17 10:22:59 -07:00
reiserfs Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
romfs Remove SLAB_CTOR_CONSTRUCTOR 2007-05-17 05:23:04 -07:00
smbfs sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
sysfs sysfs: cosmetic clean up on node creation failure paths 2007-07-18 15:49:50 -07:00
sysv sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
udf UDF: coding style conversion - lindent 2007-07-19 10:04:43 -07:00
ufs is_power_of_2: ufs/super.c 2007-07-16 09:05:50 -07:00
vfat
xfs mm: fault feedback #1 2007-07-19 10:04:41 -07:00
aio.c
anon_inodes.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm 2007-07-17 11:50:26 -07:00
attr.c Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
bad_inode.c sendfile: remove bad_sendfile() from bad_file_ops 2007-07-10 08:04:15 +02:00
binfmt_aout.c
binfmt_elf_fdpic.c mm: variable length argument support 2007-07-19 10:04:45 -07:00
binfmt_elf.c mm: variable length argument support 2007-07-19 10:04:45 -07:00
binfmt_em86.c
binfmt_flat.c nommu: report correct errno in message 2007-06-08 17:23:32 -07:00
binfmt_misc.c mm: variable length argument support 2007-07-19 10:04:45 -07:00
binfmt_script.c mm: variable length argument support 2007-07-19 10:04:45 -07:00
binfmt_som.c
bio.c unexport bio_{,un}map_user 2007-07-10 08:03:34 +02:00
block_dev.c bd_claim_by_disk: fix warning 2007-07-16 09:05:50 -07:00
buffer.c fs: introduce some page/buffer invariants 2007-07-17 10:23:02 -07:00
char_dev.c unregister_chrdev() return void 2007-07-19 10:04:43 -07:00
compat_ioctl.c compat32: ignore the LOOP_CLR_FD ioctl 2007-07-16 09:05:52 -07:00
compat.c mm: variable length argument support 2007-07-19 10:04:45 -07:00
dcache.c mm: clean up and kernelify shrinker registration 2007-07-17 10:23:00 -07:00
dcookies.c
direct-io.c dio: remove bogus refcounting BUG_ON 2007-07-03 18:23:23 -07:00
dnotify.c
dquot.c mm: clean up and kernelify shrinker registration 2007-07-17 10:23:00 -07:00
drop_caches.c invalidate_mapping_pages(): add cond_resched 2007-07-16 09:05:36 -07:00
eventfd.c eventfd use waitqueue lock ... 2007-05-18 13:09:34 -07:00
eventpoll.c epoll: move kfree inside ep_free 2007-05-15 08:54:00 -07:00
exec.c mm: variable length argument support 2007-07-19 10:04:45 -07:00
fcntl.c Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
fifo.c Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00
file_table.c
file.c
filesystems.c
fs-writeback.c
generic_acl.c Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
inode.c mm: clean up and kernelify shrinker registration 2007-07-17 10:23:00 -07:00
inotify_user.c
inotify.c
internal.h
ioctl.c drop obsolete sys_ioctl export 2007-07-16 09:05:48 -07:00
ioprio.c
Kconfig jbd2: Move jbd2-debug file to debugfs 2007-07-18 08:50:18 -04:00
Kconfig.binfmt fs: Kill sh dependency for binfmt_flat. 2007-05-21 14:34:00 +09:00
libfs.c
locks.c locks: fix vfs_test_lock() comment 2007-07-18 19:17:19 -04:00
Makefile
mbcache.c mm: clean up and kernelify shrinker registration 2007-07-17 10:23:00 -07:00
mpage.c
namei.c Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
namespace.c fs/namespace.c should #include "internal.h" 2007-07-16 09:05:50 -07:00
nfsctl.c
no-block.c
open.c sys_fallocate() implementation on i386, x86_64 and powerpc 2007-07-17 21:42:44 -04:00
pipe.c pipe: add documentation and comments 2007-07-10 08:04:16 +02:00
pnode.c
pnode.h
posix_acl.c
quota_v1.c
quota_v2.c
quota.c diskquota: 32bit quota tools on 64bit architectures 2007-07-16 09:05:48 -07:00
read_write.c Remove remnants of sendfile() 2007-07-10 08:04:15 +02:00
read_write.h
readdir.c
select.c
seq_file.c seq_file: more atomicity in traverse() 2007-07-16 09:05:45 -07:00
signalfd.c avoid spurious POLLIN returns in signalfd 2007-06-28 11:34:54 -07:00
splice.c readahead: split ondemand readahead interface into two functions 2007-07-19 10:04:44 -07:00
stack.c
stat.c
super.c hugetlbfs: handle empty options string 2007-07-16 09:05:46 -07:00
sync.c Introduce fixed sys_sync_file_range2() syscall, implement on PowerPC and ARM 2007-06-28 11:38:30 -07:00
timerfd.c timerfd use waitqueue lock ... 2007-05-18 13:09:34 -07:00
utimes.c Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
xattr_acl.c
xattr.c Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00