27 Mar, 2006

40 commits

  • This patch introduces the C-language equivalent of the function: unsigned long
    __ffs(unsigned long word);

    In include/asm-generic/bitops/__ffs.h

    This code largely copied from: include/asm-sparc/bitops.h

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

    Akinobu Mita
     
  • This patch introduces the C-language equivalents of the functions below:

    void __set_bit(int nr, volatile unsigned long *addr);
    void __clear_bit(int nr, volatile unsigned long *addr);
    void __change_bit(int nr, volatile unsigned long *addr);
    int __test_and_set_bit(int nr, volatile unsigned long *addr);
    int __test_and_clear_bit(int nr, volatile unsigned long *addr);
    int __test_and_change_bit(int nr, volatile unsigned long *addr);
    int test_bit(int nr, const volatile unsigned long *addr);

    In include/asm-generic/bitops/non-atomic.h

    This code largely copied from: asm-powerpc/bitops.h

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

    Akinobu Mita
     
  • This patch introduces the C-language equivalents of the functions below:

    void set_bit(int nr, volatile unsigned long *addr);
    void clear_bit(int nr, volatile unsigned long *addr);
    void change_bit(int nr, volatile unsigned long *addr);
    int test_and_set_bit(int nr, volatile unsigned long *addr);
    int test_and_clear_bit(int nr, volatile unsigned long *addr);
    int test_and_change_bit(int nr, volatile unsigned long *addr);

    In include/asm-generic/bitops/atomic.h

    This code largely copied from:

    include/asm-powerpc/bitops.h
    include/asm-parisc/bitops.h
    include/asm-parisc/atomic.h

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

    Akinobu Mita
     
  • Bitmap functions for the minix filesystem and the ext2 filesystem except
    ext2_set_bit_atomic() and ext2_clear_bit_atomic() do not require the atomic
    guarantees.

    But these are defined by using atomic bit operations on several architectures.
    (cris, frv, h8300, ia64, m32r, m68k, m68knommu, mips, s390, sh, sh64, sparc,
    sparc64, v850, and xtensa)

    This patch switches to non atomic bit operation.

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

    Akinobu Mita
     
  • remove unnecessary local_irq_restore() after cris_atomic_restore() in
    test_and_set_bit().

    Signed-off-by: Akinobu Mita
    Cc: Mikael Starvik
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     
  • Noticed by Michael Tokarev

    add missing ()-pair in __ffz() macro for parisc

    Signed-off-by: Akinobu Mita
    Cc: Kyle McMartin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     
  • __set_bit() --> cpu_set() cleanup

    Signed-off-by: Akinobu Mita
    Cc: "Luck, Tony"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     
  • Use config options instead of gcc builtin definition to tell the use of
    instruction set extensions (CIX and FIX).

    This is introduced to tell the kbuild system the use of opmized hweight*()
    routines on alpha architecture.

    Signed-off-by: Akinobu Mita
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     
  • sound/oss/sonicvibes.c:421: error: static declaration of hweight32 follows non-static declaration
    include/asm-generic/bitops/hweight.h:6: error: previous declaration of hweight32 was here

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

    Richard Knutsson
     
  • This patch defines constant_fls() instead of removed generic_fls().

    Signed-off-by: Akinobu Mita
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     
  • Build fix for user mode linux.

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

    Akinobu Mita
     
  • s/fucntion/function/ typo fixes

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

    Akinobu Mita
     
  • Fix warning messages triggered by bitops code consolidation patches.
    cxn_bitmap is the array of unsigned long. '&' is unnesesary for the argument
    of *_bit() routins.

    Signed-off-by: Akinobu Mita
    Acked-by: David Howells
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     
  • It's about to go away.

    Cc: Akinobu Mita
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Change all instances of EXPORT_SYMBOL() in the core EDAC module to
    EXPORT_SYMBOL_GPL().

    Signed-off-by: David S. Peterson
    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • - Add entries to MAINTAINERS list for EDAC-E752X, EDAC-E7XXX, and
    EDAC-R82600 chipset drivers

    - Fix MAINTAINERS entry for EDAC-CORE so it uses tabs rather than
    spaces to indent. This is consistent with how the other entries are
    formatted.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • Patch from Dave Jiang : Fix EDAC e752x driver so it
    outputs sysbus-specific error message when sysbus error detected.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • Fix spelling errors in EDAC documentation.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • Cosmetic indentation/formatting cleanup for EDAC code. Make sure we
    are using tabs rather than spaces to indent, etc.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • Fix EDAC code so EXPORT_SYMBOL comes after the function that is being
    exported. This is to maintain consistency with the rest of the kernel.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • - Add x86 dependency in drivers/edac/Kconfig for all current
    platform-specific modules.

    - Add PCI dependency to Radisys 82600 driver

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • - Fix code so we always hold mem_ctls_mutex while we are stepping
    through the list of mem_ctl_info structures. Otherwise bad things
    may happen if one task is stepping through the list while another
    task is modifying it. We may eventually want to use reference
    counting to manage the mem_ctl_info structures. In the meantime we
    may as well fix this bug.

    - Don't disable interrupts while we are walking the list of
    mem_ctl_info structures in check_mc_devices(). This is unnecessary.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • - After we unregister a kobject, wait for our kobject release method
    to call complete(). This causes us to wait until the kobject
    reference count reaches 0. Otherwise, a task accessing the EDAC
    sysfs interface can hold the reference count above 0 until after the
    EDAC module has been unloaded. When the reference count finally
    drops to 0, this will result in an attempt to call our release
    method inside the EDAC module after the module has already been
    unloaded.

    This isn't the best fix, since a process can get stuck sleeping forever
    uninterruptibly if the user does the following:

    rmmod my_module < /sys/my_sysfs/file

    I'll go back and implement a better fix later. However this should
    be ok for now.

    - Call edac_remove_sysfs_mci_device() from edac_mc_del_mc() rather
    than from edac_mc_free(). Since edac_mc_add_mc() calls
    edac_create_sysfs_mci_device(), edac_mc_del_mc() should call
    edac_remove_sysfs_mci_device().

    Signed-off-by: David S. Peterson
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • - Remove calls to kobject_init(). These are unnecessary because
    kobject_register() calls kobject_init().

    - Remove extra calls to kobject_put(). When we call
    kobject_unregister(), this releases our reference to the kobject.
    The extra calls to kobject_put() may cause the reference count to
    drop to 0 while a kobject is still in use.

    Signed-off-by: David S. Peterson
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • This is part 2 of a 2-part patch set.

    Fix edac_mc_add_mc() so it cleans up properly if call to
    edac_create_sysfs_mci_device() fails.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • This is part 1 of a 2-part patch set. The code changes are split into
    two parts to make the patches more readable.

    Move complete_mc_list_del() and del_mc_from_global_list() so we can
    call del_mc_from_global_list() from edac_mc_add_mc() without forward
    declarations. Perhaps using forward declarations would be better?
    I'm doing things this way because the rest of the code is missing
    them.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • Fix xxx_probe1() functions so they call xxx_get_error_info() functions
    to clear initial errors. This is simpler and cleaner than duplicating
    the low-level code for accessing PCI config space.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • Fix minor logic bug in e7xxx_remove_one().

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • - Fix i82875p_probe1() so it calls pci_get_device() instead of
    pci_find_device().
    - Fix i82875p_probe1() so it cleans up properly on failure.
    - Fix i82875p_init() so it cleans up properly on failure.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • - Fix i82860_init() so it cleans up properly on failure.
    - Fix i82860_exit() so it cleans up properly.
    - Fix typo in comment (i.e. www.redhat.com.com).

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • - Add ctl_dev field to "struct e752x_dev_info". Then we can eliminate
    ugly switch statement from e752x_probe1().

    - Remove code from e752x_probe1() that clears initial PCI bus parity
    errors. The core EDAC module already does this.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • Eliminate unnecessary calls to pci_dev_get() and pci_dev_put() from
    amd76x driver.

    Signed-off-by: David S. Peterson
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • Perform the following name substitutions on all source files:

    sed 's/BS_MOD_STR/EDAC_MOD_STR/g'
    sed 's/bs_thread_info/edac_thread_info/g'
    sed 's/bs_thread/edac_thread/g'
    sed 's/bs_xstr/edac_xstr/g'
    sed 's/bs_str/edac_str/g'

    The names that start with BS_ or bs_ are artifacts of when the code
    was called "bluesmoke".

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • This implements the following idea:

    On Monday 30 January 2006 19:22, Eric W. Biederman wrote:
    > One piece missing from this conversation is the issue that we need errors
    > in a uniform format. That is why edac_mc has helper functions.
    >
    > However there will always be errors that don't fit any particular model.
    > Could we add a edac_printk(dev, ); That is similar to dev_printk but
    > prints out an EDAC header and the device on which the error was found?
    > Letting the rest of the string be user specified.
    >
    > For actual control that interface may be to blunt, but at least for people
    > looking in the logs it allows all of the errors to be detected and
    > harvested.

    Signed-off-by: David S. Peterson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • This patch was originally posted by Christoph Hellwig (see
    http://lkml.org/lkml/2006/2/14/331):

    "Christoph Hellwig" wrote:
    > Use the kthread_ API instead of opencoding lots of hairy code for kernel
    > thread creation and teardown, including tasklist_lock abuse.
    >

    Signed-off-by: Christoph Hellwig
    Signed-off-by: David S. Peterson
    Cc:
    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Peterson
     
  • This fixes coverity id #2. the if (i==0) is pretty useless, since we
    assing i=0, just the line before.

    Signed-off-by: Eric Sesterhenn
    Cc: Karsten Keil
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Eric Sesterhenn
     
  • And: Tilman Schmidt

    This patch adds the connection-specific module "usb_gigaset", the hardware
    driver for Gigaset base stations connected via the M105 USB DECT adapter. It
    contains the code for handling probe/disconnect, AT command/response
    transmission, and call setup and termination, as well as handling asynchronous
    data transfers, PPP framing, byte stuffing, and flow control.

    Signed-off-by: Hansjoerg Lipp
    Signed-off-by: Tilman Schmidt
    Cc: Karsten Keil
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hansjoerg Lipp
     
  • And: Tilman Schmidt

    This patch adds the payload data handler for the connection-specific module
    "bas_gigaset". It contains the code for handling isochronous data transfers,
    HDLC framing and flow control.

    Signed-off-by: Hansjoerg Lipp
    Signed-off-by: Tilman Schmidt
    Cc: Karsten Keil
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hansjoerg Lipp
     
  • And: Tilman Schmidt

    This patch adds the main source file of the connection-specific module
    "bas_gigaset", the hardware driver for Gigaset base stations connected
    directly to the computer via USB. It contains the code for handling
    probe/disconnect, AT command/response transmission, and call setup and
    termination.

    Signed-off-by: Hansjoerg Lipp
    Signed-off-by: Tilman Schmidt
    Cc: Karsten Keil
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hansjoerg Lipp
     
  • And: Tilman Schmidt

    This patch adds the procfs interface to the gigaset module. The procfs
    interface provides access to status information and statistics about the
    Gigaset devices. If the drivers are built with the debugging option it also
    allows to change the amount of debugging output on the fly.

    Signed-off-by: Hansjoerg Lipp
    Signed-off-by: Tilman Schmidt
    Cc: Karsten Keil
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hansjoerg Lipp