1. 30 8月, 2005 6 次提交
    • D
      [SPARC64]: More fully work around Spitfire Errata 51. · 4f07118f
      David S. Miller 提交于
      It appears that a memory barrier soon after a mispredicted
      branch, not just in the delay slot, can cause the hang
      condition of this cpu errata.
      
      So move them out-of-line, and explicitly put them into
      a "branch always, predict taken" delay slot which should
      fully kill this problem.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4f07118f
    • D
      [SPARC64]: Make debugging spinlocks usable again. · 442464a5
      David S. Miller 提交于
      When the spinlock routines were moved out of line into
      kernel/spinlock.c this made it so that the debugging
      spinlocks record lock acquisition program counts in the
      kernel/spinlock.c functions not in their callers.
      This makes the debugging info kind of useless.
      
      So record the correct caller's program counter and
      now this feature is useful once more.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      442464a5
    • K
      [SPARC]: remove use of asm/segment.h · ca7c8d2c
      Kumar Gala 提交于
      Removed sparc architecture specific users of asm/segment.h and
      asm-sparc/segment.h itself
      Signed-off-by: NKumar Gala <kumar.gala@freescale.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ca7c8d2c
    • K
      [SPARC64]: remove use of asm/segment.h · 3d6364ab
      Kumar Gala 提交于
      Removed sparc64 architecture specific users of asm/segment.h and
      asm-sparc64/segment.h itself
      Signed-off-by: NKumar Gala <kumar.gala@freescale.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3d6364ab
    • D
      [SPARC64]: Revamp Spitfire error trap handling. · 6c52a96e
      David S. Miller 提交于
      Current uncorrectable error handling was poor enough
      that the processor could just loop taking the same
      trap over and over again.  Fix things up so that we
      at least get a log message and perhaps even some register
      state.
      
      In the process, much consolidation became possible,
      particularly with the correctable error handler.
      
      Prefix assembler and C function names with "spitfire"
      to indicate that these are for Ultra-I/II/IIi/IIe only.
      
      More work is needed to make these routines robust and
      featureful to the level of the Ultra-III error handlers.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6c52a96e
    • A
      [PATCH] mod_devicetable.h fixes · 9e2d3cd3
      Al Viro 提交于
       * ieee1394_device_id has kernel_ulong_t field after an odd number of
         __u32 ones.  Since mod_devicetable.h is included both from kernel and
         from host build helper, we may be in trouble if we are building on
         32bit host for 64bit target - userland sees unsigned long long,
         kernel sees unsigned long and while their sizes match, alignments
         might not.  Fixed by forcing alignment.  Fortunately, almost nobody
         else needs that - the rest of such fields is naturally aligned as it
         is.
      
       * of_device_id has void * in it.  Host userland helpers need
         kernel_ulong_t instead, since their void * might have nothing to do
         with the kernel one.  Fixed in the same way it's done for similar
         problems in pcmcia_device_id (ifdef __KERNEL__).
      
       * pcmcia_device_id has the same problem as ieee1394_device_id.  Fixed
         the same way.
      Signed-off-by: NAl Viro <viro@parcelfarce.linux.theplanet.co.uk>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      9e2d3cd3
  2. 29 8月, 2005 2 次提交
    • A
      [PATCH] PHY Layer fixup · e1393456
      Andy Fleming 提交于
      This patch adds back the code that was taken out, thus re-enabling:
      
      * The PHY Layer to initialize without crashing
      * Drivers to actually connect to PHYs
      * The entire PHY Control Layer
      
      This patch is used by the gianfar driver, and other drivers which are in
      development.
      Signed-off-by: NAndy Fleming <afleming@freescale.com>
      Signed-off-by: NJeff Garzik <jgarzik@pobox.com>
      e1393456
    • J
      [libata] license change, other bits · af36d7f0
      Jeff Garzik 提交于
      - changes license of all code from OSL+GPL to plain ole GPL
        - except for NVIDIA, who hasn't yet responded about sata_nv
        - copyright holders were already contacted privately
      
      - adds info in each driver about where hardware/protocol docs may be
        obtained
      
      - where I have made major contributions, updated copyright dates
      af36d7f0
  3. 27 8月, 2005 5 次提交
  4. 25 8月, 2005 1 次提交
  5. 24 8月, 2005 8 次提交
  6. 23 8月, 2005 1 次提交
    • T
      [PATCH] fix atapi_packet_task vs. intr race (take 2) · c1389503
      Tejun Heo 提交于
      Interrupts from devices sharing the same IRQ could cause
      ata_host_intr to finish commands being processed by atapi_packet_task
      if the commands are using ATA_PROT_ATAPI_NODATA or ATA_PROT_ATAPI_DMA
      protocol.  This is because libata interrupt handler is unaware that
      interrupts are not expected during that period.  This patch adds
      ATA_FLAG_NOINTR flag to tell the interrupt handler that we're not
      expecting interrupts.
      
       Note that once proper HSM is implemented for interrupt-driven PIO,
      this should be merged into it and this flag will be removed.
      
       ahci.c is a different kind of beast, so it's left alone.
      
      * The following drivers use ata_qc_issue_prot and ata_interrupt, so
        changes in libata core will do.
      
        ata_piix sata_sil sata_svw sata_via sata_sis sata_uli
      
      * The following drivers use ata_qc_issue_prot and custom intr handler.
        They need this change to work correctly.
      
        sata_nv sata_vsc
      
      * The following drivers use custom issue function and intr handler.
        Currently all custom issue functions don't support ATAPI, so this
        change is irrelevant, updated for consistency and to avoid later
        mistakes.
      
        sata_promise sata_qstor sata_sx4
      Signed-off-by: NTejun Heo <htejun@gmail.com>
      Signed-off-by: NJeff Garzik <jgarzik@pobox.com>
      c1389503
  7. 20 8月, 2005 2 次提交
    • L
      Fix nasty ncpfs symlink handling bug. · cc314eef
      Linus Torvalds 提交于
      This bug could cause oopses and page state corruption, because ncpfs
      used the generic page-cache symlink handlign functions.  But those
      functions only work if the page cache is guaranteed to be "stable", ie a
      page that was installed when the symlink walk was started has to still
      be installed in the page cache at the end of the walk.
      
      We could have fixed ncpfs to not use the generic helper routines, but it
      is in many ways much cleaner to instead improve on the symlink walking
      helper routines so that they don't require that absolute stability.
      
      We do this by allowing "follow_link()" to return a error-pointer as a
      cookie, which is fed back to the cleanup "put_link()" routine.  This
      also simplifies NFS symlink handling.
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      cc314eef
    • D
      [SPARC64]: Move kernel unaligned trap handlers into assembler file. · a3f99858
      David S. Miller 提交于
      GCC 4.x really dislikes the games we are playing in
      unaligned.c, and the cleanest way to fix this is to
      move things into assembler.
      
      Noted by Al Viro.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a3f99858
  8. 19 8月, 2005 15 次提交