29 Apr, 2008

8 commits

  • Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • psr is not a good name for local variable in macro body when it
    has a good chance of being the argument of said macro (actually
    is at least in one place)

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • * EXTRA_CFLAGS do not apply for *.S
    * don't bother with symlinks to ../lib/mem*.S, just add ../lib/mem*.o
    to object list

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • Signed-off-by: Al Viro
    Acked-by: David Howells
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    sparc: video drivers: add facility level
    sparc: tcx.c make tcx_init and tcx_exit static
    sparc: ffb.c make ffb_init and ffb_exit static
    sparc: cg14.c make cg14_init and cg15_exit static
    sparc: bw2.c fix bw2_exit
    sparc64: Fix accidental syscall restart on child return from clone/fork/vfork.
    sparc64: Clean up handling of pt_regs trap type encoding.
    sparc: Remove old style signal frame support.
    sparc64: Kill bogus RT_ALIGNEDSZ macro from signal.c
    sparc: sunzilog.c remove unused argument
    sparc: fix drivers/video/tcx.c warning
    sparc64: Kill unused local ISA bus layer.
    input: Rewrite sparcspkr device probing.
    sparc64: Do not ignore 'pmu' device ranges.
    sparc64: Kill ISA_FLOPPY_WORKS code.
    sparc64: Kill CONFIG_SPARC32_COMPAT
    sparc64: Cleanups and corrections for arch/sparc64/Kconfig
    sparc64: Fix wedged irq regression.

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    iwlwifi: Allow building iwl3945 without iwl4965.
    wireless: Fix compile error with wifi & leds
    tcp: Fix slab corruption with ipv6 and tcp6fuzz
    ipv4/ipv6 compat: Fix SSM applications on 64bit kernels.
    [IPSEC]: Use digest_null directly for auth
    sunrpc: fix missing kernel-doc
    can: Fix copy_from_user() results interpretation
    Revert "ipv6: Fix typo in net/ipv6/Kconfig"
    tipc: endianness annotations
    ipv6: result of csum_fold() is already 16bit, no need to cast
    [XFRM] AUDIT: Fix flowlabel text format ambibuity.

    Linus Torvalds
     
  • this option has been the default on a wide range of distributions
    for a long time - time to make it non-experimental.

    Signed-off-by: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt:
    hrtimer: timeout too long when using HRTIMER_CB_SOFTIRQ

    Linus Torvalds
     

28 Apr, 2008

32 commits

  • Print a warning when a kernel-doc comment block ends with text on the same
    line as the ending comment characters, e.g.:

    * this text is lost. */

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • I saw this problem recently. With this kernel-doc:

    * Note: some important info
    *
    * Note: other important info

    kernel-doc uses the "section name" (preceding the ':', like "Note") as a hash
    key for storing the descriptive text ("blah important info"). It is (was)
    possible to have duplicate (colliding) section names, without any kind of
    warning or error.

    kernel-doc happily used the latter descriptive text for all instances of
    printing the descriptive text and the former important info
    was lost.

    One way to "fix" this is to modify the kernel-doc comments, e.g.:

    * Note1: foo bar
    *
    * Note.2: blah zay

    For now, kernel-doc will signal an error when it sees colliding section names
    like this.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Annoying gcc warning:

    fs/fat/inode.c: In function 'fat_fill_super':
    fs/fat/inode.c:1222: warning: comparison is always false due to limited range of data type

    Change it to compare with 4K instead of PAGE_CACHE_SIZE, as suggested
    by OGAWA-san.

    [FAT spec says: logical_sector_size should be 512, 1024, 2048 4096]
    So, at least for now, we limit it to 4096.

    Signed-off-by: Olof Johansson
    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Olof Johansson
     
  • I received a complaint that some FAT formated medias (e.g. sd memory cards)
    trigger a "unknown partition table" message even though there is no partition
    table and they work correctly, while in general (when e.g. formated with
    mkdosfs or even Windows Vista) this message is not shown.

    Currently this seems only to happen when the medias get formatted with Windows
    XP (and possibly Win 2000). Then the boot indicator byte contains garbage
    (part of text message) and so do the other parts checked by msdos_paritition
    which then later triggers this message.

    References: novell bug #364365

    Most fat formatted media without partition table contains zeros in the boot
    indication and the other tested bytes and so falls through the checks in
    msdos_partition, leading it to return with 1 (all is fine).

    But some (e.g. WinXP formatted) fat fomated medias don't use boot_ind and so
    the check fails and causes a "unkown partition table" warning eventhough there
    is none and everything would be fine.

    This additional check directly verifies if there is a fat formatted medium
    without a partition table.

    Signed-off-by: Frank Seidel
    Cc: Andreas Dilger
    Acked-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Frank Seidel
     
  • The on-disk media specification field in FAT is only 8-bits, so testing for

    Acked-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • __getname() is faster than __get_free_page(). Use it.

    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • This patch fix the problem that the buffer allocated for convert of unicode to
    utf8 in fat/dir.c is too small.

    And cannot handle filename with 255 asian characters when mounted with utf8
    options.

    Also it fix the filename length limitation checking in vfat/namei.c that the
    filename length should be checked against the number of converted unicode
    characters.

    Not the length before NLS/UTF8 converted.

    Signed-off-by: Keith Mok
    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Keith Mok
     
  • On the systems, ftruncate() which expand size for FAT became the cause
    of OOM. The cont_expand_zero() filled all memory with dirty pages,
    and since disk is very slow, limit of page scanning was exceeded, then
    it triggered OOM.

    This adds balance_dirty_pages_ratelimited() to avoid filling memory
    with dirty pages.

    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • This removes unneeded fat_clusters_flush().

    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • Currently, free_clusters is not updated until it is trusted, because
    Windows doesn't update it correctly.

    But if user is using FAT driver of Linux, it updates free_clusters
    correctly. Instead, this updates it even if it's untrusted, so if
    free_clustes is correct, now keep correct value.

    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • Normally utime(2) checks current process is owner of the file, or it
    has CAP_FOWNER capability. But FAT filesystem doesn't have uid/gid as
    on disk info, so normal check is too unflexible.

    With this option you can relax it.

    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • Fix fat_setattr() on the case of showexec option. If user specified
    showexec option, inode->i_mode may not have S_IXUGO. This just use
    inode->i_mode to fix it.

    And with this patch, we don't allow chmod() on memory inode, it's just
    bad behaviour. IOW, we allow changing S_IWUGO only which can be stored
    to disk.

    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • - Rename fat_notify_change() to fat_setattr()
    - check_mode() cleanup
    - Change layout of code

    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • FAT doesn't need to check bad inode anymore.

    Signed-off-by: OGAWA Hirofumi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • Quota files cannot have tails because quota_write and quota_read functions do
    not support them. So far when quota files did have tail, we just refused to
    turn quotas on it. Sadly this check has been wrong and so there are now
    plenty installations where quota files don't have NOTAIL flag set and so now
    after fixing the check, they suddently fail to turn quotas on. Since it's
    easy to unpack the tail from kernel, do this from reiserfs_quota_on() which
    solves the problem and is generally nicer to users anyway.

    Signed-off-by: Jan Kara
    Reported-by:
    Cc: Jeff Mahoney
    Cc: Chris Mason
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jan Kara
     
  • Call dquot_drop() from reiserfs_dquot_drop() even if we fail to start a
    transaction. Otherwise we never get to dropping references to quota
    structures from the inode and umount will hang indefinitely.

    Signed-off-by: Jan Kara
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jan Kara
     
  • __FUNCTION__ is gcc-specific, use __func__

    Signed-off-by: Harvey Harrison
    Cc: Chris Mason
    Cc: Jeff Mahoney
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • fs/reiserfs/do_balan.c:1467:10: warning: symbol 'ret_val' shadows an earlier one
    fs/reiserfs/do_balan.c:275:6: originally declared here
    fs/reiserfs/do_balan.c:1471:23: warning: symbol 'ih' shadows an earlier one
    fs/reiserfs/do_balan.c:249:67: originally declared here

    Signed-off-by: Harvey Harrison
    Cc: Chris Mason
    Cc: Jeff Mahoney
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • fs/reiserfs/journal.c:4319:2: warning: returning void-valued expression

    Signed-off-by: Harvey Harrison
    Cc: Chris Mason
    Cc: Jeff Mahoney
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • replace all:
    little_endian_variable = cpu_to_leX(leX_to_cpu(little_endian_variable) +
    expression_in_cpu_byteorder);
    with:
    leX_add_cpu(&little_endian_variable, expression_in_cpu_byteorder);
    generated with semantic patch

    Signed-off-by: Marcin Slusarz
    Cc: Jeff Mahoney
    Cc: Chris Mason
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Marcin Slusarz
     
  • Let's use bsize instead.
    fs/udf/namei.c:960:12: warning: symbol 'elen' shadows an earlier one
    fs/udf/namei.c:937:15: originally declared here

    Signed-off-by: Harvey Harrison
    Cc: Jan Kara
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • Signed-off-by: Harvey Harrison
    Cc: Evgeniy Dushistov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • remove fs64_add and fs64_sub - they probably weren't ever used because
    their prototypes used u32 instead of __fs64

    Signed-off-by: Marcin Slusarz
    Cc: Evgeniy Dushistov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Marcin Slusarz
     
  • __FUNCTION__ is gcc-specific, use __func__

    Signed-off-by: Harvey Harrison
    Cc: Jan Engelhardt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • replace all:
    big/little_endian_variable = cpu_to_[bl]eX([bl]eX_to_cpu(big/little_endian_variable) +
    expression_in_cpu_byteorder);
    with:
    [bl]eX_add_cpu(&big/little_endian_variable, expression_in_cpu_byteorder);
    generated with semantic patch

    Signed-off-by: Marcin Slusarz
    Cc: Evgeniy Dushistov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Marcin Slusarz
     
  • __FUNCTION__ is gcc-specific, use __func__

    Signed-off-by: Harvey Harrison
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • __FUNCTION__ is gcc-specific, use __func__

    Signed-off-by: Harvey Harrison
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • When quota is disabled, we should not print 'journaled quota not supported'
    when user tried to mount non-journaled quota. Also fix typo in the message.

    Signed-off-by: Jan Kara
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jan Kara
     
  • If the block allocator gets blocks out of system zone ext3 calls ext3_error.
    But if the file system is mounted with errors=continue retry block allocation.
    We need to mark the system zone blocks as in use to make sure retry don't
    pick them again

    System zone is the block range mapping block bitmap, inode bitmap and inode
    table.

    [akpm@linux-foundation.org: fix typo in comment]
    Signed-off-by: Aneesh Kumar K.V
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Aneesh Kumar K.V
     
  • Call dquot_drop() from ext3_dquot_drop() even if we fail to start a
    transaction. Otherwise we never get to dropping references to quota
    structures from the inode and umount will hang indefinitely. Thanks to
    Payphone LIOU for spotting the problem.

    Signed-off-by: Jan Kara
    Cc: Payphone LIOU
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jan Kara
     
  • Make ext3 update mtime and ctime of the directory into which we move file even
    if the directory entry already exists.

    Signed-off-by: Jan Kara
    Cc: Al Viro
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jan Kara
     
  • There are several cases where the running transaction can get buffers added to
    its BJ_Metadata list which it never dirtied, which makes its t_nr_buffers
    counter end up larger than its t_outstanding_credits counter.

    This will cause issues when starting new transactions as while we are logging
    buffers we decrement t_outstanding_buffers, so when t_outstanding_buffers goes
    negative, we will report that we need less space in the journal than we
    actually need, so transactions will be started even though there may not be
    enough room for them. In the worst case scenario (which admittedly is almost
    impossible to reproduce) this will result in the journal running out of space.

    The fix is to only
    refile buffers from the committing transaction to the running transactions
    BJ_Modified list when b_modified is set on that journal, which is the only way
    to be sure if the running transaction has modified that buffer.

    This patch also fixes an accounting error in journal_forget, it is possible
    that we can call journal_forget on a buffer without having modified it, only
    gotten write access to it, so instead of freeing a credit, we only do so if
    the buffer was modified. The assert will help catch if this problem occurs.
    Without these two patches I could hit this assert within minutes of running
    postmark, with them this issue no longer arises. Thank you,

    Signed-off-by: Josef Bacik
    Cc:
    Acked-by: Jan Kara
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Josef Bacik