08 Feb, 2008

13 commits

  • By popular request, add a comment documenting the implicit type promotion
    here.

    Signed-off-by: Jason Uhlenkott
    Signed-off-by: Doug Thompson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jason Uhlenkott
     
  • There is a missing sequence of initialization code during startup.

    Signed-off-by: Hitoshi Mitake
    Signed-off-by: Jason Uhlenkott
    Signed-off-by: Doug Thompson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hitoshi Mitake
     
  • Made a previous global variable, static in scope

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

    Doug Thompson
     
  • Modified to run on x86_64 as well as x86

    i3000_edac builds (and runs) fine on x86_64.

    Signed-off-by: Jason Uhlenkott
    Signed-off-by: Doug Thompson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jason Uhlenkott
     
  • Using the EDAC code in kernel.org kernel version 2.6.23.8 I am seeing the
    following problem:

    In the kernel there is a pci device attribute located in sysfs that is
    checked by the EDAC PCI scanning code. If that attribute is set,
    PCI parity/error scannining is skipped for that device. The attribute
    is:

    broken_parity_status

    as is located in /sys/devices/pci/0000:XX:YY.Z directorys for
    PCI devices.

    I don't think this check was actually implemented. I have a misbehaved card
    that reports a parity error every 1000 ms:

    Nov 25 07:28:43 beta kernel: EDAC PCI: Master Data Parity Error on 0000:05:01.0
    Nov 25 07:28:44 beta kernel: EDAC PCI: Master Data Parity Error on 0000:05:01.0
    Nov 25 07:28:45 beta kernel: EDAC PCI: Master Data Parity Error on 0000:05:01.0

    Setting that card's broken_parity_status bit did not mask the error:

    echo "1" > /sys/bus/pci/devices/0000:05:01.0/broken_parity_status

    I looked through the EDAC code and did not readily see any reference to
    broken_parity_status at all (which makes sense based on the behavior I am
    seeing). I applied the following patch as a proof-of-concept and now EDAC's
    PCI parity error reporting behaves as documented:

    bryan

    Good regression find, bryan. It used to work. sigh.
    I added more logic to your patch, for more coverage of the error.

    Doug T

    Signed-off-by: Bryan Boatright
    Signed-off-by: Doug Thompson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bryan Boatright
     
  • Marvell mv64x60 SoC support for EDAC. Used on PPC and MIPS platforms.
    Development and testing done on PPC Motorola prpmc2800 ATCA board.

    [akpm@linux-foundation.org: make mv64x60_ctl_name static]
    Signed-off-by: Dave Jiang
    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Jiang
     
  • EDAC chip driver support for Freescale MPC85xx platforms. PPC based.

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

    Dave Jiang
     
  • Replace function-like macros with functions.

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

    Jason Uhlenkott
     
  • Style cleanup, mostly just 80-column fixes.

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

    Jason Uhlenkott
     
  • Adds driver for the Cell memory controller when used without a Hypervisor such
    as on the IBM Cell blades. There might still be some improvements to do to
    this such as finding if it's possible to properly obtain more details about
    the address of the error but it's good enough already to report CE counts
    which is our main priority at the moment.

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

    Benjamin Herrenschmidt
     
  • Add the definitions for the Rambus XDR memory type used by the Cell processor.
    It's a pre-requisite for the followup Cell EDAC patch.

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

    Benjamin Herrenschmidt
     
  • When rounding a relative timeout we need to use round_jiffies_relative().

    Signed-off-by: Anton Blanchard
    Acked-by: Arjan van de Ven
    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Anton Blanchard
     
  • ENABLE the 'logging' of CE and UE events for the EDAC_DEVICE class of error
    harvester in EDAC

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

    Doug Thompson
     

03 Feb, 2008

1 commit


31 Jan, 2008

1 commit


25 Jan, 2008

4 commits


30 Nov, 2007

1 commit

  • There will be more product numbers in the future than just PA6T-1682M,
    but they will share much of the features. Remove some of the explicit
    references and compatibility checks with 1682M, and replace most of them
    with the more generic term "PWRficient".

    Signed-off-by: Olof Johansson
    Acked-by: Michael Buesch
    Acked-by: Doug Thompson

    Olof Johansson
     

15 Nov, 2007

1 commit


20 Oct, 2007

2 commits

  • Fixes:
    drivers/edac/pasemi_edac: struct pci_device_id is 32 bytes. The last of 1 is:
    0x00 0x00 0x19 0x59 0x00 0x00 0xa0 0x0a 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    FATAL: drivers/edac/pasemi_edac: struct pci_device_id is not terminated with a NULL entry!

    Signed-off-by: Stephen Rothwell
    Cc: Douglas Thompson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stephen Rothwell
     
  • define global BIT macro

    move all local BIT defines to the new globally define macro.

    Signed-off-by: Jiri Slaby
    Cc: Paul Mackerras
    Cc: Benjamin Herrenschmidt
    Cc: Kumar Gala
    Cc: Dmitry Torokhov
    Cc: Jeff Garzik
    Cc: James Bottomley
    Cc: "Antonino A. Daplas"
    Cc: Russell King
    Acked-by: Ralf Baechle
    Cc: "John W. Linville"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jiri Slaby
     

13 Oct, 2007

1 commit


12 Sep, 2007

2 commits


27 Jul, 2007

5 commits

  • Fixed 'depends on PPC_PASEMI' in EDAC Kconfig. Module PASEMI depends ONLY on
    the PASEMI on PPC.

    Was previously enabled for ALL PPC

    Cc: Alan Cox
    Cc: Egor N. Martovetsky
    Signed-off-by: Doug Thompson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Doug Thompson
     
  • This patch fixes sysfs exit code for the EDAC PCI device in a similiar manner
    and the previous fixes for EDAC_MC and EDAC_DEVICE.

    It removes the old (and incorrect) completion model and uses reference counts
    on per instance kobjects and on the edac core module.

    This pattern was applied to the edac_mc and edac_device code, but the EDAC PCI
    code was missed. In addition, this fixes a system hang after a low level
    driver was unloaded. (A cleanup function was called twice, which really
    screwed things up)

    Cc: Greg KH
    Cc: Alan Cox
    Signed-off-by: Doug Thompson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Doug Thompson
     
  • This fixes a deadlock that could occur on a 'setup' and 'teardown' sequence of
    the workq for a edac_mc control structure instance. A similiar fix was
    previously implemented for the edac_device code.

    In addition, the edac_mc device code there was missing code to allow the workq
    period valu to be altered via sysfs control.

    This patch adds that fix on the code, and allows for the changing of the
    period value as well.

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

    Doug Thompson
     
  • drivers/edac/edac_stub.c:15:22: asm/edac.h: No such file or directory

    was it even supposed to work?

    Cc: Douglas Thompson
    Cc: Ralf Baechle
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

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

    Al Viro
     

20 Jul, 2007

9 commits

  • Some simple fixes to properly reference counter values from the block
    attribute level of edac_device objects. Properly sequencing the array pointer
    was added, resulting in correct identification of block level attributes from
    their base class functions.

    Added more verbose debug statement for event tracking.

    Also during some corner testing, found a bug in the store/show sequence
    of operations for the block attribute/controls management.

    An old intermediate structure for 'blocks' was still in the processing
    pipeline. This patch removes that old structure and correctly utilizes the
    new struct edac_dev_sysfs_block_attribute for passing control from the sysfs
    to the low level store/show function of the edac driver.

    Now the proper kobj pointer to passed downward to the store/show
    functions.

    Signed-off-by: Doug Thompson
    Cc: Greg KH
    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Doug Thompson
     
  • New EDAC driver for the i82975x memory controller chipset Used on ASUS
    motherboards

    [akpm@linux-foundation.org: fix multiple coding-style bloopers]
    Signed-off-by:
    Signed-off-by: Ranganathan Desikan
    Signed-off-by: Doug Thompson
    Cc: Greg KH
    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ranganathan Desikan
     
  • Fix mutex locking deadlock on the device controller linked list. Was calling
    a lock then a function that could call the same lock. Moved the cancel workq
    function to outside the lock

    Added some short circuit logic in the workq code

    Added comments of description

    Code tidying

    Signed-off-by: Doug Thompson
    Cc: Greg KH
    Cc: Alan Cox
    Cc: Oleg Nesterov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Doug Thompson
     
  • Change EXPORT_SYMBOLs to EXPORT_SYMBOLS_GPL
    Tidy changes: blank lines, inline removal, add comment

    Signed-off-by: Doug Thompson
    Cc: Greg KH
    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Doug Thompson
     
  • With feedback, this patch corrects operation of the kobject release operation
    on kobjects, attributes and controls for the edac_device.

    Cc: Alan Cox alan@lxorguk.ukuu.org.uk
    Signed-off-by: Doug Thompson
    Acked-by: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Douglas Thompson
     
  • This patch refactors the 'releasing' of kobjects for the edac_mc type of
    device. The correct pattern of kobject release is followed.

    As internal kobjs are allocated they bump a ref count on the top level kobj.
    It in turn has a module ref count on the edac_core module. When internal
    kobjects are released, they dec the ref count on the top level kobj. When the
    top level kobj reaches zero, it decrements the ref count on the edac_core
    object, allow it to be unloaded, as all resources have all now been released.

    Cc: Alan Cox alan@lxorguk.ukuu.org.uk
    Signed-off-by: Doug Thompson
    Acked-by: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Doug Thompson
     
  • Refactoring of sysfs code necessitated the refactoring of the
    edac_device_alloc() and edac_device_add_device() apis, of moving the index
    value to the alloc() function. This patch alters the in tree drivers to
    utilize this new api signature.

    Having the index value performed later created a chicken-and-the-egg issue.
    Moving it to the alloc() function allows for creating the necessary sysfs
    entries with the proper index number

    Cc: Alan Cox alan@lxorguk.ukuu.org.uk
    Signed-off-by: Doug Thompson
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Doug Thompson
     
  • Refactoring of sysfs code necessitated the refactoring of the edac_mc_alloc()
    and edac_mc_add_mc() apis, of moving the index value to the alloc() function.
    This patch alters the in tree drivers to utilize this new api signature.

    Having the index value performed later created a chicken-and-the-egg issue.
    Moving it to the alloc() function allows for creating the necessary sysfs
    entries with the proper index number

    Cc: Alan Cox alan@lxorguk.ukuu.org.uk
    Signed-off-by: Doug Thompson
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Doug Thompson
     
  • This patch fixes and enhances the driver level set of sysfs attributes that
    can be added to the 'block' level of an edac_device type of driver.

    There is a controller information structure, which contains one or more
    instances of device. Each instance will have one or more blocks of device
    specific counters. This patch fixes the ability to have more detailed
    attributes/controls for each of the 'blocks', providing for the addition of
    controls/attributes from the low level driver to user space via sysfs.

    Cc: Alan Cox alan@lxorguk.ukuu.org.uk
    Signed-off-by: Douglas Thompson
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Douglas Thompson