27 May, 2011

4 commits

  • When configfs_register_subsystem() fails, we unregister too many
    subsystems in configfs_example_init. Decrement i by one to not unregister
    non-registered subsystem.

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Jiri Slaby
    Cc: Joel Becker
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jiri Slaby
     
  • * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: (28 commits)
    Ocfs2: Teach local-mounted ocfs2 to handle unwritten_extents correctly.
    ocfs2/dlm: Do not migrate resource to a node that is leaving the domain
    ocfs2/dlm: Add new dlm message DLM_BEGIN_EXIT_DOMAIN_MSG
    Ocfs2/move_extents: Set several trivial constraints for threshold.
    Ocfs2/move_extents: Let defrag handle partial extent moving.
    Ocfs2/move_extents: move/defrag extents within a certain range.
    Ocfs2/move_extents: helper to calculate the defraging length in one run.
    Ocfs2/move_extents: move entire/partial extent.
    Ocfs2/move_extents: helpers to update the group descriptor and global bitmap inode.
    Ocfs2/move_extents: helper to probe a proper region to move in an alloc group.
    Ocfs2/move_extents: helper to validate and adjust moving goal.
    Ocfs2/move_extents: find the victim alloc group, where the given #blk fits.
    Ocfs2/move_extents: defrag a range of extent.
    Ocfs2/move_extents: move a range of extent.
    Ocfs2/move_extents: lock allocators and reserve metadata blocks and data clusters for extents moving.
    Ocfs2/move_extents: Add basic framework and source files for extent moving.
    Ocfs2/move_extents: Adding new ioctl code 'OCFS2_IOC_MOVE_EXT' to ocfs2.
    Ocfs2/refcounttree: Publicize couple of funcs from refcounttree.c
    Ocfs2: Add a new code 'OCFS2_INFO_FREEFRAG' for o2info ioctl.
    Ocfs2: Add a new code 'OCFS2_INFO_FREEINODE' for o2info ioctl.
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://oss.sgi.com/xfs/xfs:
    xfs: correctly decrement the extent buffer index in xfs_bmap_del_extent
    xfs: check for valid indices in xfs_iext_get_ext and xfs_iext_idx_to_irec
    xfs: fix up asserts in xfs_iflush_fork
    xfs: do not do pointer arithmetic on extent records
    xfs: do not use unchecked extent indices in xfs_bunmapi
    xfs: do not use unchecked extent indices in xfs_bmapi
    xfs: do not use unchecked extent indices in xfs_bmap_add_extent_*
    xfs: remove if_lastex
    xfs: remove the unused XFS_BMAPI_RSVBLOCKS flag
    xfs: do not discard alloc btree blocks
    xfs: add online discard support

    Linus Torvalds
     
  • * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (61 commits)
    jbd2: Add MAINTAINERS entry
    jbd2: fix a potential leak of a journal_head on an error path
    ext4: teach ext4_ext_split to calculate extents efficiently
    ext4: Convert ext4 to new truncate calling convention
    ext4: do not normalize block requests from fallocate()
    ext4: enable "punch hole" functionality
    ext4: add "punch hole" flag to ext4_map_blocks()
    ext4: punch out extents
    ext4: add new function ext4_block_zero_page_range()
    ext4: add flag to ext4_has_free_blocks
    ext4: reserve inodes and feature code for 'quota' feature
    ext4: add support for multiple mount protection
    ext4: ensure f_bfree returned by ext4_statfs() is non-negative
    ext4: protect bb_first_free in ext4_trim_all_free() with group lock
    ext4: only load buddy bitmap in ext4_trim_fs() when it is needed
    jbd2: Fix comment to match the code in jbd2__journal_start()
    ext4: fix waiting and sending of a barrier in ext4_sync_file()
    jbd2: Add function jbd2_trans_will_send_data_barrier()
    jbd2: fix sending of data flush on journal commit
    ext4: fix ext4_ext_fiemap_cb() to handle blocks before request range correctly
    ...

    Linus Torvalds
     

26 May, 2011

2 commits


25 May, 2011

4 commits

  • Manually adjusting the smp_affinity for IRQ's becomes unwieldy when the
    cpu count is large.

    Setting smp affinity to cpus 256 to 263 would be:

    echo 000000ff,00000000,00000000,00000000,00000000,00000000,00000000,00000000 > smp_affinity

    instead of:

    echo 256-263 > smp_affinity_list

    Think about what it looks like for cpus around say, 4088 to 4095.

    We already have many alternate "list" interfaces:

    /sys/devices/system/cpu/cpuX/indexY/shared_cpu_list
    /sys/devices/system/cpu/cpuX/topology/thread_siblings_list
    /sys/devices/system/cpu/cpuX/topology/core_siblings_list
    /sys/devices/system/node/nodeX/cpulist
    /sys/devices/pci***/***/local_cpulist

    Add a companion interface, smp_affinity_list to use cpu lists instead of
    cpu maps. This conforms to other companion interfaces where both a map
    and a list interface exists.

    This required adding a bitmap_parselist_user() function in a manner
    similar to the bitmap_parse_user() function.

    [akpm@linux-foundation.org: make __bitmap_parselist() static]
    Signed-off-by: Mike Travis
    Cc: Thomas Gleixner
    Cc: Jack Steiner
    Cc: Lee Schermerhorn
    Cc: Andy Shevchenko
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mike Travis
     
  • Update documentation pointers to include virtfs publication, 9p RFC
    as well as updated list of servers and alternative clients.

    Signed-off-by: Eric Van Hensbergen

    Eric Van Hensbergen
     
  • * 'linux-next' of git://git.infradead.org/ubifs-2.6: (52 commits)
    UBIFS: switch to dynamic printks
    UBIFS: fix kernel-doc comments
    UBIFS: fix extremely rare mount failure
    UBIFS: simplify LEB recovery function further
    UBIFS: always cleanup the recovered LEB
    UBIFS: clean up LEB recovery function
    UBIFS: fix-up free space on mount if flag is set
    UBIFS: add the fixup function
    UBIFS: add a superblock flag for free space fix-up
    UBIFS: share the next_log_lnum helper
    UBIFS: expect corruption only in last journal head LEBs
    UBIFS: synchronize write-buffer before switching to the next bud
    UBIFS: remove BUG statement
    UBIFS: change bud replay function conventions
    UBIFS: substitute the replay tree with a replay list
    UBIFS: simplify replay
    UBIFS: store free and dirty space in the bud replay entry
    UBIFS: remove unnecessary stack variable
    UBIFS: double check that buds are replied in order
    UBIFS: make 2 functions static
    ...

    Linus Torvalds
     
  • Now that we have reliably tracking of deleted extents in a
    transaction we can easily implement "online" discard support
    which calls blkdev_issue_discard once a transaction commits.

    The actual discard is a two stage operation as we first have
    to mark the busy extent as not available for reuse before we
    can start the actual discard. Note that we don't bother
    supporting discard for the non-delaylog mode.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Alex Elder

    Christoph Hellwig
     

24 May, 2011

1 commit


23 May, 2011

1 commit

  • Switch to debugging using dynamic printk (pr_debug()). There is no good reason
    to carry custom debugging prints if there is so cool and powerful generic
    dynamic printk infrastructure, see Documentation/dynamic-debug-howto.txt. With
    dynamic printks we can switch on/of individual prints, per-file, per-function
    and per format messages. This means that instead of doing old-fashioned

    echo 1 > /sys/module/ubifs/parameters/debug_msgs

    to enable general messages, we can do:

    echo 'format "UBIFS DBG gen" +ptlf' > control

    to enable general messages and additionally ask the dynamic printk
    infrastructure to print process ID, line number and function name. So there is
    no reason to keep UBIFS-specific crud if there is more powerful generic thing.

    Signed-off-by: Artem Bityutskiy

    Artem Bityutskiy
     

14 May, 2011

1 commit

  • UBIFS can force itself to use the 'in-the-gaps' commit method - the last resort
    method which is normally invoced very very rarely. Currently this "force
    int-the-gaps" debugging feature is a separate test mode. But it is a bit saner
    to make it to be the "general" self-test check instead.

    This patch is just a clean-up which should make the debugging code look a bit
    nicer and easier to use - we have way too many debugging options.

    Signed-off-by: Artem Bityutskiy

    Artem Bityutskiy
     

06 May, 2011

1 commit

  • If RCU priority boosting is to be meaningful, callback invocation must
    be boosted in addition to preempted RCU readers. Otherwise, in presence
    of CPU real-time threads, the grace period ends, but the callbacks don't
    get invoked. If the callbacks don't get invoked, the associated memory
    doesn't get freed, so the system is still subject to OOM.

    But it is not reasonable to priority-boost RCU_SOFTIRQ, so this commit
    moves the callback invocations to a kthread, which can be boosted easily.

    Also add comments and properly synchronized all accesses to
    rcu_cpu_kthread_task, as suggested by Lai Jiangshan.

    Signed-off-by: Paul E. McKenney
    Signed-off-by: Paul E. McKenney
    Reviewed-by: Josh Triplett

    Paul E. McKenney
     

02 May, 2011

1 commit


31 Mar, 2011

1 commit


26 Mar, 2011

1 commit

  • * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (43 commits)
    ext4: fix a BUG in mb_mark_used during trim.
    ext4: unused variables cleanup in fs/ext4/extents.c
    ext4: remove redundant set_buffer_mapped() in ext4_da_get_block_prep()
    ext4: add more tracepoints and use dev_t in the trace buffer
    ext4: don't kfree uninitialized s_group_info members
    ext4: add missing space in printk's in __ext4_grp_locked_error()
    ext4: add FITRIM to compat_ioctl.
    ext4: handle errors in ext4_clear_blocks()
    ext4: unify the ext4_handle_release_buffer() api
    ext4: handle errors in ext4_rename
    jbd2: add COW fields to struct jbd2_journal_handle
    jbd2: add the b_cow_tid field to journal_head struct
    ext4: Initialize fsync transaction ids in ext4_new_inode()
    ext4: Use single thread to perform DIO unwritten convertion
    ext4: optimize ext4_bio_write_page() when no extent conversion is needed
    ext4: skip orphan cleanup if fs has unknown ROCOMPAT features
    ext4: use the nblocks arg to ext4_truncate_restart_trans()
    ext4: fix missing iput of root inode for some mount error paths
    ext4: make FIEMAP and delayed allocation play well together
    ext4: suppress verbose debugging information if malloc-debug is off
    ...

    Fi up conflicts in fs/ext4/super.c due to workqueue changes

    Linus Torvalds
     

25 Mar, 2011

2 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
    fs: simplify iget & friends
    fs: pull inode->i_lock up out of writeback_single_inode
    fs: rename inode_lock to inode_hash_lock
    fs: move i_wb_list out from under inode_lock
    fs: move i_sb_list out from under inode_lock
    fs: remove inode_lock from iput_final and prune_icache
    fs: Lock the inode LRU list separately
    fs: factor inode disposal
    fs: protect inode->i_state with inode->i_lock
    autofs4: Do not potentially dereference NULL pointer returned by fget() in autofs_dev_ioctl_setpipefd()
    autofs4 - remove autofs4_lock
    autofs4 - fix d_manage() return on rcu-walk
    autofs4 - fix autofs4_expire_indirect() traversal
    autofs4 - fix dentry leak in autofs4_expire_direct()
    autofs4 - reinstate last used update on access
    vfs - check non-mountpoint dentry might block in __follow_mount_rcu()

    Linus Torvalds
     
  • Now that inode state changes are protected by the inode->i_lock and
    the inode LRU manipulations by the inode_lru_lock, we can remove the
    inode_lock from prune_icache and the initial part of iput_final().

    instead of using the inode_lock to protect the inode during
    iput_final, use the inode->i_lock instead. This protects the inode
    against new references being taken while we change the inode state
    to I_FREEING, as well as preventing prune_icache from grabbing the
    inode while we are manipulating it. Hence we no longer need the
    inode_lock in iput_final prior to setting I_FREEING on the inode.

    For prune_icache, we no longer need the inode_lock to protect the
    LRU list, and the inodes themselves are protected against freeing
    races by the inode->i_lock. Hence we can lift the inode_lock from
    prune_icache as well.

    Signed-off-by: Dave Chinner
    Signed-off-by: Al Viro

    Dave Chinner
     

24 Mar, 2011

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus:
    Squashfs: Use vmalloc rather than kmalloc for zlib workspace
    Squashfs: handle corruption of directory structure
    Squashfs: wrap squashfs_mount() definition
    Squashfs: xz_wrapper doesn't need to include squashfs_fs_i.h anymore
    Squashfs: Update documentation to include compression options
    Squashfs: Update Kconfig help text to include xz compression
    Squashfs: add compression options support to xz decompressor
    Squashfs: extend decompressor framework to handle compression options

    Linus Torvalds
     
  • * 'for-linus' of git://git.open-osd.org/linux-open-osd:
    exofs: deprecate the commands pending counter
    exofs: Write sbi->s_nextid as part of the Create command
    exofs: Add option to mount by osdname
    exofs: Override read-ahead to align on stripe_size
    exofs: simple fsync race fix
    exofs: Optimize read_4_write
    exofs: Trivial: fix some indentation and debug prints
    exofs: Remove redundant unlikely()

    Linus Torvalds
     

23 Mar, 2011

1 commit

  • ADFS (FileCore) storage complies with the RISC OS filetype specification
    (12 bits of file type information is stored in the file load address,
    rather than using a file extension). The existing driver largely ignores
    this information and does not present it to the end user.

    It is desirable that stored filetypes be made visible to the end user to
    facilitate a precise copy of data and metadata from a hard disc (or image
    thereof) into a RISC OS emulator (such as RPCEmu) or to a network share
    which can be accessed by real Acorn systems.

    This patch implements a per-mount filetype suffix option (use -o
    ftsuffix=1) to present any filetype as a ,xyz hexadecimal suffix on each
    file. This type suffix is compatible with that used by RISC OS systems
    that access network servers using NFS client software and by RPCemu's host
    filing system.

    Signed-off-by: Stuart Swales
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stuart Swales
     

22 Mar, 2011

1 commit

  • * 'for-linus' of git://oss.sgi.com/xfs/xfs: (23 commits)
    xfs: don't name variables "panic"
    xfs: factor agf counter updates into a helper
    xfs: clean up the xfs_alloc_compute_aligned calling convention
    xfs: kill support/debug.[ch]
    xfs: Convert remaining cmn_err() callers to new API
    xfs: convert the quota debug prints to new API
    xfs: rename xfs_cmn_err_fsblock_zero()
    xfs: convert xfs_fs_cmn_err to new error logging API
    xfs: kill xfs_fs_mount_cmn_err() macro
    xfs: kill xfs_fs_repair_cmn_err() macro
    xfs: convert xfs_cmn_err to xfs_alert_tag
    xfs: Convert xlog_warn to new logging interface
    xfs: Convert linux-2.6/ files to new logging interface
    xfs: introduce new logging API.
    xfs: zero proper structure size for geometry calls
    xfs: enable delaylog by default
    xfs: more sensible inode refcounting for ialloc
    xfs: stop using xfs_trans_iget in the RT allocator
    xfs: check if device support discard in xfs_ioc_trim()
    xfs: prevent leaking uninitialized stack memory in FSGEOMETRY_V1
    ...

    Linus Torvalds
     

19 Mar, 2011

3 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
    fs: call security_d_instantiate in d_obtain_alias V2
    lose 'mounting_here' argument in ->d_manage()
    don't pass 'mounting_here' flag to follow_down()
    change the locking order for namespace_sem
    fix deadlock in pivot_root()
    vfs: split off vfsmount-related parts of vfs_kern_mount()
    Some fixes for pstore
    kill simple_set_mnt()

    Linus Torvalds
     
  • * 'linux-next' of git://git.infradead.org/ubifs-2.6: (25 commits)
    UBIFS: clean-up commentaries
    UBIFS: save 128KiB or more RAM
    UBIFS: allocate orphans scan buffer on demand
    UBIFS: allocate lpt dump buffer on demand
    UBIFS: allocate ltab checking buffer on demand
    UBIFS: allocate scanning buffer on demand
    UBIFS: allocate dump buffer on demand
    UBIFS: do not check data crc by default
    UBIFS: simplify UBIFS Kconfig menu
    UBIFS: print max. index node size
    UBIFS: handle allocation failures in UBIFS write path
    UBIFS: use max_write_size during recovery
    UBIFS: use max_write_size for write-buffers
    UBIFS: introduce write-buffer size field
    UBI: incorporate LEB offset information
    UBIFS: incorporate maximum write size
    UBI: provide LEB offset information
    UBI: incorporate maximum write size
    UBIFS: fix LEB number in printk
    UBIFS: restrict world-writable debugfs files
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (47 commits)
    doc: CONFIG_UNEVICTABLE_LRU doesn't exist anymore
    Update cpuset info & webiste for cgroups
    dcdbas: force SMI to happen when expected
    arch/arm/Kconfig: remove one to many l's in the word.
    asm-generic/user.h: Fix spelling in comment
    drm: fix printk typo 'sracth'
    Remove one to many n's in a word
    Documentation/filesystems/romfs.txt: fixing link to genromfs
    drivers:scsi Change printk typo initate -> initiate
    serial, pch uart: Remove duplicate inclusion of linux/pci.h header
    fs/eventpoll.c: fix spelling
    mm: Fix out-of-date comments which refers non-existent functions
    drm: Fix printk typo 'failled'
    coh901318.c: Change initate to initiate.
    mbox-db5500.c Change initate to initiate.
    edac: correct i82975x error-info reported
    edac: correct i82975x mci initialisation
    edac: correct commented info
    fs: update comments to point correct document
    target: remove duplicate include of target/target_core_device.h from drivers/target/target_core_hba.c
    ...

    Trivial conflict in fs/eventpoll.c (spelling vs addition)

    Linus Torvalds
     

18 Mar, 2011

2 commits

  • it's always false...

    Signed-off-by: Al Viro

    Al Viro
     
  • * 'nfs-for-2.6.39' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (54 commits)
    RPC: killing RPC tasks races fixed
    xprt: remove redundant check
    SUNRPC: Convert struct rpc_xprt to use atomic_t counters
    SUNRPC: Ensure we always run the tk_callback before tk_action
    sunrpc: fix printk format warning
    xprt: remove redundant null check
    nfs: BKL is no longer needed, so remove the include
    NFS: Fix a warning in fs/nfs/idmap.c
    Cleanup: Factor out some cut-and-paste code.
    cleanup: save 60 lines/100 bytes by combining two mostly duplicate functions.
    NFS: account direct-io into task io accounting
    gss:krb5 only include enctype numbers in gm_upcall_enctypes
    RPCRDMA: Fix FRMR registration/invalidate handling.
    RPCRDMA: Fix to XDR page base interpretation in marshalling logic.
    NFSv4: Send unmapped uid/gids to the server when using auth_sys
    NFSv4: Propagate the error NFS4ERR_BADOWNER to nfs4_do_setattr
    NFSv4: cleanup idmapper functions to take an nfs_server argument
    NFSv4: Send unmapped uid/gids to the server if the idmapper fails
    NFSv4: If the server sends us a numeric uid/gid then accept it
    NFSv4.1: reject zero layout with zeroed stripe unit
    ...

    Linus Torvalds
     

17 Mar, 2011

2 commits


15 Mar, 2011

1 commit

  • If /dev/osd* devices are shuffled because more devices
    where added, and/or login order has changed. It is hard to
    mount the FS you want.

    Add an option to mount by osdname. osdname is any osd-device's
    osdname as specified to the mkfs.exofs command when formatting
    the osd-devices.
    The new mount format is:
    OPT="osdname=$UUID0,pid=$PID,_netdev"
    mount -t exofs -o $OPT $DEV_OSD0 $MOUNTDIR

    if "osdname=" is specified in options above $DEV_OSD0 is
    ignored and can be empty.

    Also while at it: Removed some old unused Opt_* enums.

    Signed-off-by: Boaz Harrosh

    Boaz Harrosh
     

12 Mar, 2011

1 commit


11 Mar, 2011

1 commit

  • Change the default UBIFS behavior WRT data CRC checking. Currently,
    UBIFS checks data CRC when reading, which slows it down quite a bit,
    and this is the default option. However, it looks like in average
    user does not need this feature and would prefer faster read speed
    over extra reliability. And this seems to be de-facto standard that
    file-systems do not check data CRC every time they read from the
    media.

    Thus, make UBIFS default behavior so that it does not check data
    CRC. This corresponds to the no_chk_data_crc mount option. Those users
    who need extra protection can always enable it using the chk_data_crc
    option.

    Please, read more information about this feature here:
    http://www.linux-mtd.infradead.org/doc/ubifs.html#L_checksumming

    Signed-off-by: Artem Bityutskiy

    Artem Bityutskiy
     

01 Mar, 2011

1 commit


23 Feb, 2011

1 commit


22 Feb, 2011

1 commit

  • Add documentation for mount options and ioctls to
    Documentation/filesystem/ext4.txt, which has not been udpated for some
    time. Also add for ext4 sysfs tunables to the
    Documentation/ABI/testing/sysfs-fs-ext4 file, and fix a few
    typographical errors in that file.

    https://bugzilla.kernel.org/show_bug.cgi?id=9423

    Signed-off-by: Lukas Czerner
    Signed-off-by: "Theodore Ts'o"

    Lukas Czerner
     

18 Feb, 2011

1 commit


04 Feb, 2011

2 commits


31 Jan, 2011

1 commit

  • In ntfs_mft_record_alloc() when mapping the new extent mft record with
    map_extent_mft_record() we overwrite @m with the return value and on
    error, we then try to use the old @m but that is no longer there as @m
    now contains an error code instead so we crash when dereferencing the
    error code as if it were a pointer.

    The simple fix is to use a temporary variable to store the return value
    thus preserving the original @m for later use. This is a backport from
    the commercial Tuxera-NTFS driver and is well tested...

    Thanks go to Julia Lawall for pointing this out (whilst I had fixed it
    in the commercial driver I had failed to fix it in the Linux kernel).

    Signed-off-by: Anton Altaparmakov
    Signed-off-by: Linus Torvalds

    Anton Altaparmakov