projects/linux·commit e2a0883e

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

e2a0883e · Linus Torvalds <[email protected]> · 2012-03-21 13:36:41 -07:00

Pull vfs pile 1 from Al Viro:
 "This is _not_ all; in particular, Miklos' and Jan's stuff is not there
  yet."

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (64 commits)
  ext4: initialization of ext4_li_mtx needs to be done earlier
  debugfs-related mode_t whack-a-mole
  hfsplus: add an ioctl to bless files
  hfsplus: change finder_info to u32
  hfsplus: initialise userflags
  qnx4: new helper - try_extent()
  qnx4: get rid of qnx4_bread/qnx4_getblk
  take removal of PF_FORKNOEXEC to flush_old_exec()
  trim includes in inode.c
  um: uml_dup_mmap() relies on ->mmap_sem being held, but activate_mm() doesn't hold it
  um: embed ->stub_pages[] into mmu_context
  gadgetfs: list_for_each_safe() misuse
  ocfs2: fix leaks on failure exits in module_init
  ecryptfs: make register_filesystem() the last potential failure exit
  ntfs: forgets to unregister sysctls on register_filesystem() failure
  logfs: missing cleanup on register_filesystem() failure
  jfs: mising cleanup on register_filesystem() failure
  make configfs_pin_fs() return root dentry on success
  configfs: configfs_create_dir() has parent dentry in dentry->d_parent
  configfs: sanitize configfs_create()
  ...
Commit
e2a0883e4071237d09b604a342c28b96b44a04b3
Parents
3a990a52 · 07c0c5d8

Merge commit. Changes below are compared with the first parent: 3a990a52.

Changes

186 files changed · +5360 −4141

FileStatusAddDelContent
Documentation/filesystems/debugfs.txtmodified+1−1View file
Documentation/filesystems/portingmodified+6−0View file
Documentation/filesystems/qnx6.txtadded+174−0View file
Documentation/ioctl/ioctl-number.txtmodified+1−0View file
arch/alpha/kernel/binfmt_loader.cmodified+2−1View file
arch/powerpc/platforms/cell/spufs/inode.cmodified+7−7View file
arch/s390/hypfs/inode.cmodified+2−4View file
arch/um/include/asm/mmu.hmodified+1−1View file
arch/um/include/asm/mmu_context.hmodified+9−2View file
arch/um/kernel/skas/mmu.cmodified+6−19View file
arch/x86/ia32/ia32_aout.cmodified+2−2View file
drivers/misc/ibmasm/ibmasmfs.cmodified+6−10View file
drivers/misc/ibmasm/module.cmodified+5−6View file
drivers/mmc/card/block.cmodified+1−1View file
drivers/net/ethernet/brocade/bna/bnad_debugfs.cmodified+1−1View file
drivers/oprofile/oprofilefs.cmodified+3−8View file
drivers/usb/core/inode.cmodified+3−20View file
drivers/usb/gadget/f_fs.cmodified+2−6View file
drivers/usb/gadget/inode.cmodified+4−9View file
fs/9p/v9fs.cmodified+8−8View file
fs/9p/vfs_super.cmodified+1−2View file
fs/Kconfigmodified+1−0View file
fs/Makefilemodified+1−0View file
fs/adfs/super.cmodified+1−2View file
fs/affs/super.cmodified+2−5View file
fs/afs/super.cmodified+2−5View file
fs/aio.cmodified+22−43View file
fs/anon_inodes.cmodified+56−53View file
fs/autofs4/init.cmodified+3−3View file
fs/autofs4/inode.cmodified+2−8View file
fs/befs/linuxvfs.cmodified+1−2View file
fs/bfs/inode.cmodified+1−2View file
fs/binfmt_aout.cmodified+2−2View file
fs/binfmt_elf.cmodified+2−3View file
fs/binfmt_elf_fdpic.cmodified+2−4View file
fs/binfmt_em86.cmodified+2−1View file
fs/binfmt_flat.cmodified+2−2View file
fs/binfmt_misc.cmodified+2−5View file
fs/binfmt_script.cmodified+2−1View file
fs/binfmt_som.cmodified+2−2View file
fs/btrfs/super.cmodified+2−6View file
fs/cachefiles/namei.cmodified+2−1View file
fs/ceph/super.cmodified+1−2View file
fs/cifs/cifsfs.cmodified+1−6View file
fs/coda/inode.cmodified+1−5View file
fs/configfs/configfs_internal.hmodified+3−4View file
fs/configfs/dir.cmodified+31−41View file
fs/configfs/inode.cmodified+30−32View file
fs/configfs/mount.cmodified+7−9View file
fs/configfs/symlink.cmodified+3−9View file
fs/cramfs/inode.cmodified+2−4View file
fs/dcache.cmodified+0−24View file
fs/debugfs/file.cmodified+1−1View file
fs/devpts/inode.cmodified+1−2View file
fs/ecryptfs/file.cmodified+4−5View file
fs/ecryptfs/main.cmodified+9−10View file
fs/ecryptfs/super.cmodified+0−1View file
fs/efs/super.cmodified+1−2View file
fs/exec.cmodified+3−5View file
fs/exofs/namei.cmodified+1−12View file
fs/exofs/super.cmodified+2−2View file
fs/ext2/namei.cmodified+1−12View file
fs/ext2/super.cmodified+2−2View file
fs/ext3/super.cmodified+1−2View file
fs/ext4/super.cmodified+4−4View file
fs/fat/inode.cmodified+4−4View file
fs/file_table.cmodified+1−2View file
fs/freevxfs/vxfs_super.cmodified+1−2View file
fs/fs_struct.cmodified+15−14View file
fs/fuse/inode.cmodified+2−7View file
fs/gfs2/ops_fstype.cmodified+1−2View file
fs/hfs/super.cmodified+2−4View file
fs/hfsplus/hfsplus_fs.hmodified+5−0View file
fs/hfsplus/hfsplus_raw.hmodified+1−1View file
fs/hfsplus/inode.cmodified+2−0View file
fs/hfsplus/ioctl.cmodified+34−0View file
fs/hfsplus/super.cmodified+9−8View file
fs/hostfs/hostfs_kern.cmodified+2−2View file
fs/hpfs/super.cmodified+2−4View file
fs/hppfs/hppfs.cmodified+2−7View file
fs/hugetlbfs/inode.cmodified+2−11View file
fs/inode.cmodified+4−24View file
fs/isofs/inode.cmodified+1−2View file
fs/jffs2/fs.cmodified+2−4View file
fs/jfs/namei.cmodified+0−13View file
fs/jfs/super.cmodified+9−3View file
fs/libfs.cmodified+3−5View file
fs/logfs/dir.cmodified+0−3View file
fs/logfs/super.cmodified+7−5View file
fs/minix/inode.cmodified+17−21View file
fs/minix/minix.hmodified+0−1View file
fs/minix/namei.cmodified+1−13View file
fs/namei.cmodified+14−1View file
fs/ncpfs/inode.cmodified+2−4View file
fs/nfs/getroot.cmodified+2−4View file
fs/nfsd/fault_inject.cmodified+1−1View file
fs/nfsd/vfs.cmodified+6−5View file
fs/nilfs2/namei.cmodified+0−11View file
fs/nilfs2/super.cmodified+2−2View file
fs/ntfs/super.cmodified+6−3View file
fs/ocfs2/dlmfs/dlmfs.cmodified+2−12View file
fs/ocfs2/super.cmodified+25−26View file
fs/omfs/inode.cmodified+2−4View file
fs/openpromfs/inode.cmodified+1−2View file
fs/proc/inode.cmodified+3−13View file
fs/pstore/inode.cmodified+7−18View file
fs/qnx4/inode.cmodified+17−71View file
fs/qnx4/namei.cmodified+3−6View file
fs/qnx4/qnx4.hmodified+0−2View file
fs/qnx6/Kconfigadded+26−0View file
fs/qnx6/Makefileadded+7−0View file
fs/qnx6/READMEadded+8−0View file
fs/qnx6/dir.cadded+291−0View file
fs/qnx6/inode.cadded+698−0View file
fs/qnx6/namei.cadded+42−0View file
fs/qnx6/qnx6.hadded+135−0View file
fs/qnx6/super_mmi.cadded+150−0View file
fs/ramfs/inode.cmodified+7−23View file
include/linux/reiserfs_acl.h → fs/reiserfs/acl.hrenamed+0−0View file
fs/reiserfs/bitmap.cmodified+1−3View file
fs/reiserfs/dir.cmodified+1−1View file
fs/reiserfs/do_balan.cmodified+1−1View file
fs/reiserfs/file.cmodified+3−3View file
fs/reiserfs/fix_node.cmodified+1−1View file
fs/reiserfs/hashes.cmodified+1−1View file
fs/reiserfs/ibalance.cmodified+1−1View file
fs/reiserfs/inode.cmodified+3−3View file
fs/reiserfs/ioctl.cmodified+1−1View file
fs/reiserfs/item_ops.cmodified+1−1View file
fs/reiserfs/journal.cmodified+1−1View file
fs/reiserfs/lbalance.cmodified+1−1View file
fs/reiserfs/lock.cmodified+1−1View file
fs/reiserfs/namei.cmodified+3−3View file
fs/reiserfs/objectid.cmodified+1−2View file
fs/reiserfs/prints.cmodified+2−2View file
fs/reiserfs/procfs.cmodified+1−2View file
fs/reiserfs/reiserfs.hadded+2922−0View file
fs/reiserfs/resize.cmodified+1−2View file
fs/reiserfs/stree.cmodified+1−1View file
fs/reiserfs/super.cmodified+5−7View file
fs/reiserfs/tail_conversion.cmodified+1−1View file
fs/reiserfs/xattr.cmodified+3−3View file
fs/reiserfs/xattr.hadded+122−0View file
fs/reiserfs/xattr_acl.cmodified+3−3View file
fs/reiserfs/xattr_security.cmodified+2−2View file
fs/reiserfs/xattr_trusted.cmodified+2−2View file
fs/reiserfs/xattr_user.cmodified+2−2View file
fs/romfs/super.cmodified+2−4View file
fs/squashfs/super.cmodified+1−2View file
fs/stat.cmodified+1−1View file
fs/sysfs/mount.cmodified+1−2View file
fs/sysv/namei.cmodified+1−11View file
fs/sysv/super.cmodified+13−14View file
fs/sysv/sysv.hmodified+0−1View file
fs/ubifs/super.cmodified+2−4View file
fs/udf/namei.cmodified+0−13View file
fs/udf/super.cmodified+4−2View file
fs/ufs/namei.cmodified+1−13View file
fs/ufs/super.cmodified+3−4View file
fs/xfs/xfs_rename.cmodified+0−11View file
fs/xfs/xfs_super.cmodified+3−4View file
fs/xfs/xfs_utils.cmodified+0−2View file
fs/xfs/xfs_vnodeops.cmodified+0−16View file
include/linux/audit.hmodified+1−1View file
include/linux/binfmts.hmodified+5−5View file
include/linux/dcache.hmodified+0−1View file
include/linux/debugfs.hmodified+2−2View file
include/linux/file.hmodified+0−1View file
include/linux/fs.hmodified+7−3View file
include/linux/magic.hmodified+1−0View file
include/linux/qnx6_fs.hadded+134−0View file
include/linux/reiserfs_fs.hmodified+0−2334View file
include/linux/reiserfs_fs_i.hdeleted+0−63View before deletion
include/linux/reiserfs_fs_sb.hdeleted+0−554View before deletion
include/linux/reiserfs_xattr.hmodified+0−128View file
include/linux/trace_seq.hmodified+2−2View file
include/net/af_unix.hmodified+1−2View file
ipc/mqueue.cmodified+7−17View file
kernel/audit.cmodified+1−1View file
kernel/cgroup.cmodified+2−6View file
kernel/trace/trace_output.cmodified+1−1View file
mm/shmem.cmodified+3−7View file
net/sunrpc/rpc_pipe.cmodified+2−6View file
net/unix/af_unix.cmodified+16−21View file
net/unix/diag.cmodified+1−1View file
security/lsm_audit.cmodified+2−6View file

Only the first 600 diff lines are shown. Download the complete patch.

Documentation/filesystems/debugfs.txt

View file
diff --git a/Documentation/filesystems/debugfs.txt b/Documentation/filesystems/debugfs.txt
index 4e25758..7a34f82 100644
--- a/Documentation/filesystems/debugfs.txt
+++ b/Documentation/filesystems/debugfs.txt
@@ -136,7 +136,7 @@ file.
void __iomem *base;
};
- struct dentry *debugfs_create_regset32(const char *name, mode_t mode,
+ struct dentry *debugfs_create_regset32(const char *name, umode_t mode,
struct dentry *parent,
struct debugfs_regset32 *regset);

Documentation/filesystems/porting

View file
diff --git a/Documentation/filesystems/porting b/Documentation/filesystems/porting
index b4a3d76..74acd96 100644
--- a/Documentation/filesystems/porting
+++ b/Documentation/filesystems/porting
@@ -429,3 +429,9 @@ filemap_write_and_wait_range() so that all dirty pages are synced out properly.
You must also keep in mind that ->fsync() is not called with i_mutex held
anymore, so if you require i_mutex locking you must make sure to take it and
release it yourself.
+
+--
+[mandatory]
+ d_alloc_root() is gone, along with a lot of bugs caused by code
+misusing it. Replacement: d_make_root(inode). The difference is,
+d_make_root() drops the reference to inode if dentry allocation fails.

Documentation/filesystems/qnx6.txt

View file
diff --git a/Documentation/filesystems/qnx6.txt b/Documentation/filesystems/qnx6.txt
new file mode 100644
index 0000000..050223e
--- /dev/null
+++ b/Documentation/filesystems/qnx6.txt
@@ -0,0 +1,174 @@
+The QNX6 Filesystem
+===================
+
+The qnx6fs is used by newer QNX operating system versions. (e.g. Neutrino)
+It got introduced in QNX 6.4.0 and is used default since 6.4.1.
+
+Option
+======
+
+mmi_fs Mount filesystem as used for example by Audi MMI 3G system
+
+Specification
+=============
+
+qnx6fs shares many properties with traditional Unix filesystems. It has the
+concepts of blocks, inodes and directories.
+On QNX it is possible to create little endian and big endian qnx6 filesystems.
+This feature makes it possible to create and use a different endianness fs
+for the target (QNX is used on quite a range of embedded systems) plattform
+running on a different endianess.
+The Linux driver handles endianness transparently. (LE and BE)
+
+Blocks
+------
+
+The space in the device or file is split up into blocks. These are a fixed
+size of 512, 1024, 2048 or 4096, which is decided when the filesystem is
+created.
+Blockpointers are 32bit, so the maximum space that can be adressed is
+2^32 * 4096 bytes or 16TB
+
+The superblocks
+---------------
+
+The superblock contains all global information about the filesystem.
+Each qnx6fs got two superblocks, each one having a 64bit serial number.
+That serial number is used to identify the "active" superblock.
+In write mode with reach new snapshot (after each synchronous write), the
+serial of the new master superblock is increased (old superblock serial + 1)
+
+So basically the snapshot functionality is realized by an atomic final
+update of the serial number. Before updating that serial, all modifications
+are done by copying all modified blocks during that specific write request
+(or period) and building up a new (stable) filesystem structure under the
+inactive superblock.
+
+Each superblock holds a set of root inodes for the different filesystem
+parts. (Inode, Bitmap and Longfilenames)
+Each of these root nodes holds information like total size of the stored
+data and the adressing levels in that specific tree.
+If the level value is 0, up to 16 direct blocks can be adressed by each
+node.
+Level 1 adds an additional indirect adressing level where each indirect
+adressing block holds up to blocksize / 4 bytes pointers to data blocks.
+Level 2 adds an additional indirect adressig block level (so, already up
+to 16 * 256 * 256 = 1048576 blocks that can be adressed by such a tree)a
+
+Unused block pointers are always set to ~0 - regardless of root node,
+indirect adressing blocks or inodes.
+Data leaves are always on the lowest level. So no data is stored on upper
+tree levels.
+
+The first Superblock is located at 0x2000. (0x2000 is the bootblock size)
+The Audi MMI 3G first superblock directly starts at byte 0.
+Second superblock position can either be calculated from the superblock
+information (total number of filesystem blocks) or by taking the highest
+device address, zeroing the last 3 bytes and then substracting 0x1000 from
+that address.
+
+0x1000 is the size reserved for each superblock - regardless of the
+blocksize of the filesystem.
+
+Inodes
+------
+
+Each object in the filesystem is represented by an inode. (index node)
+The inode structure contains pointers to the filesystem blocks which contain
+the data held in the object and all of the metadata about an object except
+its longname. (filenames longer than 27 characters)
+The metadata about an object includes the permissions, owner, group, flags,
+size, number of blocks used, access time, change time and modification time.
+
+Object mode field is POSIX format. (which makes things easier)
+
+There are also pointers to the first 16 blocks, if the object data can be
+adressed with 16 direct blocks.
+For more than 16 blocks an indirect adressing in form of another tree is
+used. (scheme is the same as the one used for the superblock root nodes)
+
+The filesize is stored 64bit. Inode counting starts with 1. (whilst long
+filename inodes start with 0)
+
+Directories
+-----------
+
+A directory is a filesystem object and has an inode just like a file.
+It is a specially formatted file containing records which associate each
+name with an inode number.
+'.' inode number points to the directory inode
+'..' inode number points to the parent directory inode
+Eeach filename record additionally got a filename length field.
+
+One special case are long filenames or subdirectory names.
+These got set a filename length field of 0xff in the corresponding directory
+record plus the longfile inode number also stored in that record.
+With that longfilename inode number, the longfilename tree can be walked
+starting with the superblock longfilename root node pointers.
+
+Special files
+-------------
+
+Symbolic links are also filesystem objects with inodes. They got a specific
+bit in the inode mode field identifying them as symbolic link.
+The directory entry file inode pointer points to the target file inode.
+
+Hard links got an inode, a directory entry, but a specific mode bit set,
+no block pointers and the directory file record pointing to the target file
+inode.
+
+Character and block special devices do not exist in QNX as those files
+are handled by the QNX kernel/drivers and created in /dev independant of the
+underlaying filesystem.
+
+Long filenames
+--------------
+
+Long filenames are stored in a seperate adressing tree. The staring point
+is the longfilename root node in the active superblock.
+Each data block (tree leaves) holds one long filename. That filename is
+limited to 510 bytes. The first two starting bytes are used as length field
+for the actual filename.
+If that structure shall fit for all allowed blocksizes, it is clear why there
+is a limit of 510 bytes for the actual filename stored.
+
+Bitmap
+------
+
+The qnx6fs filesystem allocation bitmap is stored in a tree under bitmap
+root node in the superblock and each bit in the bitmap represents one
+filesystem block.
+The first block is block 0, which starts 0x1000 after superblock start.
+So for a normal qnx6fs 0x3000 (bootblock + superblock) is the physical
+address at which block 0 is located.
+
+Bits at the end of the last bitmap block are set to 1, if the device is
+smaller than addressing space in the bitmap.
+
+Bitmap system area
+------------------
+
+The bitmap itself is devided into three parts.
+First the system area, that is split into two halfs.
+Then userspace.
+
+The requirement for a static, fixed preallocated system area comes from how
+qnx6fs deals with writes.
+Each superblock got it's own half of the system area. So superblock #1
+always uses blocks from the lower half whilst superblock #2 just writes to
+blocks represented by the upper half bitmap system area bits.
+
+Bitmap blocks, Inode blocks and indirect addressing blocks for those two
+tree structures are treated as system blocks.
+
+The rational behind that is that a write request can work on a new snapshot
+(system area of the inactive - resp. lower serial numbered superblock) while
+at the same time there is still a complete stable filesystem structer in the
+other half of the system area.
+
+When finished with writing (a sync write is completed, the maximum sync leap
+time or a filesystem sync is requested), serial of the previously inactive
+superblock atomically is increased and the fs switches over to that - then
+stable declared - superblock.
+
+For all data outside the system area, blocks are just copied while writing.

Documentation/ioctl/ioctl-number.txt

View file
diff --git a/Documentation/ioctl/ioctl-number.txt b/Documentation/ioctl/ioctl-number.txt
index 68fbfb6..3b7488f 100644
--- a/Documentation/ioctl/ioctl-number.txt
+++ b/Documentation/ioctl/ioctl-number.txt
@@ -218,6 +218,7 @@ Code Seq#(hex) Include File Comments
'h' 00-7F conflict! Charon filesystem
'h' 00-1F linux/hpet.h conflict!
+'h' 80-8F fs/hfsplus/ioctl.c
'i' 00-3F linux/i2o-dev.h conflict!
'i' 0B-1F linux/ipmi.h conflict!
'i' 80-8F linux/i8k.h

arch/alpha/kernel/binfmt_loader.c

View file
diff --git a/arch/alpha/kernel/binfmt_loader.c b/arch/alpha/kernel/binfmt_loader.c
index 3fcfad4..d1f474d 100644
--- a/arch/alpha/kernel/binfmt_loader.c
+++ b/arch/alpha/kernel/binfmt_loader.c
@@ -46,6 +46,7 @@ static struct linux_binfmt loader_format = {
static int __init init_loader_binfmt(void)
{
- return insert_binfmt(&loader_format);
+ insert_binfmt(&loader_format);
+ return 0;
}
arch_initcall(init_loader_binfmt);

arch/powerpc/platforms/cell/spufs/inode.c

View file
diff --git a/arch/powerpc/platforms/cell/spufs/inode.c b/arch/powerpc/platforms/cell/spufs/inode.c
index d4a094c..4a3d90e 100644
--- a/arch/powerpc/platforms/cell/spufs/inode.c
+++ b/arch/powerpc/platforms/cell/spufs/inode.c
@@ -757,9 +757,9 @@ spufs_create_root(struct super_block *sb, void *data)
goto out_iput;
ret = -ENOMEM;
- sb->s_root = d_alloc_root(inode);
+ sb->s_root = d_make_root(inode);
if (!sb->s_root)
- goto out_iput;
+ goto out;
return 0;
out_iput:
@@ -828,19 +828,19 @@ static int __init spufs_init(void)
ret = spu_sched_init();
if (ret)
goto out_cache;
- ret = register_filesystem(&spufs_type);
+ ret = register_spu_syscalls(&spufs_calls);
if (ret)
goto out_sched;
- ret = register_spu_syscalls(&spufs_calls);
+ ret = register_filesystem(&spufs_type);
if (ret)
- goto out_fs;
+ goto out_syscalls;
spufs_init_isolated_loader();
return 0;
-out_fs:
- unregister_filesystem(&spufs_type);
+out_syscalls:
+ unregister_spu_syscalls(&spufs_calls);
out_sched:
spu_sched_exit();
out_cache:

arch/s390/hypfs/inode.c

View file
diff --git a/arch/s390/hypfs/inode.c b/arch/s390/hypfs/inode.c
index 8a2a887..6a2cb56 100644
--- a/arch/s390/hypfs/inode.c
+++ b/arch/s390/hypfs/inode.c
@@ -293,11 +293,9 @@ static int hypfs_fill_super(struct super_block *sb, void *data, int silent)
return -ENOMEM;
root_inode->i_op = &simple_dir_inode_operations;
root_inode->i_fop = &simple_dir_operations;
- sb->s_root = root_dentry = d_alloc_root(root_inode);
- if (!root_dentry) {
- iput(root_inode);
+ sb->s_root = root_dentry = d_make_root(root_inode);
+ if (!root_dentry)
return -ENOMEM;
- }
if (MACHINE_IS_VM)
rc = hypfs_vm_create_files(sb, root_dentry);
else

arch/um/include/asm/mmu.h

View file
diff --git a/arch/um/include/asm/mmu.h b/arch/um/include/asm/mmu.h
index 30509b9..53e8b49 100644
--- a/arch/um/include/asm/mmu.h
+++ b/arch/um/include/asm/mmu.h
@@ -12,7 +12,7 @@
typedef struct mm_context {
struct mm_id id;
struct uml_arch_mm_context arch;
- struct page **stub_pages;
+ struct page *stub_pages[2];
} mm_context_t;
extern void __switch_mm(struct mm_id * mm_idp);

arch/um/include/asm/mmu_context.h

View file
diff --git a/arch/um/include/asm/mmu_context.h b/arch/um/include/asm/mmu_context.h
index 591b3d8..aa4a743 100644
--- a/arch/um/include/asm/mmu_context.h
+++ b/arch/um/include/asm/mmu_context.h
@@ -9,7 +9,7 @@
#include <linux/sched.h>
#include <asm/mmu.h>
-extern void arch_dup_mmap(struct mm_struct *oldmm, struct mm_struct *mm);
+extern void uml_setup_stubs(struct mm_struct *mm);
extern void arch_exit_mmap(struct mm_struct *mm);
#define deactivate_mm(tsk,mm) do { } while (0)
@@ -23,7 +23,9 @@ static inline void activate_mm(struct mm_struct *old, struct mm_struct *new)
* when the new ->mm is used for the first time.
*/
__switch_mm(&new->context.id);
- arch_dup_mmap(old, new);
+ down_write(&new->mmap_sem);
+ uml_setup_stubs(new);
+ up_write(&new->mmap_sem);
}
static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next,
@@ -39,6 +41,11 @@ static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next,
}
}
+static inline void arch_dup_mmap(struct mm_struct *oldmm, struct mm_struct *mm)
+{
+ uml_setup_stubs(mm);
+}
+
static inline void enter_lazy_tlb(struct mm_struct *mm,
struct task_struct *tsk)
{

arch/um/kernel/skas/mmu.c

View file
diff --git a/arch/um/kernel/skas/mmu.c b/arch/um/kernel/skas/mmu.c
index 1aee587..4947b31 100644
--- a/arch/um/kernel/skas/mmu.c
+++ b/arch/um/kernel/skas/mmu.c
@@ -92,8 +92,6 @@ int init_new_context(struct task_struct *task, struct mm_struct *mm)
goto out_free;
}
- to_mm->stub_pages = NULL;
-
return 0;
out_free:
@@ -103,7 +101,7 @@ int init_new_context(struct task_struct *task, struct mm_struct *mm)
return ret;
}
-void arch_dup_mmap(struct mm_struct *oldmm, struct mm_struct *mm)
+void uml_setup_stubs(struct mm_struct *mm)
{
struct page **pages;
int err, ret;
@@ -120,29 +118,20 @@ void arch_dup_mmap(struct mm_struct *oldmm, struct mm_struct *mm)
if (ret)
goto out;
- pages = kmalloc(2 * sizeof(struct page *), GFP_KERNEL);
- if (pages == NULL) {
- printk(KERN_ERR "arch_dup_mmap failed to allocate 2 page "
- "pointers\n");
- goto out;
- }
-
- pages[0] = virt_to_page(&__syscall_stub_start);
- pages[1] = virt_to_page(mm->context.id.stack);
- mm->context.stub_pages = pages;
+ mm->context.stub_pages[0] = virt_to_page(&__syscall_stub_start);
+ mm->context.stub_pages[1] = virt_to_page(mm->context.id.stack);
/* dup_mmap already holds mmap_sem */
err = install_special_mapping(mm, STUB_START, STUB_END - STUB_START,
VM_READ | VM_MAYREAD | VM_EXEC |
- VM_MAYEXEC | VM_DONTCOPY, pages);
+ VM_MAYEXEC | VM_DONTCOPY,
+ mm->context.stub_pages);
if (err) {
printk(KERN_ERR "install_special_mapping returned %d\n", err);
- goto out_free;
+ goto out;
}
return;
-out_free:
- kfree(pages);
out:
force_sigsegv(SIGSEGV, current);
}
@@ -151,8 +140,6 @@ void arch_exit_mmap(struct mm_struct *mm)
{
pte_t *pte;
- if (mm->context.stub_pages != NULL)
- kfree(mm->context.stub_pages);
pte = virt_to_pte(mm, STUB_CODE);
if (pte != NULL)
pte_clear(mm, STUB_CODE, pte);

arch/x86/ia32/ia32_aout.c

View file
diff --git a/arch/x86/ia32/ia32_aout.c b/arch/x86/ia32/ia32_aout.c
index 39e4909..4c2e59a 100644
--- a/arch/x86/ia32/ia32_aout.c
+++ b/arch/x86/ia32/ia32_aout.c
@@ -323,7 +323,6 @@ static int load_aout_binary(struct linux_binprm *bprm, struct pt_regs *regs)
}
install_exec_creds(bprm);
- current->flags &= ~PF_FORKNOEXEC;
if (N_MAGIC(ex) == OMAGIC) {
unsigned long text_addr, map_size;
@@ -519,7 +518,8 @@ out:
static int __init init_aout_binfmt(void)
{
- return register_binfmt(&aout_format);
+ register_binfmt(&aout_format);
+ return 0;
}
static void __exit exit_aout_binfmt(void)

drivers/misc/ibmasm/ibmasmfs.c

View file
diff --git a/drivers/misc/ibmasm/ibmasmfs.c b/drivers/misc/ibmasm/ibmasmfs.c
index 3536175..1c034b8 100644
--- a/drivers/misc/ibmasm/ibmasmfs.c
+++ b/drivers/misc/ibmasm/ibmasmfs.c
@@ -87,7 +87,7 @@
static LIST_HEAD(service_processors);
static struct inode *ibmasmfs_make_inode(struct super_block *sb, int mode);
-static void ibmasmfs_create_files (struct super_block *sb, struct dentry *root);
+static void ibmasmfs_create_files (struct super_block *sb);
static int ibmasmfs_fill_super (struct super_block *sb, void *data, int silent);
@@ -114,7 +114,6 @@ static struct file_system_type ibmasmfs_type = {
static int ibmasmfs_fill_super (struct super_block *sb, void *data, int silent)
{
struct inode *root;
- struct dentry *root_dentry;
sb->s_blocksize = PAGE_CACHE_SIZE;
sb->s_blocksize_bits = PAGE_CACHE_SHIFT;
@@ -129,14 +128,11 @@ static int ibmasmfs_fill_super (struct super_block *sb, void *data, int silent)
root->i_op = &simple_dir_inode_operations;
root->i_fop = ibmasmfs_dir_ops;
- root_dentry = d_alloc_root(root);
- if (!root_dentry) {
- iput(root);
+ sb->s_root = d_make_root(root);
+ if (!sb->s_root)
return -ENOMEM;
- }
- sb->s_root = root_dentry;
- ibmasmfs_create_files(sb, root_dentry);
+ ibmasmfs_create_files(sb);
return 0;
}
@@ -612,7 +608,7 @@ static const struct file_operations remote_settings_fops = {
};
-static void ibmasmfs_create_files (struct super_block *sb, struct dentry *root)
+static void ibmasmfs_create_files (struct super_block *sb)
{
struct list_head *entry;
struct service_processor *sp;
@@ -621,7 +617,7 @@ static void ibmasmfs_create_files (struct super_block *sb, struct dentry *root)
struct dentry *dir;
struct dentry *remote_dir;
sp = list_entry(entry, struct service_processor, node);
- dir = ibmasmfs_create_dir(sb, root, sp->dirname);
+ dir = ibmasmfs_create_dir(sb, sb->s_root, sp->dirname);
if (!dir)
continue;

drivers/misc/ibmasm/module.c

View file
diff --git a/drivers/misc/ibmasm/module.c b/drivers/misc/ibmasm/module.c
index 1ccedb7..168d800 100644
--- a/drivers/misc/ibmasm/module.c
+++ b/drivers/misc/ibmasm/module.c
@@ -211,18 +211,17 @@ static void __exit ibmasm_exit (void)
static int __init ibmasm_init(void)
{
- int result;
+ int result = pci_register_driver(&ibmasm_driver);
+ if (result)
+ return result;
result = ibmasmfs_register();
if (result) {
+ pci_unregister_driver(&ibmasm_driver);
err("Failed to register ibmasmfs file system");
return result;
}
- result = pci_register_driver(&ibmasm_driver);
- if (result) {
- ibmasmfs_unregister();
- return result;
- }
+
ibmasm_register_panic_notifier();
info(DRIVER_DESC " version " DRIVER_VERSION " loaded");
return 0;

drivers/mmc/card/block.c

View file
diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c
index c6a383d..e5a3c7b 100644
--- a/drivers/mmc/card/block.c
+++ b/drivers/mmc/card/block.c
@@ -1685,7 +1685,7 @@ static int mmc_add_disk(struct mmc_blk_data *md)
if ((md->area_type & MMC_BLK_DATA_AREA_BOOT) &&
card->ext_csd.boot_ro_lockable) {
- mode_t mode;
+ umode_t mode;
if (card->ext_csd.boot_ro_lock & EXT_CSD_BOOT_WP_B_PWR_WP_DIS)
mode = S_IRUGO;

drivers/net/ethernet/brocade/bna/bnad_debugfs.c

View file
diff --git a/drivers/net/ethernet/brocade/bna/bnad_debugfs.c b/drivers/net/ethernet/brocade/bna/bnad_debugfs.c
index c9fdceb..6e8bc9d 100644
--- a/drivers/net/ethernet/brocade/bna/bnad_debugfs.c
+++ b/drivers/net/ethernet/brocade/bna/bnad_debugfs.c
@@ -516,7 +516,7 @@ static const struct file_operations bnad_debugfs_op_drvinfo = {
struct bnad_debugfs_entry {
const char *name;
- mode_t mode;
+ umode_t mode;
const struct file_operations *fops;
};

drivers/oprofile/oprofilefs.c

View file
diff --git a/drivers/oprofile/oprofilefs.c b/drivers/oprofile/oprofilefs.c
index 2f0aa0f..ee8fd03 100644
--- a/drivers/oprofile/oprofilefs.c
+++ b/drivers/oprofile/oprofilefs.c
@@ -238,7 +238,6 @@ struct dentry *oprofilefs_mkdir(struct super_block *sb,
static int oprofilefs_fill_super(struct super_block *sb, void *data, int silent)
{
struct inode *root_inode;
- struct dentry *root_dentry;
sb->s_blocksize = PAGE_CACHE_SIZE;
sb->s_blocksize_bits = PAGE_CACHE_SHIFT;
@@ -251,15 +250,11 @@ static int oprofilefs_fill_super(struct super_block *sb, void *data, int silent)
return -ENOMEM;
root_inode->i_op = &simple_dir_inode_operations;
root_inode->i_fop = &simple_dir_operations;
- root_dentry = d_alloc_root(root_inode);
- if (!root_dentry) {
- iput(root_inode);
+ sb->s_root = d_make_root(root_inode);
+ if (!sb->s_root)
return -ENOMEM;
- }
-
- sb->s_root = root_dentry;
- oprofile_create_files(sb, root_dentry);
+ oprofile_create_files(sb, sb->s_root);
// FIXME: verify kill_litter_super removes our dentries
return 0;

drivers/usb/core/inode.c

View file
diff --git a/drivers/usb/core/inode.c b/drivers/usb/core/inode.c
index 9e186f3..cefa0c8 100644
--- a/drivers/usb/core/inode.c
+++ b/drivers/usb/core/inode.c
@@ -50,7 +50,6 @@
static const struct file_operations default_file_operations;
static struct vfsmount *usbfs_mount;
static int usbfs_mount_count; /* = 0 */
-static int ignore_mount = 0;
static struct dentry *devices_usbfs_dentry;
static int num_buses; /* = 0 */
@@ -256,7 +255,7 @@ static int remount(struct super_block *sb, int *flags, char *data)
* i.e. it's a simple_pin_fs from create_special_files,
* then ignore it.
*/
- if (ignore_mount)
+ if (*flags & MS_KERNMOUNT)
return 0;
if (parse_options(sb, data)) {
@@ -454,7 +453,6 @@ static const struct super_operations usbfs_ops = {
static int usbfs_fill_super(struct super_block *sb, void *data, int silent)
{
struct inode *inode;
- struct dentry *root;
sb->s_blocksize = PAGE_CACHE_SIZE;
sb->s_blocksize_bits = PAGE_CACHE_SHIFT;
@@ -462,19 +460,11 @@ static int usbfs_fill_super(struct super_block *sb, void *data, int silent)

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/f_fs.c

View file

This diff is incomplete. Download the complete patch.

drivers/usb/gadget/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/9p/v9fs.c

View file

This diff is incomplete. Download the complete patch.

fs/9p/vfs_super.c

View file

This diff is incomplete. Download the complete patch.

fs/Kconfig

View file

This diff is incomplete. Download the complete patch.

fs/Makefile

View file

This diff is incomplete. Download the complete patch.

fs/adfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/affs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/afs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/aio.c

View file

This diff is incomplete. Download the complete patch.

fs/anon_inodes.c

View file

This diff is incomplete. Download the complete patch.

fs/autofs4/init.c

View file

This diff is incomplete. Download the complete patch.

fs/autofs4/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/befs/linuxvfs.c

View file

This diff is incomplete. Download the complete patch.

fs/bfs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/binfmt_aout.c

View file

This diff is incomplete. Download the complete patch.

fs/binfmt_elf.c

View file

This diff is incomplete. Download the complete patch.

fs/binfmt_elf_fdpic.c

View file

This diff is incomplete. Download the complete patch.

fs/binfmt_em86.c

View file

This diff is incomplete. Download the complete patch.

fs/binfmt_flat.c

View file

This diff is incomplete. Download the complete patch.

fs/binfmt_misc.c

View file

This diff is incomplete. Download the complete patch.

fs/binfmt_script.c

View file

This diff is incomplete. Download the complete patch.

fs/binfmt_som.c

View file

This diff is incomplete. Download the complete patch.

fs/btrfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/cachefiles/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/ceph/super.c

View file

This diff is incomplete. Download the complete patch.

fs/cifs/cifsfs.c

View file

This diff is incomplete. Download the complete patch.

fs/coda/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/configfs/configfs_internal.h

View file

This diff is incomplete. Download the complete patch.

fs/configfs/dir.c

View file

This diff is incomplete. Download the complete patch.

fs/configfs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/configfs/mount.c

View file

This diff is incomplete. Download the complete patch.

fs/configfs/symlink.c

View file

This diff is incomplete. Download the complete patch.

fs/cramfs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/dcache.c

View file

This diff is incomplete. Download the complete patch.

fs/debugfs/file.c

View file

This diff is incomplete. Download the complete patch.

fs/devpts/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/ecryptfs/file.c

View file

This diff is incomplete. Download the complete patch.

fs/ecryptfs/main.c

View file

This diff is incomplete. Download the complete patch.

fs/ecryptfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/efs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/exec.c

View file

This diff is incomplete. Download the complete patch.

fs/exofs/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/exofs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/ext2/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/ext2/super.c

View file

This diff is incomplete. Download the complete patch.

fs/ext3/super.c

View file

This diff is incomplete. Download the complete patch.

fs/ext4/super.c

View file

This diff is incomplete. Download the complete patch.

fs/fat/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/file_table.c

View file

This diff is incomplete. Download the complete patch.

fs/freevxfs/vxfs_super.c

View file

This diff is incomplete. Download the complete patch.

fs/fs_struct.c

View file

This diff is incomplete. Download the complete patch.

fs/fuse/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/gfs2/ops_fstype.c

View file

This diff is incomplete. Download the complete patch.

fs/hfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/hfsplus_fs.h

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/hfsplus_raw.h

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/ioctl.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/super.c

View file

This diff is incomplete. Download the complete patch.

fs/hostfs/hostfs_kern.c

View file

This diff is incomplete. Download the complete patch.

fs/hpfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/hppfs/hppfs.c

View file

This diff is incomplete. Download the complete patch.

fs/hugetlbfs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/isofs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/jffs2/fs.c

View file

This diff is incomplete. Download the complete patch.

fs/jfs/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/jfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/libfs.c

View file

This diff is incomplete. Download the complete patch.

fs/logfs/dir.c

View file

This diff is incomplete. Download the complete patch.

fs/logfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/minix/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/minix/minix.h

View file

This diff is incomplete. Download the complete patch.

fs/minix/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/ncpfs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/nfs/getroot.c

View file

This diff is incomplete. Download the complete patch.

fs/nfsd/fault_inject.c

View file

This diff is incomplete. Download the complete patch.

fs/nfsd/vfs.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/super.c

View file

This diff is incomplete. Download the complete patch.

fs/ntfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/ocfs2/dlmfs/dlmfs.c

View file

This diff is incomplete. Download the complete patch.

fs/ocfs2/super.c

View file

This diff is incomplete. Download the complete patch.

fs/omfs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/openpromfs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/proc/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/pstore/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/qnx4/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/qnx4/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/qnx4/qnx4.h

View file

This diff is incomplete. Download the complete patch.

fs/qnx6/Kconfig

View file

This diff is incomplete. Download the complete patch.

fs/qnx6/Makefile

View file

This diff is incomplete. Download the complete patch.

fs/qnx6/README

View file

This diff is incomplete. Download the complete patch.

fs/qnx6/dir.c

View file

This diff is incomplete. Download the complete patch.

fs/qnx6/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/qnx6/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/qnx6/qnx6.h

View file

This diff is incomplete. Download the complete patch.

fs/qnx6/super_mmi.c

View file

This diff is incomplete. Download the complete patch.

fs/ramfs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/acl.h

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/bitmap.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/dir.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/do_balan.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/file.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/fix_node.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/hashes.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/ibalance.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/ioctl.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/item_ops.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/journal.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/lbalance.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/lock.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/objectid.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/prints.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/procfs.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/reiserfs.h

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/resize.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/stree.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/tail_conversion.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/xattr.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/xattr.h

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/xattr_acl.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/xattr_security.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/xattr_trusted.c

View file

This diff is incomplete. Download the complete patch.

fs/reiserfs/xattr_user.c

View file

This diff is incomplete. Download the complete patch.

fs/romfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/squashfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/stat.c

View file

This diff is incomplete. Download the complete patch.

fs/sysfs/mount.c

View file

This diff is incomplete. Download the complete patch.

fs/sysv/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/sysv/super.c

View file

This diff is incomplete. Download the complete patch.

fs/sysv/sysv.h

View file

This diff is incomplete. Download the complete patch.

fs/ubifs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/udf/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/udf/super.c

View file

This diff is incomplete. Download the complete patch.

fs/ufs/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/ufs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/xfs/xfs_rename.c

View file

This diff is incomplete. Download the complete patch.

fs/xfs/xfs_super.c

View file

This diff is incomplete. Download the complete patch.

fs/xfs/xfs_utils.c

View file

This diff is incomplete. Download the complete patch.

fs/xfs/xfs_vnodeops.c

View file

This diff is incomplete. Download the complete patch.

include/linux/audit.h

View file

This diff is incomplete. Download the complete patch.

include/linux/binfmts.h

View file

This diff is incomplete. Download the complete patch.

include/linux/dcache.h

View file

This diff is incomplete. Download the complete patch.

include/linux/debugfs.h

View file

This diff is incomplete. Download the complete patch.

include/linux/file.h

View file

This diff is incomplete. Download the complete patch.

include/linux/fs.h

View file

This diff is incomplete. Download the complete patch.

include/linux/magic.h

View file

This diff is incomplete. Download the complete patch.

include/linux/qnx6_fs.h

View file

This diff is incomplete. Download the complete patch.

include/linux/reiserfs_fs.h

View file

This diff is incomplete. Download the complete patch.

include/linux/reiserfs_fs_i.h

View before deletion

This diff is incomplete. Download the complete patch.

include/linux/reiserfs_fs_sb.h

View before deletion

This diff is incomplete. Download the complete patch.

include/linux/reiserfs_xattr.h

View file

This diff is incomplete. Download the complete patch.

include/linux/trace_seq.h

View file

This diff is incomplete. Download the complete patch.

include/net/af_unix.h

View file

This diff is incomplete. Download the complete patch.

ipc/mqueue.c

View file

This diff is incomplete. Download the complete patch.

kernel/audit.c

View file

This diff is incomplete. Download the complete patch.

kernel/cgroup.c

View file

This diff is incomplete. Download the complete patch.

kernel/trace/trace_output.c

View file

This diff is incomplete. Download the complete patch.

mm/shmem.c

View file

This diff is incomplete. Download the complete patch.

net/sunrpc/rpc_pipe.c

View file

This diff is incomplete. Download the complete patch.

net/unix/af_unix.c

View file

This diff is incomplete. Download the complete patch.

net/unix/diag.c

View file

This diff is incomplete. Download the complete patch.

security/lsm_audit.c

View file

This diff is incomplete. Download the complete patch.