diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-08-07 17:13:14 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-08-07 17:13:14 +0300 |
commit | e9d488c3114acb6a0a93e99c02f9cd1d656f46c7 (patch) | |
tree | b0342f47b8bb8fa6af3a6d1416e9881ccdb00144 /fs/internal.h | |
parent | 337684a1746f93ae107e05d90977b070bb7e39d8 (diff) | |
parent | 4af75df6a410ce76d9f60f27b07e5645ecc2c5ed (diff) | |
download | linux-e9d488c3114acb6a0a93e99c02f9cd1d656f46c7.tar.xz |
Merge tag 'binfmt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/binfmt_misc
Pull binfmt_misc update from James Bottomley:
"This update is to allow architecture emulation containers to function
such that the emulation binary can be housed outside the container
itself. The container and fs parts both have acks from relevant
experts.
To use the new feature you have to add an F option to your binfmt_misc
configuration"
From the docs:
"The usual behaviour of binfmt_misc is to spawn the binary lazily when
the misc format file is invoked. However, this doesn't work very well
in the face of mount namespaces and changeroots, so the F mode opens
the binary as soon as the emulation is installed and uses the opened
image to spawn the emulator, meaning it is always available once
installed, regardless of how the environment changes"
* tag 'binfmt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/binfmt_misc:
binfmt_misc: add F option description to documentation
binfmt_misc: add persistent opened binary handler for containers
fs: add filp_clone_open API
Diffstat (limited to 'fs/internal.h')
-rw-r--r-- | fs/internal.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/internal.h b/fs/internal.h index cc5a530e4f06..ba0737649d4a 100644 --- a/fs/internal.h +++ b/fs/internal.h @@ -111,6 +111,7 @@ extern long do_handle_open(int mountdirfd, struct file_handle __user *ufh, int open_flag); extern int open_check_o_direct(struct file *f); extern int vfs_open(const struct path *, struct file *, const struct cred *); +extern struct file *filp_clone_open(struct file *); /* * inode.c |