1. 11 3月, 2009 3 次提交
    • B
      radeonfb/aty128fb: Disable broken early resume hook for PowerBooks · d801cec7
      Benjamin Herrenschmidt 提交于
      radeonfb and aty128fb have a special hook called by the PowerMac platform
      code very very early on resume from sleep to bring the screen back. This
      is useful for debugging wakup problems, but unfortunately, this also became
      a source of problems of its own.
      
      The hook is called extremely early, with interrupts still off, and the code
      path involved with that code nowadays rely on things like taking mutexes,
      GFP_KERNEL allocations, etc...
      
      In addition, the driver now relies on the PCI core to restore the standard
      config space before calling resume which doesn't happen with this early
      code path.
      
      I'm keeping the code in but commented out along with a fixup call to
      pci_restore_state(). The reason is that I still want to make it easy to
      re-enable temporarily to track wake up problems, and it's possible that
      I can revive it at some stage if we make sleeping things save to call
      in early resume using a system state.
      
      In the meantime, this should fix several reported regressions.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      d801cec7
    • B
      hvc_console: Remove tty->low_latency on pseries backends · 187cfc43
      Benjamin Herrenschmidt 提交于
      The hvcs and hvsi backends both set tty->low_latency to one, along
      with more or less scary comments regarding bugs or races that would
      happen if not doing so.
      
      However, they also both call tty_flip_buffer_push() in conexts where
      it's illegal to do so since some recent tty changes (or at least it
      may have been illegal always but it nows blows) when low_latency is
      set (ie, hard interrupt or with spinlock held and irqs disabled).
      
      This removes the setting for now to get them back to working condition,
      we'll have to address the races described in the comments separately
      if they are still an issue (some of this might have been fixed already).
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      187cfc43
    • B
      Merge commit 'gcl/merge' into merge · d301a9f3
      Benjamin Herrenschmidt 提交于
      d301a9f3
  2. 10 3月, 2009 1 次提交
  3. 04 3月, 2009 10 次提交
  4. 03 3月, 2009 24 次提交
  5. 02 3月, 2009 2 次提交
    • P
      x86 mmiotrace: fix race with release_kmmio_fault_page() · 340430c5
      Pekka Paalanen 提交于
      There was a theoretical possibility to a race between arming a page in
      post_kmmio_handler() and disarming the page in
      release_kmmio_fault_page():
      
      cpu0                             cpu1
      ------------------------------------------------------------------
      mmiotrace shutdown
      enter release_kmmio_fault_page
                                       fault on the page
                                       disarm the page
      disarm the page
                                       handle the MMIO access
                                       re-arm the page
      put the page on release list
      remove_kmmio_fault_pages()
                                       fault on the page
                                       page not known to mmiotrace
                                       fall back to do_page_fault()
                                       *KABOOM*
      
      (This scenario also shows the double disarm case which is allowed.)
      
      Fixed by acquiring kmmio_lock in post_kmmio_handler() and checking
      if the page is being released from mmiotrace.
      Signed-off-by: NPekka Paalanen <pq@iki.fi>
      Cc: Stuart Bennett <stuart@freedesktop.org>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      340430c5
    • S
      x86 mmiotrace: improve handling of secondary faults · 3e39aa15
      Stuart Bennett 提交于
      Upgrade some kmmio.c debug messages to warnings.
      Allow secondary faults on probed pages to fall through, and only log
      secondary faults that are not due to non-present pages.
      
      Patch edited by Pekka Paalanen.
      Signed-off-by: NStuart Bennett <stuart@freedesktop.org>
      Signed-off-by: NPekka Paalanen <pq@iki.fi>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      3e39aa15