1. 08 6月, 2011 1 次提交
  2. 06 6月, 2011 4 次提交
  3. 04 6月, 2011 5 次提交
    • L
      Revert "tty: make receive_buf() return the amout of bytes received" · 55db4c64
      Linus Torvalds 提交于
      This reverts commit b1c43f82.
      
      It was broken in so many ways, and results in random odd pty issues.
      
      It re-introduced the buggy schedule_work() in flush_to_ldisc() that can
      cause endless work-loops (see commit a5660b41: "tty: fix endless
      work loop when the buffer fills up").
      
      It also used an "unsigned int" return value fo the ->receive_buf()
      function, but then made multiple functions return a negative error code,
      and didn't actually check for the error in the caller.
      
      And it didn't actually work at all.  BenH bisected down odd tty behavior
      to it:
        "It looks like the patch is causing some major malfunctions of the X
         server for me, possibly related to PTYs.  For example, cat'ing a
         large file in a gnome terminal hangs the kernel for -minutes- in a
         loop of what looks like flush_to_ldisc/workqueue code, (some ftrace
         data in the quoted bits further down).
      
         ...
      
         Some more data: It -looks- like what happens is that the
         flush_to_ldisc work queue entry constantly re-queues itself (because
         the PTY is full ?) and the workqueue thread will basically loop
         forver calling it without ever scheduling, thus starving the consumer
         process that could have emptied the PTY."
      
      which is pretty much exactly the problem we fixed in a5660b41.
      
      Milton Miller pointed out the 'unsigned int' issue.
      Reported-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Reported-by: NMilton Miller <miltonm@bga.com>
      Cc: Stefan Bigler <stefan.bigler@keymile.com>
      Cc: Toby Gray <toby.gray@realvnc.com>
      Cc: Felipe Balbi <balbi@ti.com>
      Cc: Greg Kroah-Hartman <gregkh@suse.de>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      55db4c64
    • D
      libertas_sdio: handle spurious interrupts · d2ac49fe
      Daniel Drake 提交于
      Commit 06e8935f adds an IRQ handling
      optimization for single-function SDIO cards like this one, but at the
      same time exposes a small hardware bug.
      
      During hardware init, an interrupt is generated with (apparently) no
      source. Previously, mmc threw this interrupt away, but now (due to the
      optimization), the mmc layer passes this onto libertas, before it is ready
      (and before it has enabled interrupts), causing a crash.
      
      Work around this hardware bug by registering the IRQ handler later and
      making it capable of handling interrupts with no cause. The change that
      makes the IRQ handler registration happen later actually eliminates
      the spurious interrupt as well.
      Signed-off-by: NDaniel Drake <dsd@laptop.org>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      d2ac49fe
    • S
      iwlagn: fix channel switch locking · 6f213ff1
      Stanislaw Gruszka 提交于
      We use priv->mutex to avoid race conditions between iwl_chswitch_done()
      and iwlagn_mac_channel_switch(), when marking channel switch in
      progress. But iwl_chswitch_done() can be called in atomic context
      from iwl_rx_csa() or with mutex already taken from iwlagn_commit_rxon().
      
      These bugs were introduced by:
      
      commit 79d07325
      Author: Wey-Yi Guy <wey-yi.w.guy@intel.com>
      Date:   Thu May 6 08:54:11 2010 -0700
      
          iwlwifi: support channel switch offload in driver
      
      To fix remove mutex from iwl_chswitch_done() and use atomic bitops for
      marking channel switch pending.
      
      Also remove iwl2030_hw_channel_switch() since 2000 series adapters are
      2.4GHz only devices.
      
      Cc: stable@kernel.org # 2.6.36+
      Signed-off-by: NStanislaw Gruszka <sgruszka@redhat.com>
      Acked-by: NWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      6f213ff1
    • N
      ath5k: Disable fast channel switching by default · a99168ee
      Nick Kossifidis 提交于
      Disable fast channel change by default on AR2413/AR5413 due to
      some bug reports (it still works for me but it's better to be safe).
      Add a module parameter "fastchanswitch" in case anyone wants to enable
      it and play with it.
      Signed-off-by: NNick Kossifidis <mickflemm@gmail.com>
      Tested-by: NSedat Dilek <sedat.dilek@gmail.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      a99168ee
    • R
      ssb: fix PCI(e) driver regression causing oops on PCI cards · bdf492f5
      Rafał Miłecki 提交于
      We were incorrectly executing PCIe specific workarounds on PCI cards.
      This resulted in:
      Machine check in kernel mode.
      Caused by (from SRR1=149030): Transfer error ack signal
      Oops: Machine check, sig: 7 [#1]
      Reported-by: NAndreas Schwab <schwab@linux-m68k.org>
      Signed-off-by: NRafał Miłecki <zajec5@gmail.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      bdf492f5
  4. 03 6月, 2011 1 次提交
  5. 02 6月, 2011 9 次提交
  6. 01 6月, 2011 20 次提交