]> Git Repo - linux.git/commitdiff
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris...
authorLinus Torvalds <[email protected]>
Wed, 3 Jul 2013 21:04:58 +0000 (14:04 -0700)
committerLinus Torvalds <[email protected]>
Wed, 3 Jul 2013 21:04:58 +0000 (14:04 -0700)
Pull security subsystem updates from James Morris:
 "In this update, Smack learns to love IPv6 and to mount a filesystem
  with a transmutable hierarchy (i.e.  security labels are inherited
  from parent directory upon creation rather than creating process).

  The rest of the changes are maintenance"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (37 commits)
  tpm/tpm_i2c_infineon: Remove unused header file
  tpm: tpm_i2c_infinion: Don't modify i2c_client->driver
  evm: audit integrity metadata failures
  integrity: move integrity_audit_msg()
  evm: calculate HMAC after initializing posix acl on tmpfs
  maintainers:  add Dmitry Kasatkin
  Smack: Fix the bug smackcipso can't set CIPSO correctly
  Smack: Fix possible NULL pointer dereference at smk_netlbl_mls()
  Smack: Add smkfstransmute mount option
  Smack: Improve access check performance
  Smack: Local IPv6 port based controls
  tpm: fix regression caused by section type conflict of tpm_dev_release() in ppc builds
  maintainers: Remove Kent from maintainers
  tpm: move TPM_DIGEST_SIZE defintion
  tpm_tis: missing platform_driver_unregister() on error in init_tis()
  security: clarify cap_inode_getsecctx description
  apparmor: no need to delay vfree()
  apparmor: fix fully qualified name parsing
  apparmor: fix setprocattr arg processing for onexec
  apparmor: localize getting the security context to a few macros
  ...

1  2 
Documentation/kernel-parameters.txt
MAINTAINERS
mm/shmem.c

index 7310b08bee5e64ffc426373d112b916af90ac7cd,cb5daa1cd605506c7c964f5328cc200957073fa1..3c80382a84dd3d5aefda493c20489e30fbf64ada
@@@ -1129,11 -1129,6 +1129,6 @@@ bytes respectively. Such letter suffixe
                        The builtin appraise policy appraises all files
                        owned by uid=0.
  
-       ima_audit=      [IMA]
-                       Format: { "0" | "1" }
-                       0 -- integrity auditing messages. (Default)
-                       1 -- enable informational integrity auditing messages.
        ima_hash=       [IMA]
                        Format: { "sha1" | "md5" }
                        default: "sha1"
        inport.irq=     [HW] Inport (ATI XL and Microsoft) busmouse driver
                        Format: <irq>
  
 +      int_pln_enable  [x86] Enable power limit notification interrupt
 +
+       integrity_audit=[IMA]
+                       Format: { "0" | "1" }
+                       0 -- basic integrity auditing messages. (Default)
+                       1 -- additional integrity auditing messages.
        intel_iommu=    [DMAR] Intel IOMMU driver (DMAR) option
                on
                        Enable intel iommu driver.
                        Force threading of all interrupt handlers except those
                        marked explicitly IRQF_NO_THREAD.
  
 +      tmem            [KNL,XEN]
 +                      Enable the Transcendent memory driver if built-in.
 +
 +      tmem.cleancache=0|1 [KNL, XEN]
 +                      Default is on (1). Disable the usage of the cleancache
 +                      API to send anonymous pages to the hypervisor.
 +
 +      tmem.frontswap=0|1 [KNL, XEN]
 +                      Default is on (1). Disable the usage of the frontswap
 +                      API to send swap pages to the hypervisor. If disabled
 +                      the selfballooning and selfshrinking are force disabled.
 +
 +      tmem.selfballooning=0|1 [KNL, XEN]
 +                      Default is on (1). Disable the driving of swap pages
 +                      to the hypervisor.
 +
 +      tmem.selfshrinking=0|1 [KNL, XEN]
 +                      Default is on (1). Partial swapoff that immediately
 +                      transfers pages from Xen hypervisor back to the
 +                      kernel based on different criteria.
 +
        topology=       [S390]
                        Format: {off | on}
                        Specify if the kernel should make use of the cpu
                        that this also can be controlled per-workqueue for
                        workqueues visible under /sys/bus/workqueue/.
  
 +      workqueue.power_efficient
 +                      Per-cpu workqueues are generally preferred because
 +                      they show better performance thanks to cache
 +                      locality; unfortunately, per-cpu workqueues tend to
 +                      be more power hungry than unbound workqueues.
 +
 +                      Enabling this makes the per-cpu workqueues which
 +                      were observed to contribute significantly to power
 +                      consumption unbound, leading to measurably lower
 +                      power usage at the cost of small performance
 +                      overhead.
 +
 +                      The default value of this parameter is determined by
 +                      the config option CONFIG_WQ_POWER_EFFICIENT_DEFAULT.
 +
        x2apic_phys     [X86-64,APIC] Use x2apic physical mode instead of
                        default x2apic cluster mode on platforms
                        supporting x2apic.
                        plus one apbt timer for broadcast timer.
                        x86_mrst_timer=apbt_only | lapic_and_apbt
  
 -      xd=             [HW,XT] Original XT pre-IDE (RLL encoded) disks.
 -      xd_geo=         See header of drivers/block/xd.c.
 -
        xen_emul_unplug=                [HW,X86,XEN]
                        Unplug Xen emulated devices
                        Format: [unplug0,][unplug1]
diff --combined MAINTAINERS
index 60c68fbee64a31fb583524fa034eade5c8f4418c,ca53c12b0a2fd81dec7b43cddc3c4ebafc35c8cb..85c1402e8a124242a02c66a4f70410b9dbb6af70
@@@ -797,7 -797,6 +797,7 @@@ F: arch/arm/mach-gemini
  ARM/CSR SIRFPRIMA2 MACHINE SUPPORT
  M:    Barry Song <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/baohua/linux.git
  S:    Maintained
  F:    arch/arm/mach-prima2/
  F:    drivers/dma/sirf-dma.c
@@@ -1136,7 -1135,6 +1136,7 @@@ L:      [email protected] (m
  S:    Maintained
  F:    arch/arm/mach-s5p*/
  F:    arch/arm/mach-exynos*/
 +N:    exynos
  
  ARM/SAMSUNG MOBILE MACHINE SUPPORT
  M:    Kyungmin Park <[email protected]>
@@@ -1203,15 -1201,6 +1203,15 @@@ M:    Dinh Nguyen <[email protected]
  S:    Maintained
  F:    drivers/clk/socfpga/
  
 +ARM/STI ARCHITECTURE
 +M:    Srinivas Kandagatla <[email protected]>
 +M:    Stuart Menefy <[email protected]>
 +L:    [email protected] (moderated for non-subscribers)
 +L:    [email protected]
 +W:    http://www.stlinux.com
 +S:    Maintained
 +F:    arch/arm/mach-sti/
 +
  ARM/TECHNOLOGIC SYSTEMS TS7250 MACHINE SUPPORT
  M:    Lennert Buytenhek <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
@@@ -2131,10 -2120,9 +2131,10 @@@ M:    Mike Turquette <[email protected]
  L:    [email protected] (same as CLK API & CLKDEV)
  T:    git git://git.linaro.org/people/mturquette/linux.git
  S:    Maintained
 -F:    drivers/clk/clk.c
 -F:    drivers/clk/clk-*
 +F:    drivers/clk/
 +X:    drivers/clk/clkdev.c
  F:    include/linux/clk-pr*
 +F:    include/linux/clk/
  
  COMMON INTERNET FILE SYSTEM (CIFS)
  M:    Steve French <[email protected]>
@@@ -2902,8 -2890,8 +2902,8 @@@ F:      drivers/media/dvb-frontends/ec100
  
  ECRYPT FILE SYSTEM
  M:    Tyler Hicks <[email protected]>
 -M:    Dustin Kirkland <[email protected]>
  L:    [email protected]
 +W:    http://ecryptfs.org
  W:    https://launchpad.net/ecryptfs
  S:    Supported
  F:    Documentation/filesystems/ecryptfs.txt
@@@ -3232,7 -3220,7 +3232,7 @@@ F:      lib/fault-inject.
  
  FCOE SUBSYSTEM (libfc, libfcoe, fcoe)
  M:    Robert Love <[email protected]>
 -L:    [email protected]
 +L:    fcoe-[email protected]
  W:    www.Open-FCoE.org
  S:    Supported
  F:    drivers/scsi/libfc/
@@@ -3321,15 -3309,6 +3321,15 @@@ T:    git git://git.kernel.org/pub/scm/lin
  S:    Odd fixes
  F:    drivers/block/floppy.c
  
 +FMC SUBSYSTEM
 +M:    Alessandro Rubini <[email protected]>
 +W:    http://www.ohwr.org/projects/fmc-bus
 +S:    Supported
 +F:    drivers/fmc/
 +F:    include/linux/fmc*.h
 +F:    include/linux/ipmi-fru.h
 +K:    fmc_d.*register
 +
  FPU EMULATOR
  M:    Bill Metzenthen <[email protected]>
  W:    http://floatingpoint.sourceforge.net/emulator/index.html
@@@ -3343,12 -3322,11 +3343,12 @@@ F:   drivers/net/wan/dlci.
  F:    drivers/net/wan/sdla.c
  
  FRAMEBUFFER LAYER
 -M:    Florian Tobias Schandinat <[email protected]>
 +M:    Jean-Christophe Plagniol-Villard <[email protected]>
 +M:    Tomi Valkeinen <[email protected]>
  L:    [email protected]
  W:    http://linux-fbdev.sourceforge.net/
  Q:    http://patchwork.kernel.org/project/linux-fbdev/list/
 -T:    git git://github.com/schandinat/linux-2.6.git fbdev-next
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/plagnioj/linux-fbdev.git
  S:    Maintained
  F:    Documentation/fb/
  F:    Documentation/devicetree/bindings/fb/
@@@ -3588,7 -3566,6 +3588,7 @@@ GPIO SUBSYSTE
  M:    Grant Likely <[email protected]>
  M:    Linus Walleij <[email protected]>
  S:    Maintained
 +L:    [email protected]
  T:    git git://git.secretlab.ca/git/linux-2.6.git
  F:    Documentation/gpio.txt
  F:    drivers/gpio/
@@@ -3888,16 -3865,9 +3888,16 @@@ M:    K. Y. Srinivasan <[email protected]
  M:    Haiyang Zhang <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    drivers/hv/
 +F:    arch/x86/include/asm/mshyperv.h
 +F:    arch/x86/include/uapi/asm/hyperv.h
 +F:    arch/x86/kernel/cpu/mshyperv.c
  F:    drivers/hid/hid-hyperv.c
 +F:    drivers/hv/
  F:    drivers/net/hyperv/
 +F:    drivers/scsi/storvsc_drv.c
 +F:    drivers/video/hyperv_fb.c
 +F:    include/linux/hyperv.h
 +F:    tools/hv/
  
  I2C OVER PARALLEL PORT
  M:    Jean Delvare <[email protected]>
@@@ -4001,7 -3971,8 +4001,8 @@@ S:      Maintaine
  F:    arch/ia64/
  
  IBM Power in-Nest Crypto Acceleration
- M:    Kent Yoder <[email protected]>
+ M:    Marcelo Henrique Cerri <[email protected]>
+ M:    Fionnuala Gunter <[email protected]>
  L:    [email protected]
  S:    Supported
  F:    drivers/crypto/nx/
@@@ -4130,6 -4101,7 +4131,7 @@@ F:      drivers/ipack
  
  INTEGRITY MEASUREMENT ARCHITECTURE (IMA)
  M:    Mimi Zohar <[email protected]>
+ M:    Dmitry Kasatkin <[email protected]>
  S:    Supported
  F:    security/integrity/ima/
  
@@@ -4470,16 -4442,6 +4472,16 @@@ S:    Maintaine
  F:    drivers/scsi/*iscsi*
  F:    include/scsi/*iscsi*
  
 +ISCSI EXTENSIONS FOR RDMA (ISER) INITIATOR
 +M:    Or Gerlitz <[email protected]>
 +M:    Roi Dayan <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +W:    http://www.openfabrics.org
 +W:    www.open-iscsi.org
 +Q:    http://patchwork.kernel.org/project/linux-rdma/list/
 +F:    drivers/infiniband/ulp/iser
 +
  ISDN SUBSYSTEM
  M:    Karsten Keil <[email protected]>
  L:    [email protected] (subscribers-only)
@@@ -4599,7 -4561,7 +4601,7 @@@ F:      fs/jbd2
  F:    include/linux/jbd2.h
  
  JSM Neo PCI based serial card
 -M:    Lucas Tavares <lucaskt@linux.vnet.ibm.com>
 +M:    Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
  L:    [email protected]
  S:    Maintained
  F:    drivers/tty/serial/jsm/
@@@ -4681,13 -4643,12 +4683,13 @@@ F:   include/linux/sunrpc
  F:    include/uapi/linux/sunrpc/
  
  KERNEL VIRTUAL MACHINE (KVM)
 -M:    Marcelo Tosatti <[email protected]>
  M:    Gleb Natapov <[email protected]>
 +M:    Paolo Bonzini <[email protected]>
  L:    [email protected]
 -W:    http://kvm.qumranet.com
 +W:    http://linux-kvm.org
  S:    Supported
 -F:    Documentation/*/kvm.txt
 +F:    Documentation/*/kvm*.txt
 +F:    Documentation/virtual/kvm/
  F:    arch/*/kvm/
  F:    arch/*/include/asm/kvm*
  F:    include/linux/kvm*
@@@ -4733,23 -4694,14 +4735,23 @@@ F:   arch/s390/kvm
  F:    drivers/s390/kvm/
  
  KERNEL VIRTUAL MACHINE (KVM) FOR ARM
 -M:    Christoffer Dall <c[email protected]>
 +M:    Christoffer Dall <c[email protected]>
  L:    [email protected]
  W:    http://systems.cs.columbia.edu/projects/kvm-arm
 -S:    Maintained
 +S:    Supported
  F:    arch/arm/include/uapi/asm/kvm*
  F:    arch/arm/include/asm/kvm*
  F:    arch/arm/kvm/
  
 +KERNEL VIRTUAL MACHINE FOR ARM64 (KVM/arm64)
 +M:    Marc Zyngier <[email protected]>
 +L:    [email protected] (moderated for non-subscribers)
 +L:    [email protected]
 +S:    Maintained
 +F:    arch/arm64/include/uapi/asm/kvm*
 +F:    arch/arm64/include/asm/kvm*
 +F:    arch/arm64/kvm/
 +
  KEXEC
  M:    Eric Biederman <[email protected]>
  W:    http://kernel.org/pub/linux/utils/kernel/kexec/
@@@ -5026,13 -4978,6 +5028,13 @@@ S:    Maintaine
  F:    Documentation/hwmon/lm90
  F:    drivers/hwmon/lm90.c
  
 +LM95234 HARDWARE MONITOR DRIVER
 +M:    Guenter Roeck <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/hwmon/lm95234
 +F:    drivers/hwmon/lm95234.c
 +
  LME2510 MEDIA DRIVER
  M:    Malcolm Priestley <[email protected]>
  L:    [email protected]
@@@ -5566,18 -5511,18 +5568,18 @@@ F:   Documentation/networking/s2io.tx
  F:    Documentation/networking/vxge.txt
  F:    drivers/net/ethernet/neterion/
  
 -NETFILTER/IPTABLES/IPCHAINS
 -P:    Harald Welte
 -P:    Jozsef Kadlecsik
 +NETFILTER/IPTABLES
  M:    Pablo Neira Ayuso <[email protected]>
  M:    Patrick McHardy <[email protected]>
 +M:    Jozsef Kadlecsik <[email protected]>
  L:    [email protected]
  L:    [email protected]
  L:    [email protected]
  W:    http://www.netfilter.org/
  W:    http://www.iptables.org/
 -T:    git git://1984.lsi.us.es/nf
 -T:    git git://1984.lsi.us.es/nf-next
 +Q:    http://patchwork.ozlabs.org/project/netfilter-devel/list/
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git
  S:    Supported
  F:    include/linux/netfilter*
  F:    include/linux/netfilter/
@@@ -5797,7 -5742,7 +5799,7 @@@ M:      Matthew Wilcox <[email protected]
  L:    [email protected]
  T:    git git://git.infradead.org/users/willy/linux-nvme.git
  S:    Supported
 -F:    drivers/block/nvme.c
 +F:    drivers/block/nvme*
  F:    include/linux/nvme.h
  
  OMAP SUPPORT
  W:    http://www.parisc-linux.org/
  Q:    http://patchwork.kernel.org/project/linux-parisc/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux.git
  S:    Maintained
  F:    arch/parisc/
 +F:    Documentation/parisc/
  F:    drivers/parisc/
 +F:    drivers/char/agp/parisc-agp.c
 +F:    drivers/input/serio/gscps2.c
 +F:    drivers/parport/parport_gsc.*
 +F:    drivers/tty/serial/8250/8250_gsc.c
 +F:    drivers/video/sti*
 +F:    drivers/video/console/sti*
 +F:    drivers/video/logo/logo_parisc*
  
  PC87360 HARDWARE MONITORING DRIVER
  M:    Jim Cromie <[email protected]>
  S:    Maintained
  F:    drivers/pinctrl/pinctrl-at91.c
  
 +PIN CONTROLLER - SAMSUNG
 +M:    Tomasz Figa <[email protected]>
 +M:    Thomas Abraham <[email protected]>
 +L:    [email protected] (moderated for non-subscribers)
 +L:    [email protected] (moderated for non-subscribers)
 +S:    Maintained
 +F:    drivers/pinctrl/pinctrl-exynos.*
 +F:    drivers/pinctrl/pinctrl-s3c*
 +F:    drivers/pinctrl/pinctrl-samsung.*
 +
  PIN CONTROLLER - ST SPEAR
  M:    Viresh Kumar <[email protected]>
  L:    [email protected]
@@@ -7665,7 -7591,7 +7667,7 @@@ F:      drivers/clk/spear
  SPI SUBSYSTEM
  M:    Mark Brown <[email protected]>
  M:    Grant Likely <[email protected]>
 -L:    [email protected]
 +L:    [email protected]
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git
  Q:    http://patchwork.kernel.org/project/spi-devel-general/list/
  S:    Maintained
@@@ -7708,7 -7634,6 +7710,7 @@@ STABLE BRANC
  M:    Greg Kroah-Hartman <[email protected]>
  L:    [email protected]
  S:    Supported
 +F:    Documentation/stable_kernel_rules.txt
  
  STAGING SUBSYSTEM
  M:    Greg Kroah-Hartman <[email protected]>
@@@ -7825,7 -7750,7 +7827,7 @@@ F:      drivers/staging/media/solo6x10
  STAGING - SPEAKUP CONSOLE SPEECH DRIVER
  M:    William Hubbs <[email protected]>
  M:    Chris Brannon <[email protected]>
 -M:    Kirk Reiser <kirk@braille.uwo.ca>
 +M:    Kirk Reiser <kirk@reisers.ca>
  M:    Samuel Thibault <[email protected]>
  L:    [email protected]
  W:    http://www.linux-speakup.org/
@@@ -7931,7 -7856,7 +7933,7 @@@ L:      [email protected]
  L:    [email protected]
  L:    http://groups.google.com/group/linux-iscsi-target-dev
  W:    http://www.linux-iscsi.org
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/nab/lio-core.git master
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending.git master
  S:    Supported
  F:    drivers/target/
  F:    include/target/
@@@ -8259,13 -8184,6 +8261,13 @@@ F:    drivers/mmc/host/sh_mobile_sdhi.
  F:    include/linux/mmc/tmio.h
  F:    include/linux/mmc/sh_mobile_sdhi.h
  
 +TMP401 HARDWARE MONITOR DRIVER
 +M:    Guenter Roeck <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/hwmon/tmp401
 +F:    drivers/hwmon/tmp401.c
 +
  TMPFS (SHMEM FILESYSTEM)
  M:    Hugh Dickins <[email protected]>
  L:    [email protected]
@@@ -8282,7 -8200,8 +8284,8 @@@ S:      Odd fixe
  F:    drivers/media/usb/tm6000/
  
  TPM DEVICE DRIVER
- M:    Kent Yoder <[email protected]>
+ M:    Leonidas Da Silva Barbosa <[email protected]>
+ M:    Ashley Lai <[email protected]>
  M:    Rajiv Andrade <[email protected]>
  W:    http://tpmdd.sourceforge.net
  M:    Marcel Selhorst <[email protected]>
@@@ -9046,7 -8965,7 +9049,7 @@@ S:      Maintaine
  F:    drivers/net/wireless/wl3501*
  
  WM97XX TOUCHSCREEN DRIVERS
 -M:    Mark Brown <broonie@opensource.wolfsonmicro.com>
 +M:    Mark Brown <broonie@kernel.org>
  M:    Liam Girdwood <[email protected]>
  L:    [email protected]
  T:    git git://opensource.wolfsonmicro.com/linux-2.6-touch
@@@ -9056,6 -8975,7 +9059,6 @@@ F:      drivers/input/touchscreen/*wm97
  F:    include/linux/wm97xx.h
  
  WOLFSON MICROELECTRONICS DRIVERS
 -M:    Mark Brown <[email protected]>
  L:    [email protected]
  T:    git git://opensource.wolfsonmicro.com/linux-2.6-asoc
  T:    git git://opensource.wolfsonmicro.com/linux-2.6-audioplus
@@@ -9156,13 -9076,6 +9159,13 @@@ S:    Supporte
  F:    arch/arm/xen/
  F:    arch/arm/include/asm/xen/
  
 +XEN HYPERVISOR ARM64
 +M:    Stefano Stabellini <[email protected]>
 +L:    [email protected] (moderated for non-subscribers)
 +S:    Supported
 +F:    arch/arm64/xen/
 +F:    arch/arm64/include/asm/xen/
 +
  XEN NETWORK BACKEND DRIVER
  M:    Ian Campbell <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
diff --combined mm/shmem.c
index 118dfa4952f4dc565fd284c0df6b0d2bd19f4452,a8e10722f8dc2d8e3c81bf80e784db59acc3af66..a87990cf9f94019c70d7263d247c1c94945aee5b
@@@ -1798,7 -1798,10 +1798,7 @@@ static loff_t shmem_file_llseek(struct 
                }
        }
  
 -      if (offset >= 0 && offset != file->f_pos) {
 -              file->f_pos = offset;
 -              file->f_version = 0;
 -      }
 +      offset = vfs_setpos(file, offset, MAX_LFS_FILESIZE);
        mutex_unlock(&inode->i_mutex);
        return offset;
  }
@@@ -1936,6 -1939,13 +1936,13 @@@ shmem_mknod(struct inode *dir, struct d
  
        inode = shmem_get_inode(dir->i_sb, dir, mode, dev, VM_NORESERVE);
        if (inode) {
+ #ifdef CONFIG_TMPFS_POSIX_ACL
+               error = generic_acl_init(inode, dir);
+               if (error) {
+                       iput(inode);
+                       return error;
+               }
+ #endif
                error = security_inode_init_security(inode, dir,
                                                     &dentry->d_name,
                                                     shmem_initxattrs, NULL);
                                return error;
                        }
                }
- #ifdef CONFIG_TMPFS_POSIX_ACL
-               error = generic_acl_init(inode, dir);
-               if (error) {
-                       iput(inode);
-                       return error;
-               }
- #else
                error = 0;
- #endif
                dir->i_size += BOGO_DIRENT_SIZE;
                dir->i_ctime = dir->i_mtime = CURRENT_TIME;
                d_instantiate(dentry, inode);
        return error;
  }
  
 +static int
 +shmem_tmpfile(struct inode *dir, struct dentry *dentry, umode_t mode)
 +{
 +      struct inode *inode;
 +      int error = -ENOSPC;
 +
 +      inode = shmem_get_inode(dir->i_sb, dir, mode, 0, VM_NORESERVE);
 +      if (inode) {
 +              error = security_inode_init_security(inode, dir,
 +                                                   NULL,
 +                                                   shmem_initxattrs, NULL);
 +              if (error) {
 +                      if (error != -EOPNOTSUPP) {
 +                              iput(inode);
 +                              return error;
 +                      }
 +              }
 +#ifdef CONFIG_TMPFS_POSIX_ACL
 +              error = generic_acl_init(inode, dir);
 +              if (error) {
 +                      iput(inode);
 +                      return error;
 +              }
 +#else
 +              error = 0;
 +#endif
 +              d_tmpfile(dentry, inode);
 +      }
 +      return error;
 +}
 +
  static int shmem_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode)
  {
        int error;
@@@ -2751,7 -2723,6 +2751,7 @@@ static const struct inode_operations sh
        .rmdir          = shmem_rmdir,
        .mknod          = shmem_mknod,
        .rename         = shmem_rename,
 +      .tmpfile        = shmem_tmpfile,
  #endif
  #ifdef CONFIG_TMPFS_XATTR
        .setxattr       = shmem_setxattr,
This page took 0.166443 seconds and 4 git commands to generate.