1. 05 3月, 2009 1 次提交
  2. 31 3月, 2009 2 次提交
  3. 01 3月, 2009 1 次提交
  4. 28 3月, 2009 1 次提交
  5. 24 2月, 2009 2 次提交
    • T
      ext4: Automatically allocate delay allocated blocks on rename · 8750c6d5
      Theodore Ts'o 提交于
      When renaming a file such that a link to another inode is overwritten,
      force any delay allocated blocks that to be allocated so that if the
      filesystem is mounted with data=ordered, the data blocks will be
      pushed out to disk along with the journal commit.  Many application
      programs expect this, so we do this to avoid zero length files if the
      system crashes unexpectedly.
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      8750c6d5
    • T
      ext4: Automatically allocate delay allocated blocks on close · 7d8f9f7d
      Theodore Ts'o 提交于
      When closing a file that had been previously truncated, force any
      delay allocated blocks that to be allocated so that if the filesystem
      is mounted with data=ordered, the data blocks will be pushed out to
      disk along with the journal commit.  Many application programs expect
      this, so we do this to avoid zero length files if the system crashes
      unexpectedly.
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      7d8f9f7d
  6. 26 2月, 2009 1 次提交
    • T
      ext4: add EXT4_IOC_ALLOC_DA_BLKS ioctl · ccd2506b
      Theodore Ts'o 提交于
      Add an ioctl which forces all of the delay allocated blocks to be
      allocated.  This also provides a function ext4_alloc_da_blocks() which
      will be used by the following commits to force files to be fully
      allocated to preserve application-expected ext3 behaviour.
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      ccd2506b
  7. 24 2月, 2009 1 次提交
  8. 23 2月, 2009 3 次提交
  9. 28 3月, 2009 1 次提交
  10. 12 3月, 2009 1 次提交
  11. 23 2月, 2009 1 次提交
    • B
      ext4: return -EIO not -ESTALE on directory traversal through deleted inode · e6f009b0
      Bryan Donlan 提交于
      ext4_iget() returns -ESTALE if invoked on a deleted inode, in order to
      report errors to NFS properly.  However, in ext4_lookup(), this
      -ESTALE can be propagated to userspace if the filesystem is corrupted
      such that a directory entry references a deleted inode.  This leads to
      a misleading error message - "Stale NFS file handle" - and confusion
      on the part of the admin.
      
      The bug can be easily reproduced by creating a new filesystem, making
      a link to an unused inode using debugfs, then mounting and attempting
      to ls -l said link.
      
      This patch thus changes ext4_lookup to return -EIO if it receives
      -ESTALE from ext4_iget(), as ext4 does for other filesystem metadata
      corruption; and also invokes the appropriate ext*_error functions when
      this case is detected.
      Signed-off-by: NBryan Donlan <bdonlan@gmail.com>
      Cc: <linux-ext4@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      e6f009b0
  12. 13 3月, 2009 1 次提交
    • T
      ext4: New inode/block allocation algorithms for flex_bg filesystems · a4912123
      Theodore Ts'o 提交于
      The find_group_flex() inode allocator is now only used if the
      filesystem is mounted using the "oldalloc" mount option.  It is
      replaced with the original Orlov allocator that has been updated for
      flex_bg filesystems (it should behave the same way if flex_bg is
      disabled).  The inode allocator now functions by taking into account
      each flex_bg group, instead of each block group, when deciding whether
      or not it's time to allocate a new directory into a fresh flex_bg.
      
      The block allocator has also been changed so that the first block
      group in each flex_bg is preferred for use for storing directory
      blocks.  This keeps directory blocks close together, which is good for
      speeding up e2fsck since large directories are more likely to look
      like this:
      
      debugfs:  stat /home/tytso/Maildir/cur
      Inode: 1844562   Type: directory    Mode:  0700   Flags: 0x81000
      Generation: 1132745781    Version: 0x00000000:0000ad71
      User: 15806   Group: 15806   Size: 1060864
      File ACL: 0    Directory ACL: 0
      Links: 2   Blockcount: 2072
      Fragment:  Address: 0    Number: 0    Size: 0
       ctime: 0x499c0ff4:164961f4 -- Wed Feb 18 08:41:08 2009
       atime: 0x499c0ff4:00000000 -- Wed Feb 18 08:41:08 2009
       mtime: 0x49957f51:00000000 -- Fri Feb 13 09:10:25 2009
      crtime: 0x499c0f57:00d51440 -- Wed Feb 18 08:38:31 2009
      Size of extra inode fields: 28
      BLOCKS:
      (0):7348651, (1-258):7348654-7348911
      TOTAL: 259
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      a4912123
  13. 16 2月, 2009 3 次提交
  14. 15 2月, 2009 2 次提交
  15. 07 2月, 2009 2 次提交
  16. 30 3月, 2009 1 次提交
  17. 29 3月, 2009 16 次提交
    • R
      Fix build error in <linux/irq.h> · 503e5763
      Ralf Baechle 提交于
      <linux/irq.h> relies on <linux/gfp.h> and <linux/topology.h> having been
      included previous.  If not, the errors like below will result.
      
          CC      arch/mips/mti-malta/malta-int.o
        In file included from arch/mips/mti-malta/malta-int.c:25:
        include/linux/irq.h: In function ‘init_alloc_desc_masks’:
        include/linux/irq.h:444: error: implicit declaration of function ‘cpu_to_node’
        include/linux/irq.h:446: error: ‘GFP_ATOMIC’ undeclared (first use in this function)
        include/linux/irq.h:446: error: (Each undeclared identifier is reported only once
        include/linux/irq.h:446: error: for each function it appears in.)
        make[3]: *** [arch/mips/mti-malta/malta-int.o] Error 1
        make[2]: *** [arch/mips/mti-malta] Error 2
        make[1]: *** [sub-make] Error 2
      
      Fixed by including the two missing headers.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      503e5763
    • R
      sched: fix errors in struct & function comments · d5ac537e
      Randy Dunlap 提交于
      Fix kernel-doc errors in sched.c:  the structs don't have
      kernel-doc notation and the short function description needs to
      be one line only.
      
        Error(kernel/sched.c:3197): cannot understand prototype: 'struct sd_lb_stats '
        Error(kernel/sched.c:3228): cannot understand prototype: 'struct sg_lb_stats '
        Error(kernel/sched.c:3375): duplicate section name 'Description'
      Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com>
      cc: Ingo Molnar <mingo@elte.hu>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      d5ac537e
    • R
      maple: fix Error in kernel-doc notation · ee665ecc
      Randy Dunlap 提交于
      Fix kernel-doc error in maple (it's not kernel-doc):
      
        Error(drivers/sh/maple/maple.c:782): cannot understand prototype: 'struct bus_type maple_bus_type = '
      Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com>
      cc: Paul Mundt <lethal@linux-sh.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ee665ecc
    • L
      Merge branch 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip · c31f403d
      Linus Torvalds 提交于
      * 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        futex: remove the pointer math from double_unlock_hb, fix
        futex: remove the pointer math from double_unlock_hb
        futex: clean up fault logic
        futex: unlock before returning -EFAULT
        futex: use current->time_slack_ns for rt tasks too
        futex: add double_unlock_hb()
        futex: additional (get|put)_futex_key() fixes
        futex: update futex commentary
      c31f403d
    • L
      Merge branch 'for-linus' of... · 7541bba8
      Linus Torvalds 提交于
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:
        smack: Add a new '-CIPSO' option to the network address label configuration
        netlabel: Cleanup the Smack/NetLabel code to fix incoming TCP connections
        lsm: Remove the socket_post_accept() hook
        selinux: Remove the "compat_net" compatibility code
        netlabel: Label incoming TCP connections correctly in SELinux
        lsm: Relocate the IPv4 security_inet_conn_request() hooks
        TOMOYO: Fix a typo.
        smack: convert smack to standard linux lists
      7541bba8
    • D
      Annotate struct fs_struct's usage count restriction · 795e2fe0
      David Howells 提交于
      Annotate struct fs_struct's usage count to indicate the restrictions upon it.
      It may not be incremented, except by clone(CLONE_FS), as this affects the
      check in check_unsafe_exec() in fs/exec.c.
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NHugh Dickins <hugh@veritas.com>
      Cc: stable@kernel.org
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      795e2fe0
    • H
      fix setuid sometimes wouldn't · 7c2c7d99
      Hugh Dickins 提交于
      check_unsafe_exec() also notes whether the fs_struct is being
      shared by more threads than will get killed by the exec, and if so
      sets LSM_UNSAFE_SHARE to make bprm_set_creds() careful about euid.
      But /proc/<pid>/cwd and /proc/<pid>/root lookups make transient
      use of get_fs_struct(), which also raises that sharing count.
      
      This might occasionally cause a setuid program not to change euid,
      in the same way as happened with files->count (check_unsafe_exec
      also looks at sighand->count, but /proc doesn't raise that one).
      
      We'd prefer exec not to unshare fs_struct: so fix this in procfs,
      replacing get_fs_struct() by get_fs_path(), which does path_get
      while still holding task_lock, instead of raising fs->count.
      Signed-off-by: NHugh Dickins <hugh@veritas.com>
      Cc: stable@kernel.org
      ___
      
       fs/proc/base.c |   50 +++++++++++++++--------------------------------
       1 file changed, 16 insertions(+), 34 deletions(-)
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      7c2c7d99
    • H
      fix setuid sometimes doesn't · e426b64c
      Hugh Dickins 提交于
      Joe Malicki reports that setuid sometimes doesn't: very rarely,
      a setuid root program does not get root euid; and, by the way,
      they have a health check running lsof every few minutes.
      
      Right, check_unsafe_exec() notes whether the files_struct is being
      shared by more threads than will get killed by the exec, and if so
      sets LSM_UNSAFE_SHARE to make bprm_set_creds() careful about euid.
      But /proc/<pid>/fd and /proc/<pid>/fdinfo lookups make transient
      use of get_files_struct(), which also raises that sharing count.
      
      There's a rather simple fix for this: exec's check on files->count
      has been redundant ever since 2.6.1 made it unshare_files() (except
      while compat_do_execve() omitted to do so) - just remove that check.
      
      [Note to -stable: this patch will not apply before 2.6.29: earlier
      releases should just remove the files->count line from unsafe_exec().]
      Reported-by: NJoe Malicki <jmalicki@metacarta.com>
      Narrowed-down-by: NMichael Itz <mitz@metacarta.com>
      Tested-by: NJoe Malicki <jmalicki@metacarta.com>
      Signed-off-by: NHugh Dickins <hugh@veritas.com>
      Cc: stable@kernel.org
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      e426b64c
    • H
      compat_do_execve should unshare_files · 53e9309e
      Hugh Dickins 提交于
      2.6.26's commit fd8328be
      "sanitize handling of shared descriptor tables in failing execve()"
      moved the unshare_files() from flush_old_exec() and several binfmts
      to the head of do_execve(); but forgot to make the same change to
      compat_do_execve(), leaving a CLONE_FILES files_struct shared across
      exec from a 32-bit process on a 64-bit kernel.
      
      It's arguable whether the files_struct really ought to be unshared
      across exec; but 2.6.1 made that so to stop the loading binary's fd
      leaking into other threads, and a 32-bit process on a 64-bit kernel
      ought to behave in the same way as 32 on 32 and 64 on 64.
      Signed-off-by: NHugh Dickins <hugh@veritas.com>
      Cc: stable@kernel.org
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      53e9309e
    • H
      bzip2/lzma: don't ask for compression mode for the default initramfs · 40297927
      H. Peter Anvin 提交于
      Impact: Kconfig noise reduction, documentation
      
      The default initramfs is so small that it makes no sense to worry
      about the additional memory taken by not double-compressing it.
      Therefore, don't bug the user with it.
      
      Also, improve the description of the option, which was downright
      incorrect.
      Signed-off-by: NH. Peter Anvin <hpa@zytor.com>
      40297927
    • H
      bzip2/lzma: consistently capitalize LZMA in Kconfig · 55d1d26f
      H. Peter Anvin 提交于
      Impact: message formatting
      
      Consistently spell LZMA in all capitals, since it (unlike gzip or
      bzip2) is an acronym.
      Signed-off-by: NH. Peter Anvin <hpa@zytor.com>
      55d1d26f
    • H
      bzip2/lzma: clarify the meaning of the CONFIG_RD_ options · 337bed41
      H. Peter Anvin 提交于
      Impact: Kconfig clarification
      
      Make it clear that the CONFIG_RD_* options are about what formats are
      supported, not about what formats are actually being used.
      Signed-off-by: NH. Peter Anvin <hpa@zytor.com>
      337bed41
    • H
      bzip2/lzma: move CONFIG_RD_* options under CONFIG_EMBEDDED · 73d8a12f
      H. Peter Anvin 提交于
      Impact: reduce Kconfig noise
      
      Move the options that control possible initramfs/initrd compressions
      underneath CONFIG_EMBEDDED.  The only impact of leaving these options
      set to y is additional code in the init section of the kernel; there
      is no reason to burden non-embedded users with these options.
      Signed-off-by: NH. Peter Anvin <hpa@zytor.com>
      73d8a12f
    • I
      Merge branch 'linus' into core/futexes · d00ab2fd
      Ingo Molnar 提交于
      d00ab2fd
    • L
      Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6 · 07d43ba9
      Linus Torvalds 提交于
      * 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
        i2c-core: Some style cleanups
        i2c-piix4: Add support for the Broadcom HT1100 chipset
        i2c-piix4: Add support to SB800 SMBus changes
        i2c-pca-platform: Use defaults if no platform_data given
        i2c-algo-pca: Use timeout for checking the state machine
        i2c-algo-pca: Rework waiting for a free bus
        i2c-algo-pca: Add PCA9665 support
        i2c: Adapt debug macros for KERN_* constants
        i2c-davinci: Fix timeout handling
        i2c: Adapter timeout is in jiffies
        i2c: Set a default timeout value for all adapters
        i2c: Add missing KERN_* constants to printks
        i2c-algo-pcf: Handle timeout correctly
        i2c-algo-pcf: Style cleanups
        eeprom/at24: Remove EXPERIMENTAL
        i2c-nforce2: Add support for MCP67, MCP73, MCP78S and MCP79
        i2c: Clarify which clients are auto-removed
        i2c: Let checkpatch shout on users of the legacy model
        i2c: Document the different ways to instantiate i2c devices
      07d43ba9
    • L
      Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm · 0fe41b89
      Linus Torvalds 提交于
      * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (422 commits)
        [ARM] 5435/1: fix compile warning in sanity_check_meminfo()
        [ARM] 5434/1: ARM: OMAP: Fix mailbox compile for 24xx
        [ARM] pxa: fix the bad assumption that PCMCIA sockets always start with 0
        [ARM] pxa: fix Colibri PXA300 and PXA320 LCD backlight pins
        imxfb: Fix TFT mode
        i.MX21/27: remove ifdef CONFIG_FB_IMX
        imxfb: add clock support
        mxc: add arch_reset() function
        clkdev: add possibility to get a clock based on the device name
        i.MX1: remove fb support from mach-imx
        [ARM] pxa: build arch/arm/plat-pxa/mfp.c only when PXA3xx or ARCH_MMP defined
        Gemini: Add support for Teltonika RUT100
        Gemini: gpiolib based GPIO support v2
        MAINTAINERS: add myself as Gemini architecture maintainer
        ARM: Add Gemini architecture v3
        [ARM] OMAP: Fix compile for omap2_init_common_hw()
        MAINTAINERS: Add myself as Faraday ARM core variant maintainer
        ARM: Add support for FA526 v2
        [ARM] acorn,ebsa110,footbridge,integrator,sa1100: Convert asm/io.h to linux/io.h
        [ARM] collie: fix two minor formatting nits
        ...
      0fe41b89