03 Apr, 2009

31 commits

  • Reformat ext3/ioctl.c to make it look more like ext4/ioctl.c and remove
    the BKL around ext3_ioctl().

    Signed-off-by: Cyrus Massoumi
    Cc:
    Acked-by: Jan Kara
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Cyrus Massoumi
     
  • - Error code from kthread_run() is now returned in pnpbios_thread_init()

    - Remove variable which always was 0.

    Signed-off-by: Erik Ekman
    Cc: Bjorn Helgaas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Erik Ekman
     
  • drivers/pnp/pnpbios/core.c: In function 'pnpbios_thread_init':
    drivers/pnp/pnpbios/core.c:578: warning: unused variable 'task'

    Signed-off-by: Erik Ekman
    Cc: Bjorn Helgaas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Erik Ekman
     
  • Change spi-gpio so that it is possible to drive SPI communications over
    GPIO without the need for a chipselect signal.

    This is useful in very small setups where there's only one slave device
    on the bus.

    This patch does not affect existing setups.

    I use this for a tiny communication channel between an embedded device and
    a microcontroller. There are not enough GPIOs available for chipselect
    and it's not needed anyway in this case.

    Signed-off-by: Michael Buesch
    Cc: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael Buesch
     
  • We want to phase out the GPIO "autorequest" mechanism in gpiolib and
    require all callers to use gpio_request().

    - Update feature-removal-schedule
    - Update the documentation now
    - Convert the relevant pr_warning() in gpiolib to a WARN()
    so folk using this mechanism get a noisy stack dump

    Some drivers and board init code will probably need to change.
    Implementations not using gpiolib will still be fine; they are already
    required to implement gpio_{request,free}() stubs.

    Signed-off-by: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     
  • Allow GPIOs in GPIOLIB chips to be named. This name is then used when the
    GPIO is exported to sysfs, although it could be used elsewhere if deemed
    useful.

    Signed-off-by: Daniel Silverstone
    Cc: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Daniel Silverstone
     
  • Compared to the other supported chips, the m41t62 uses a different
    register to set the square wave frequency.

    Signed-off-by: Daniel Glockner
    Cc: Chris Zankel
    Cc: David Brownell
    Cc: Alessandro Zummo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Daniel Glockner
     
  • The v3020 RTC can be connected to GPIOs as well as to memory-like
    interface. Add ability to use GPIO bit-bang for v3020 read-write access.

    [akpm@linux-foundation.org: fix off-by-one in error path]
    Signed-off-by: Mike Rapoport
    Acked-by: Alessandro Zummo
    Cc: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mike Rapoport
     
  • initramfs uses printk without a linefeed, then does some work, then uses
    printk to finish the message off. However if some other code does a
    printk in between, then the messages get mixed together. Better for each
    message to be an independent line...

    Example of problem that this fixes:

    checking if image is initramfs...Switched to high resolution mode on CPU 1
    Switched to high resolution mode on CPU 0
    it is

    Signed-off-by: Simon Kitching
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Simon Kitching
     
  • First argument unused since 2.3.11.

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Alexey Dobriyan
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • - Define new setup() hook to export the accessor
    - Implement accessor methods

    Moves some error checking out of the sysfs interface code into the layer
    below it, which is now shared by both sysfs and memory access code.

    Signed-off-by: David Brownell
    Signed-off-by: Kevin Hilman
    Cc: Jean Delvare
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     
  • In the case of at24, the platform code registers a 'setup' callback with
    the at24_platform_data. When the at24 driver detects an EEPROM, it fills
    out the read and write functions of the memory_accessor and calls the
    setup callback passing the memory_accessor struct. The platform code can
    then use the read/write functions in the memory_accessor struct for
    reading and writing the EEPROM.

    Signed-off-by: Kevin Hilman
    Cc: David Brownell
    Cc: Jean Delvare
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kevin Hilman
     
  • Add an interface by which other kernel code can read/write persistent
    memory such as I2C or SPI EEPROMs, or devices which provide NVRAM. Use
    cases include storage of board-specific configuration data like Ethernet
    addresses and sensor calibrations.

    Original idea, review and improvement suggestions by David Brownell.

    Acked-by: David Brownell
    Signed-off-by: Kevin Hilman
    Cc: Jean Delvare
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kevin Hilman
     
  • It is a fairly common operation to have a pointer to a work and to need a
    pointer to the delayed work it is contained in. In particular, all
    delayed works which want to rearm themselves will have to do that. So it
    would seem fair to offer a helper function for this operation.

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Jean Delvare
    Acked-by: Ingo Molnar
    Cc: "David S. Miller"
    Cc: Herbert Xu
    Cc: Benjamin Herrenschmidt
    Cc: Martin Schwidefsky
    Cc: Greg KH
    Cc: Pekka Enberg
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jean Delvare
     
  • Fix the following warnings:

    arch/um/kernel/syscall.c: In function 'kernel_execve':
    arch/um/kernel/syscall.c:130: warning: passing argument 1 of 'um_execve' discards qualifiers from pointer target type
    arch/um/kernel/syscall.c:130: warning: passing argument 2 of 'um_execve' discards qualifiers from pointer target type
    arch/um/kernel/syscall.c:130: warning: passing argument 3 of 'um_execve' discards qualifiers from pointer target type

    Signed-off-by: Miklos Szeredi
    Cc: Jeff Dike
    Cc: WANG Cong
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Miklos Szeredi
     
  • Fix the following link error:

    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x11c): undefined reference to `ptregs_fork'
    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x140): undefined reference to `ptregs_execve'
    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x2cc): undefined reference to `ptregs_iopl'
    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x2d8): undefined reference to `ptregs_vm86old'
    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x2f0): undefined reference to `ptregs_sigreturn'
    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x2f4): undefined reference to `ptregs_clone'
    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x3ac): undefined reference to `ptregs_vm86'
    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x3c8): undefined reference to `ptregs_rt_sigreturn'
    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x3fc): undefined reference to `ptregs_sigaltstack'
    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x40c): undefined reference to `ptregs_vfork'

    This was introduced by commit 253f29a4, "x86: pass in pt_regs pointer
    for syscalls that need it"

    Signed-off-by: Miklos Szeredi
    Cc: Brian Gerst
    Cc: Tejun Heo
    Cc: Ingo Molnar
    Cc: Jeff Dike
    Reviewed-by: WANG Cong
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Miklos Szeredi
     
  • Fix the following compile error:

    arch/um/drivers/net_kern.c: In function 'uml_inetaddr_event':
    arch/um/drivers/net_kern.c:760: error: 'struct net_device' has no member named 'open'

    This was introduced by commit 8bb95b39, "uml: convert network device
    to netdevice ops".

    Signed-off-by: Miklos Szeredi
    Cc: Stephen Hemminger
    Cc: David S. Miller
    Cc: Jeff Dike
    Reviewed-by: WANG Cong
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Miklos Szeredi
     
  • The missing device table means that the floppy module is not auto-loaded,
    even when the appropriate PNP device (0700) is found.

    We don't actually use the table in the module, since the device doesn't
    have a struct pnp_driver, but it's sufficient to cause an alias in the
    module that udev/modprobe will use.

    Signed-off-by: Scott James Remnant
    Signed-off-by: Tim Gardner
    Cc: Bjorn Helgaas
    Cc: Philippe De Muyter
    Acked-by: Kay Sievers
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Scott James Remnant
     
  • Check bh->b_blocknr only if BH_Mapped is set.

    akpm: I doubt if b_blocknr is ever uninitialised here, but it could
    conceivably cause a problem if we're doing a lookup for block zero.

    Signed-off-by: Nikanth Karthikesan
    Cc: Nick Piggin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nikanth Karthikesan
     
  • A new "address_space flag"--AS_MM_ALL_LOCKS--was defined to use the next
    available AS flag while the Unevictable LRU was under development. The
    Unevictable LRU was using the same flag and "no one" noticed. Current
    mainline, since 2.6.28, has same value for two symbolic flag names.

    So, define a unique flag value for AS_UNEVICTABLE--up close to the other
    flags, [at the cost of an additional #ifdef] so we'll notice next time.
    Note that #ifdef is not actually required, if we don't mind having the
    unused flag value defined.

    Replace #defines with an enum.

    Signed-off-by: Lee Schermerhorn
    Cc: [2.6.28.x, 2.6.29.x]
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lee Schermerhorn
     
  • Include fiemap.h in header-y; it defines the interface for the
    FS_IOC_FIEMAP file mapping ioctl.

    Signed-off-by: Eric Sandeen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Eric Sandeen
     
  • Add a MAINTAINERS entry for the hypervisor virtual console driver.

    Signed-off-by: Michael Ellerman
    Acked-by: Josh Boyer
    Cc: Josh Boyer
    Cc: Benjamin Herrenschmidt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael Ellerman
     
  • The calculation of the value nr in do_xip_mapping_read is incorrect. If
    the copy required more than one iteration in the do while loop the copies
    variable will be non-zero. The maximum length that may be passed to the
    call to copy_to_user(buf+copied, xip_mem+offset, nr) is len-copied but the
    check only compares against (nr > len).

    This bug is the cause for the heap corruption Carsten has been chasing
    for so long:

    *** glibc detected *** /bin/bash: free(): invalid next size (normal): 0x00000000800e39f0 ***
    ======= Backtrace: =========
    /lib64/libc.so.6[0x200000b9b44]
    /lib64/libc.so.6(cfree+0x8e)[0x200000bdade]
    /bin/bash(free_buffered_stream+0x32)[0x80050e4e]
    /bin/bash(close_buffered_stream+0x1c)[0x80050ea4]
    /bin/bash(unset_bash_input+0x2a)[0x8001c366]
    /bin/bash(make_child+0x1d4)[0x8004115c]
    /bin/bash[0x8002fc3c]
    /bin/bash(execute_command_internal+0x656)[0x8003048e]
    /bin/bash(execute_command+0x5e)[0x80031e1e]
    /bin/bash(execute_command_internal+0x79a)[0x800305d2]
    /bin/bash(execute_command+0x5e)[0x80031e1e]
    /bin/bash(reader_loop+0x270)[0x8001efe0]
    /bin/bash(main+0x1328)[0x8001e960]
    /lib64/libc.so.6(__libc_start_main+0x100)[0x200000592a8]
    /bin/bash(clearerr+0x5e)[0x8001c092]

    With this bug fix the commit 0e4a9b59282914fe057ab17027f55123964bc2e2
    "ext2/xip: refuse to change xip flag during remount with busy inodes" can
    be removed again.

    Cc: Carsten Otte
    Cc: Nick Piggin
    Cc: Jared Hulbert
    Cc:
    Signed-off-by: Martin Schwidefsky
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Martin Schwidefsky
     
  • Align rekey_work. Even though it's infrequent, we may as well line it up.

    Signed-off-by: Anton Blanchard
    Acked-by: Matt Mackall
    Cc: Theodore Ts'o
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Anton Blanchard
     
  • Even though vmstat_work is marked deferrable, there are still benefits to
    aligning it. For certain applications we want to keep OS jitter as low as
    possible and aligning timers and work so they occur together can reduce
    their overall impact.

    Signed-off-by: Anton Blanchard
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Anton Blanchard
     
  • The dirtied_when value on an inode is supposed to represent the first time
    that an inode has one of its pages dirtied. This value is in units of
    jiffies. It's used in several places in the writeback code to determine
    when to write out an inode.

    The problem is that these checks assume that dirtied_when is updated
    periodically. If an inode is continuously being used for I/O it can be
    persistently marked as dirty and will continue to age. Once the time
    compared to is greater than or equal to half the maximum of the jiffies
    type, the logic of the time_*() macros inverts and the opposite of what is
    needed is returned. On 32-bit architectures that's just under 25 days
    (assuming HZ == 1000).

    As the least-recently dirtied inode, it'll end up being the first one that
    pdflush will try to write out. sync_sb_inodes does this check:

    /* Was this inode dirtied after sync_sb_inodes was called? */
    if (time_after(inode->dirtied_when, start))
    break;

    ...but now dirtied_when appears to be in the future. sync_sb_inodes bails
    out without attempting to write any dirty inodes. When this occurs,
    pdflush will stop writing out inodes for this superblock. Nothing can
    unwedge it until jiffies moves out of the problematic window.

    This patch fixes this problem by changing the checks against dirtied_when
    to also check whether it appears to be in the future. If it does, then we
    consider the value to be far in the past.

    This should shrink the problematic window of time to such a small period
    (30s) as not to matter.

    Signed-off-by: Jeff Layton
    Signed-off-by: Wu Fengguang
    Acked-by: Ian Kent
    Cc: Jens Axboe
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Layton
     
  • filp->f_flags is unsigned, so use that type for the local copy.

    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • clear_inode() will switch inode state from I_FREEING to I_CLEAR, and do so
    _outside_ of inode_lock. So any I_FREEING testing is incomplete without a
    coupled testing of I_CLEAR.

    So add I_CLEAR tests to drop_pagecache_sb(), generic_sync_sb_inodes() and
    add_dquot_ref().

    Masayoshi MIZUMA discovered the bug in drop_pagecache_sb() and Jan Kara
    reminds fixing the other two cases.

    Masayoshi MIZUMA has a nice panic flow:

    =====================================================================
    [process A] | [process B]
    | |
    | prune_icache() | drop_pagecache()
    | spin_lock(&inode_lock) | drop_pagecache_sb()
    | inode->i_state |= I_FREEING; | |
    | spin_unlock(&inode_lock) | V
    | | | spin_lock(&inode_lock)
    | V | |
    | dispose_list() | |
    | list_del() | |
    | clear_inode() | |
    | inode->i_state = I_CLEAR | |
    | | | V
    | | | if (inode->i_state & (I_FREEING|I_WILL_FREE))
    | | | continue;
    Reviewed-by: Jan Kara
    Signed-off-by: Wu Fengguang
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Wu Fengguang
     
  • Fix a number of issues with the per-MM VMA patch:

    (1) Make mmap_pages_allocated an atomic_long_t, just in case this is used on
    a NOMMU system with more than 2G pages. Makes no difference on a 32-bit
    system.

    (2) Report vma->vm_pgoff * PAGE_SIZE as a 64-bit value, not a 32-bit value,
    lest it overflow.

    (3) Move the allocation of the vm_area_struct slab back for fork.c.

    (4) Use KMEM_CACHE() for both vm_area_struct and vm_region slabs.

    (5) Use BUG_ON() rather than if () BUG().

    (6) Make the default validate_nommu_regions() a static inline rather than a
    #define.

    (7) Make free_page_series()'s objection to pages with a refcount != 1 more
    informative.

    (8) Adjust the __put_nommu_region() banner comment to indicate that the
    semaphore must be held for writing.

    (9) Limit the number of warnings about munmaps of non-mmapped regions.

    Reported-by: Andrew Morton
    Signed-off-by: David Howells
    Cc: Greg Ungerer
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Howells
     
  • nvidiafb recognizes geforcego 7300 chip as mobile

    Signed-off-by: Sergey Senozhatsky
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sergey Senozhatsky
     
  • This fixes a build failure with generic debug pagealloc:

    mm/debug-pagealloc.c: In function 'set_page_poison':
    mm/debug-pagealloc.c:8: error: 'struct page' has no member named 'debug_flags'
    mm/debug-pagealloc.c: In function 'clear_page_poison':
    mm/debug-pagealloc.c:13: error: 'struct page' has no member named 'debug_flags'
    mm/debug-pagealloc.c: In function 'page_poison':
    mm/debug-pagealloc.c:18: error: 'struct page' has no member named 'debug_flags'
    mm/debug-pagealloc.c: At top level:
    mm/debug-pagealloc.c:120: error: redefinition of 'kernel_map_pages'
    include/linux/mm.h:1278: error: previous definition of 'kernel_map_pages' was here
    mm/debug-pagealloc.c: In function 'kernel_map_pages':
    mm/debug-pagealloc.c:122: error: 'debug_pagealloc_enabled' undeclared (first use in this function)

    by fixing

    - debug_flags should be in struct page
    - define DEBUG_PAGEALLOC config option for all architectures

    Signed-off-by: Akinobu Mita
    Reported-by: Alexander Beregalov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     

02 Apr, 2009

9 commits

  • "struct tty_driver *" lies in m->private not in v which is
    SEQ_TOKEN_START which is 1 which is enough to trigger NULL dereference
    next line:

    BUG: unable to handle kernel NULL pointer dereference at 000000ad
    IP: [] uart_proc_show+0xe/0x2b0

    Noticed by Linus.

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: (29 commits)
    [IA64] BUG to BUG_ON changes
    [IA64] Fix typo/thinko in arch/ia64/sn/kernel/sn2/sn2_smp.c
    ia64: remove some warnings.
    ia64/xen: fix the link error.
    ia64/pv_ops/bp/xen: implemented binary patchable pv_cpu_ops.
    ia64/pv_ops/binary patch: define paravirt_dv_serialize_data() and suppress false positive warning.
    ia64/pv_ops/bp/module: support binary patching for kernel module.
    ia64/pv_ops: implement binary patching optimization for native.
    ia64/pv_op/binarypatch: add helper functions to support binary patching for paravirt_ops.
    ia64/pv_ops/xen/gate.S: xen gate page paravirtualization
    ia64/pv_ops: paravirtualize gate.S.
    ia64/pv_ops: move down __kernel_syscall_via_epc.
    ia64/pv_ops/xen: define xen specific gate page.
    ia64/pv_ops: gate page paravirtualization.
    ia64/pv_ops/xen/pv_time_ops: implement sched_clock.
    ia64/pv_ops/pv_time_ops: add sched_clock hook.
    ia64/pv_ops/xen: paravirtualize read/write ar.itc and ar.itm
    ia64/pv_ops: paravirtualize mov = ar.itc.
    ia64/pv_ops/pvchecker: support mov = ar.itc paravirtualization
    ia64/pv_ops: paravirtualize fsys.S.
    ...

    Linus Torvalds
     
  • …git/tip/linux-2.6-tip

    * 'x86-setup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86, setup: guard against pre-ACPI 3 e820 code not updating %ecx

    Linus Torvalds
     
  • Commit 64ef8957986f6a04f61e7c95fa6ffeb3a86a6661 ("qeth: remove EDDP")
    removed the qeth_core_offl.[hc] files, but ended up doing so by just
    patching them to zero size, rather than removing them properly.

    Actually remove the files.

    Reported-by: Andrew Price
    Cc: Frank Blaschka
    Cc: David S. Miller
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Impact: BIOS bug safety

    For pre-ACPI 3 BIOSes, pre-initialize the end of the e820 buffer just
    in case the BIOS returns an unchanged %ecx but without actually
    touching the ACPI 3 extended flags field.

    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     
  • * 'x86/setup' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86, setup: ACPI 3, BIOS workaround for E820-probing code
    x86, setup: preemptively save/restore edi and ebp around INT 15 E820
    x86, setup: mark %esi as clobbered in E820 BIOS call

    Linus Torvalds
     
  • * 'for-linus' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (58 commits)
    SUNRPC: Ensure IPV6_V6ONLY is set on the socket before binding to a port
    NSM: Fix unaligned accesses in nsm_init_private()
    NFS: Simplify logic to compare socket addresses in client.c
    NFS: Start PF_INET6 callback listener only if IPv6 support is available
    lockd: Start PF_INET6 listener only if IPv6 support is available
    SUNRPC: Remove CONFIG_SUNRPC_REGISTER_V4
    SUNRPC: rpcb_register() should handle errors silently
    SUNRPC: Simplify kernel RPC service registration
    SUNRPC: Simplify svc_unregister()
    SUNRPC: Allow callers to pass rpcb_v4_register a NULL address
    SUNRPC: rpcbind actually interprets r_owner string
    SUNRPC: Clean up address type casts in rpcb_v4_register()
    SUNRPC: Don't return EPROTONOSUPPORT in svc_register()'s helpers
    SUNRPC: Use IPv4 loopback for registering AF_INET6 kernel RPC services
    SUNRPC: Set IPV6ONLY flag on PF_INET6 RPC listener sockets
    NFS: Revert creation of IPv6 listeners for lockd and NFSv4 callbacks
    SUNRPC: Remove @family argument from svc_create() and svc_create_pooled()
    SUNRPC: Change svc_create_xprt() to take a @family argument
    SUNRPC: svc_setup_socket() gets protocol family from socket
    SUNRPC: Pass a family argument to svc_register()
    ...

    Linus Torvalds
     
  • * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (33 commits)
    ext4: Regularize mount options
    ext4: fix locking typo in mballoc which could cause soft lockup hangs
    ext4: fix typo which causes a memory leak on error path
    jbd2: Update locking coments
    ext4: Rename pa_linear to pa_type
    ext4: add checks of block references for non-extent inodes
    ext4: Check for an valid i_mode when reading the inode from disk
    ext4: Use WRITE_SYNC for commits which are caused by fsync()
    ext4: Add auto_da_alloc mount option
    ext4: Use struct flex_groups to calculate get_orlov_stats()
    ext4: Use atomic_t's in struct flex_groups
    ext4: remove /proc tuning knobs
    ext4: Add sysfs support
    ext4: Track lifetime disk writes
    ext4: Fix discard of inode prealloc space with delayed allocation.
    ext4: Automatically allocate delay allocated blocks on rename
    ext4: Automatically allocate delay allocated blocks on close
    ext4: add EXT4_IOC_ALLOC_DA_BLKS ioctl
    ext4: Simplify delalloc code by removing mpage_da_writepages()
    ext4: Save stack space by removing fake buffer heads
    ...

    Linus Torvalds
     
  • Trond Myklebust