17 Oct, 2007

40 commits

  • Changes NLS and DLM menus into a 'menuconfig' object so that it can be
    disabled at once without having to enter the menu first to disable the config
    option.

    Signed-off-by: Jan Engelhardt
    Cc: Steven Whitehouse
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jan Engelhardt
     
  • Signed-off-by: Rusty Russell
    Acked-by: Stephen Rothwell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rusty Russell
     
  • This changes hvc_init() to be called only when someone actually uses the
    hvc_console driver. Dave Jones complained when profiling bootup.

    hvc_console used to only be for Power aka pSeries: now lguest and Xen both
    want it built-in in case the kernel is a guest under one of those, even
    though usually it will be a native boot.

    Signed-off-by: Rusty Russell
    Cc: Paul Mackerras
    Cc: Benjamin Herrenschmidt
    Cc: Jeremy Fitzhardinge
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rusty Russell
     
  • Right now futexfs and inotifyfs have one magic 0xBAD1DEA, that looks a
    little bit confusing. Use 0xBAD1DEA as magic for futexfs and 0x2BAD1DEA as
    magic for inotifyfs.

    Signed-off-by: Andrey Mirkin
    Acked-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrey Mirkin
     
  • include/asm-powerpc/elf.h has 6 entries in ARCH_DLINFO. fs/binfmt_elf.c
    has 14 unconditional NEW_AUX_ENT entries and 2 conditional NEW_AUX_ENT
    entries. So in the worst case, saved_auxv does not get an AT_NULL entry at
    the end.

    The saved_auxv array must be terminated with an AT_NULL entry. Make the
    size of mm_struct->saved_auxv arch dependend, based on the number of
    ARCH_DLINFO entries.

    Signed-off-by: Olaf Hering
    Cc: Roland McGrath
    Cc: Jakub Jelinek
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: "Luck, Tony"
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Paul Mundt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Olaf Hering
     
  • Signed-off-by: Denis Cheng
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Denis Cheng
     
  • The blessed way for standard caches is to use it. Besides, this may give
    this cache a better alignment.

    Signed-off-by: Pavel Emelyanov
    Acked-by: Cedric Le Goater
    Acked-by: Serge Hallyn
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Emelyanov
     
  • The nslock spinlock is not used in the kernel at all. Remove it.

    Signed-off-by: Pavel Emelyanov
    Acked-by: Serge Hallyn
    Cc: Cedric Le Goater
    Cc: "Eric W. Biederman"
    Cc: Herbert Poetzl
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Emelyanov
     
  • For those who deselect POSIX message queues.

    Reduces SLAB size of user_struct from 64 to 32 bytes here, SLUB size -- from
    40 bytes to 32 bytes.

    [akpm@linux-foundation.org: fix build]
    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • Save some space because uid_hash_find() has 3 callsites.

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

    Alexey Dobriyan
     
  • This patch does additional coding style fixup. Initially the code is being
    distorted by Lindent (in my patches sent not very long ago) and fixed in
    the followup patches but this stuff was accidently missed.

    New and old compiled files were compared with cmp to check for being
    identically. So the patch will not break the kernel.

    Signed-off-by: Cyrill Gorcunov
    Cc: Jan Kara
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Cyrill Gorcunov
     
  • atomic_ops.txt has incorrect, misleading and insufficient information about
    semantics of initializer, atomic_set, atomic_read and atomic_xchg.

    It also incorrectly implies that operations mentioned above are not actual
    atomic operations.

    Included is most of the patch Document non-semantics of atomic_read() and
    atomic_set() by Chris Snook, except the word "assignment".

    Signed-off-by: Matti Linnanvuori
    Cc: Nick Piggin
    Cc: "Paul E. McKenney"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matti Linnanvuori
     
  • This adds three new functions (or in one case to be more exact makes it
    always available)

    tty_termios_copy_hw

    Copies all the hardware settings from one termios structure to the other.
    This is intended for drivers that support little or no hardware setting

    tty_termios_encode_baud_rate

    Allows you to set the input and output baud rate in a termios structure. A
    driver is supposed to set the resulting baud rate from a request so most
    will want to use this function to set the resulting input and output rates
    to match the hardware values. Internally it knows about keeping Bxxx
    encoding when possible to maximise compatibility.

    tty_encode_baud_rate

    As above but for the tty's own current termios structure

    I suspect this will initially need some tweaking as it gets enabled by
    driver patches over the next few mm cycles so consider this lot -mm only
    for the moment so it can stabilize and end up neat before it goes to base.

    I've tried not to break any obscure architectures - if you get a speed you
    can't represent the code will print warnings on non updated termios systems
    but not break.

    Once this is merged and seems sane I've got a growing pile of driver
    updates to use it - notably for USB serial drivers.

    [akpm@linux-foundation.org: cleanups]
    Signed-off-by: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • I simply don't have any old IDE systems any more or time to really look
    after this. Nobody responded to the previous linux-ide mail about
    maintainers so...

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

    Alan Cox
     
  • shut up those:
    fs/isofs/namei.c: In function 'isofs_lookup':
    fs/isofs/namei.c:161: warning: 'offset' may be used uninitialized in this function
    fs/isofs/namei.c:161: warning: 'block' may be used uninitialized in this function

    By the way, they get overwritten at the end of isofs_find_entry().

    Signed-off-by: Borislav Petkov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Borislav Petkov
     
  • Since nothing earlier than gcc-3.2 is supported for kernel
    compilation, that 2.95 hack can be removed.

    Signed-off-by: Robert P. J. Day
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert P. J. Day
     
  • There is possible dead loop in finish_unfinished function.

    In most situation, the call chain iput -> ... -> reiserfs_delete_inode ->
    remove_save_link will success. But for some reason such as data
    corruption, reiserfs_delete_inode fails on reiserfs_do_truncate ->
    search_for_position_by_key.

    Then remove_save_link won't be called. We always get the same
    "save_link_key" in the while loop in finish_unfinished function. The
    following patch adds a check for the possible dead loop and just remove
    save link when deap loop.

    [akpm@linux-foundation.org: cleanups]
    Signed-off-by: Lepton Wu
    Cc: Chris Mason
    Cc: Jeff Mahoney
    Cc: "Vladimir V. Saveliev"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lepton Wu
     
  • Add const modifiers to a few struct nls_table's member pointers in
    include/linux/nls.h and adds a lot of const's in fs/nls/*.c files.

    Resulting changes as visible by size:

    text data bss dec hex filename
    113612 481216 2368 597196 91ccc nls.org/built-in.o
    593548 3296 288 597132 91c8c nls/built-in.o

    Apparently compiler managed to optimize code a bit better
    because of const-ness.

    No other changes are made.

    Signed-off-by: Denys Vlasenko
    Cc: Al Viro
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Denys Vlasenko
     
  • This patch makes shrink_dcache_sb consistent with dentry pruning policy.

    On the first pass we iterate over dentry unused list and prepare some
    dentries for removal.

    However, since the existing code moves evicted dentries to the beginning of
    the LRU it can happen that fresh dentries from other superblocks will be
    inserted *before* our dentries.

    This can result in significant slowdown of shrink_dcache_sb(). Moreover,
    for virtual filesystems like unionfs which can call dput() during dentries
    kill existing code results in O(n^2) complexity.

    We observed 2 minutes shrink_dcache_sb() with only 35000 dentries.

    To avoid this effects we propose to isolate sb dentries at the end
    of LRU list.

    Signed-off-by: Denis V. Lunev
    Signed-off-by: Kirill Korotaev
    Signed-off-by: Andrey Mirkin
    Cc: Neil Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Denis V. Lunev
     
  • Remove the old-fashioned lk201 driver under drivers/tc/ that used to be
    used by the old dz.c and zs.c drivers, which is now orphan code referred to
    from nowhere and does not build anymore. A modern replacement is available
    as drivers/input/keyboard/lkkbd.c.

    There are no plans to do anything about this piece of code and it does not
    fit anywhere anymore, so it is not just a matter of maintenance or the lack
    of. There are still some bits that might be added to the new lkkbd.c
    driver based on the old code, and the embedded hardware documentation which
    is otherwise quite hard to get hold of might be useful to keep too. Both
    of these can be done separately though. RIP.

    Signed-off-by: Maciej W. Rozycki
    Acked-by: Ralf Baechle
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Maciej W. Rozycki
     
  • Be explicit about printing hex.

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

    Rene Herman
     
  • When reading corrupted reiserfs directory data, d_reclen could be a
    negative number or a big positive number, this can lead to kernel panic or
    oop. The following patch adds a sanity check.

    Signed-off-by: Lepton Wu
    Cc: Chris Mason
    Cc: Jeff Mahoney
    Cc: "Vladimir V. Saveliev"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lepton Wu
     
  • Requested by Jeff Garzik.
    v3, updated from lkml comments.

    Add info about various email clients and their applicability
    in being used to send Linux kernel patches.

    Some notes takes from http://mbligh.org/linuxdocs/Email/Clients
    Portions used with permission.

    Signed-off-by: Randy Dunlap
    Cc: Jeff Garzik
    Cc: Martin Bligh
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Other/Some pr_*() macros are already defined in kernel.h, but pr_err() was
    defined multiple times in several other places

    Signed-off-by: Emil Medve
    Cc: Jean Delvare
    Cc: Jeff Garzik
    Cc: "Antonino A. Daplas"
    Cc: Tony Lindgren
    Reviewed-by: Satyam Sharma
    Acked-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Emil Medve
     
  • Make request_key() and co fundamentally asynchronous to make it easier for
    NFS to make use of them. There are now accessor functions that do
    asynchronous constructions, a wait function to wait for construction to
    complete, and a completion function for the key type to indicate completion
    of construction.

    Note that the construction queue is now gone. Instead, keys under
    construction are linked in to the appropriate keyring in advance, and that
    anyone encountering one must wait for it to be complete before they can use
    it. This is done automatically for userspace.

    The following auxiliary changes are also made:

    (1) Key type implementation stuff is split from linux/key.h into
    linux/key-type.h.

    (2) AF_RXRPC provides a way to allocate null rxrpc-type keys so that AFS does
    not need to call key_instantiate_and_link() directly.

    (3) Adjust the debugging macros so that they're -Wformat checked even if
    they are disabled, and make it so they can be enabled simply by defining
    __KDEBUG to be consistent with other code of mine.

    (3) Documentation.

    [alan@lxorguk.ukuu.org.uk: keys: missing word in documentation]
    Signed-off-by: David Howells
    Signed-off-by: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Howells
     
  • reiserfs_invalidatepage will refuse to free pages if they have been logged
    in data=journal mode, or were pinned down by a data=ordered operation. For
    data=journal, this is fairly easy to trigger just with fsx-linux, and it
    results in a large number of pages hanging around on the LRUs with
    page->mapping == NULL.

    Calling try_to_free_buffers when reiserfs decides it is done with the page
    allows it to be freed earlier, and with much less VM thrashing. Lock
    ordering rules mean that reiserfs can't call lock_page when it is releasing
    the buffers, so TestSetPageLocked is used instead. Contention on these
    pages should be rare, so it should be sufficient most of the time.

    Signed-off-by: Chris Mason
    Cc: "Vladimir V. Saveliev"
    Cc: Jeff Mahoney
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Chris Mason
     
  • You are not allowed to post to this mailing list, and your message has been
    automatically rejected. If you think that your messages are being rejected
    in error, contact the mailing list owner at
    linux-omap-open-source-owner@linux.omap.com.

    Signed-off-by: Randy Dunlap
    Cc: Tony Lindgren
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • dma_cache_(wback|inv|wback_inv) were the earliest attempt on a generalized
    cache managment API for I/O purposes. Originally it was basically the raw
    MIPS low level cache API exported to the entire world. The API has
    suffered from a lack of documentation, was not very widely used unlike it's
    more modern brothers and can easily be replaced by dma_cache_sync. So
    remove it rsp. turn the surviving bits back into an arch private API, as
    discussed on linux-arch.

    Signed-off-by: Ralf Baechle
    Acked-by: Paul Mundt
    Acked-by: Paul Mackerras
    Acked-by: David S. Miller
    Acked-by: Kyle McMartin
    Acked-by: Haavard Skinnemoen
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ralf Baechle
     
  • As it stands this comment is confusing, and not quite grammatical.

    Signed-off-by: J. Bruce Fields
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    J. Bruce Fields
     
  • Acked-by: Arjan van de Ven
    Cc: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matti Linnanvuori
     
  • Signed-off-by: Ralf Baechle
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ralf Baechle
     
  • Finish the work : kill all #ifdef CONFIG_IPC_NS.

    Thanks Robert !

    Signed-off-by: Cedric Le Goater
    Cc: Eric Biederman
    Cc: Robert P. J. Day
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Cedric Le Goater
     
  • drivers/message/i2o/exec-osm.c:539: warning: `i2o_exec_lct_notify' defined but not used

    comes when CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=n, because its only callsite
    is #ifdef'ed as such. So let's #ifdef the function definition also. Also
    move the definition to before the callsite, to get rid of forward prototype.

    [akpm@linux-foundation.org: fix warnings]
    Signed-off-by: Satyam Sharma
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Satyam Sharma
     
  • This version brings a number of new checks, and a number of bug
    fixes. Of note:

    - better categorisation and space checks for dual use unary/binary
    operators
    - warn on deprecated use of {SPIN,RW}_LOCK_UNLOCKED
    - check if/for/while with trailing ';' for hanging statements
    - detect DOS line endings
    - detect redundant casts for kalloc()

    Andy Whitcroft (18):
    Version: 0.10
    asmlinkage is also a storage type
    pull out inline specifiers
    allow only some operators before a unary operator
    parenthesised values may span line ends
    add additional attribute matching
    handle sparse annotations within pointer type space checks
    support alternative function definition syntax for typedefs
    check if/for/while with trailing ';' for hanging statements
    fix output format for case checks
    deprecate SPIN_LOCK_UNLOCKED and RW_LOCK_UNLOCKED
    allow complex macros with bracketing braces
    detect and report DOS line endings
    fastcall is a valid function attribute
    bracket spacing is ok for 'for'
    categorise operators into unary/binary/definitions
    add heuristic to pick up on unannotated types
    remove spurious warnings from cat_vet

    Dave Jones (1):
    Make checkpatch warn about pointless casting of kalloc returns.

    Signed-off-by: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Whitcroft
     
  • As of now, the kernel defaults to non-unicode and XLATE for the keyboard.
    We've been changing this in Fedora, but that requires patching the defaults
    in the kernel.

    The attached introduces CONFIG_VT_UNICODE, which sets the console in
    unicode mode by default on boot, including both the virtual terminal and
    the keyboard driver.

    Signed-off-by: Bill Nottingham
    Cc: Samuel Thibault
    Cc: Dmitry Torokhov
    Cc: Jiri Kosina
    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bill Nottingham
     
  • Negative shifts are not allowed in C (the result is undefined). Same thing
    with full-width shifts.

    It works on most platforms but not on the VAX with gcc 4.0.1 (it results in an
    "operand reserved" fault).

    Shifting by more than the width of the value on the left is also not
    allowed. I think the extra '>> 1' tacked on at the end in the original
    code was an attempt to work around that. Getting rid of that is an extra
    feature of this patch.

    Here's the chapter and verse, taken from the final draft of the C99
    standard ("6.5.7 Bitwise shift operators", paragraph 3):

    "The integer promotions are performed on each of the operands. The
    type of the result is that of the promoted left operand. If the
    value of the right operand is negative or is greater than or equal
    to the width of the promoted left operand, the behavior is
    undefined."

    Thank you to Jan-Benedict Glaw, Christoph Hellwig, Maciej Rozycki, Pekka
    Enberg, Andreas Schwab, and Christoph Lameter for review. Special thanks
    to Andreas for spotting that my fix only removed half the undefined
    behaviour.

    Signed-off-by: Peter Lund
    Christoph Lameter
    Cc: Christoph Hellwig
    Cc: "Maciej W. Rozycki"
    Cc: Pekka Enberg
    Cc: Andreas Schwab
    Cc: Nick Piggin
    Cc: WU Fengguang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Peter Lund
     
  • .. in an effort to make read-only whatever can be made, so that
    CONFIG_DEBUG_RODATA can catch as many issues as possible.

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

    Jan Beulich
     
  • __setup_str_* are referenced only during boot, hence there's no need to
    waste image space for aligning these strings (with the aim of improving
    performance).

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

    Jan Beulich
     
  • Various architectures may call bust_spinlocks() recursively; the function
    itself, however, doesn't appear to be meant to be called in this manner.
    Nevertheless, this doesn't appear to be a problem as long as
    bust_spinlocks(0) doesn't get called twice in a row (otherwise,
    unblank_screen() may enter the scheduler). However, at least on i386 die()
    has been capable of returning (and on other architectures this should
    really be that way, too) when notify_die() returns NOTIFY_STOP.

    Short of getting a reply to a respective query, this patch makes
    bust_spinlocks() increment/decrement oops_in_progress, and wake klogd only
    when the count drops back to zero.

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

    Jan Beulich
     
  • To go along with the existing "roundup_pow_of_two" routine, add one for
    rounding down since that operation appears to crop up on a regular basis in
    the source tree.

    [m.kozlowski@tuxland.pl: fix unbalanced parentheses]
    Signed-off-by: Robert P. J. Day
    Signed-off-by: Mariusz Kozlowski
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert P. J. Day