1. 13 Mar, 2009 5 commits
    • Tejun Heo's avatar
      ata_piix: add workaround for Samsung DB-P70 · e9c1670c
      Tejun Heo authored
      Samsung DB-P70 somehow botched the first ICH9 SATA port.  The board
      doesn't expose the first port but somehow SStatus reports link online
      while failing SRST protocol leading to repeated probe failures and
      thus long boot delay.
      
      Because the BIOS doesn't carry any identifying DMI information, the
      port can't be blacklisted safely.  Fortunately, the controller does
      have subsystem vendor and ID set.  It's unclear whether the subsystem
      IDs are used only for the board but it can be safely worked around by
      disabling SIDPR access and just using SRST works around the problem.
      Even when the workaround is triggered on an unaffected board the only
      side effect will be missing SCR access.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Reported-by: default avatarJoseph Jang <josephjang@gmail.com>
      Reported-by: default avatarJonghyon Sohn <mrsohn@gmail.com>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      e9c1670c
    • Stuart MENEFY's avatar
      libata: Keep shadow last_ctl up to date during resets · e3e4385f
      Stuart MENEFY authored
      libata keeps a shadow copy of the ATA CTL register (which is write only),
      and only writes to the hardware when the required value doesn't match
      the shadow. However this copy wasn't being maintained when performing
      reset functions. This could cause problems for the first operation after
      a reset when the correct value might not be written to the CTL register.
      
      This problem was observed when hotplugging a drive: the identify command
      was being issued with interrupts enabled, when they should have been
      disabled.
      Signed-off-by: default avatarStuart Menefy <stuart.menefy@st.com>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      e3e4385f
    • Mark Lord's avatar
      sata_mv: fix MSI irq race condition · 9d51af7b
      Mark Lord authored
      Fix a (rare) race condition in mv_interrupt() when using MSI.
      
      The value of hpriv->main_irq_mask_addr can change on on the fly,
      and without this patch we could end up writing back a stale copy
      to the hardware.
      Signed-off-by: default avatarMark Lord <mlord@pobox.com>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      9d51af7b
    • Linus Torvalds's avatar
      Linus 2.6.29-rc8 · 041b6237
      Linus Torvalds authored
      041b6237
    • Linus Torvalds's avatar
      bitmap: fix end condition in bitmap_find_free_region · aa8e4fc6
      Linus Torvalds authored
      Guennadi Liakhovetski noticed that the end condition for the loop in
      bitmap_find_free_region() is wrong, and the "return if error" was also
      using the wrong conditional that would only trigger if the bitmap was an
      exact multiple of the allocation size, which is not necessarily the case
      with dma_alloc_from_coherent().
      
      Such a failure would end up in bitmap_find_free_region() accessing
      beyond the end of the bitmap.
      Reported-by: default avatarGuennadi Liakhovetski <lg@denx.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      aa8e4fc6
  2. 12 Mar, 2009 34 commits
  3. 11 Mar, 2009 1 commit