All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 00/10] make iwlwifi RT friendly
@ 2013-12-11  8:33 Emmanuel Grumbach
  2013-12-11  8:33   ` Emmanuel Grumbach
                   ` (12 more replies)
  0 siblings, 13 replies; 28+ messages in thread
From: Emmanuel Grumbach @ 2013-12-11  8:33 UTC (permalink / raw)
  To: linux-rt-users; +Cc: linux-wireless, Emmanuel Grumbach

RT folks have raised issues with iwlwifi wrt. RT kernel some time
ago. Johannes had a few patches to address this, but I had a few
concerns with them. This series tries to address the RT concerns:
* we don't do anything in hard-irq context besides stopping the
  interrupts in the device.
* the interrupt cause is read from the irq handler and is handled
  there.

This allows us to avoid the usage of _irqsave all over the driver
and also avoids any kind of locks in the hard-irq context.
We still have some work to do with the locks in the handler.
I believe the locking model can be improved there.

This patch series is split is very small patches. While this can
annoy the reader - it helped me much to make sure I don't do anything
wrong (well - I am still not sure) - and IMHO, it makes the review easier.
For example, in patch 
    iwlwifi: pcie: move the ICT / non-ICT handling functions
I just copy code from place to place without changing a bit. This makes
the significant diff smaller.

Emmanuel Grumbach (10):
  iwlwifi: pcie: clean up ICT allocation code
  iwlwifi: pcie: track interrupt mask in SW
  iwlwifi: pcie: re-organize the PCIe ISR code
  iwlwifi: pcie: move the ICT / non-ICT handling functions
  iwlwifi: pcie: read the interrupt cause from the handler
  iwlwifi: pcie: determine the interrupt type in the handler
  iwlwifi: pcie: return inta from iwl_pcie_int_cause_{non_}ict
  iwlwifi: pcie: no need to save inta in trans_pcie
  iwlwifi: pcie: move interrupt prints to the common handler
  iwlwifi: pcie: stop using _irqsave

 drivers/net/wireless/iwlwifi/iwl-csr.h       |   3 +-
 drivers/net/wireless/iwlwifi/pcie/internal.h |   9 +-
 drivers/net/wireless/iwlwifi/pcie/rx.c       | 389 +++++++++++----------------
 drivers/net/wireless/iwlwifi/pcie/trans.c    |  27 +-
 drivers/net/wireless/iwlwifi/pcie/tx.c       |  10 +-
 5 files changed, 185 insertions(+), 253 deletions(-)

-- 
1.8.3.2


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2013-12-17  9:44 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-12-11  8:33 [RFC 00/10] make iwlwifi RT friendly Emmanuel Grumbach
2013-12-11  8:33 ` [RFC 01/10] iwlwifi: pcie: clean up ICT allocation code Emmanuel Grumbach
2013-12-11  8:33   ` Emmanuel Grumbach
2013-12-11  8:33 ` [RFC 02/10] iwlwifi: pcie: track interrupt mask in SW Emmanuel Grumbach
2013-12-11  8:33   ` Emmanuel Grumbach
2013-12-11  8:33 ` [RFC 03/10] iwlwifi: pcie: re-organize the PCIe ISR code Emmanuel Grumbach
2013-12-11  9:49   ` Emmanuel Grumbach
2013-12-11  8:33 ` [RFC 04/10] iwlwifi: pcie: move the ICT / non-ICT handling functions Emmanuel Grumbach
2013-12-11  8:33   ` Emmanuel Grumbach
2013-12-11  8:33 ` [RFC 05/10] iwlwifi: pcie: read the interrupt cause from the handler Emmanuel Grumbach
2013-12-11  8:33 ` [RFC 06/10] iwlwifi: pcie: determine the interrupt type in " Emmanuel Grumbach
2013-12-11  8:33   ` Emmanuel Grumbach
2013-12-11  8:33 ` [RFC 07/10] iwlwifi: pcie: return inta from iwl_pcie_int_cause_{non_}ict Emmanuel Grumbach
2013-12-11  8:33   ` Emmanuel Grumbach
2013-12-11  8:33 ` Emmanuel Grumbach
2013-12-11  8:33   ` Emmanuel Grumbach
2013-12-11  8:33 ` [RFC 08/10] iwlwifi: pcie: no need to save inta in trans_pcie Emmanuel Grumbach
2013-12-11  8:33   ` Emmanuel Grumbach
2013-12-11  8:33 ` [RFC 09/10] iwlwifi: pcie: move interrupt prints to the common handler Emmanuel Grumbach
2013-12-11  8:33 ` [RFC 10/10] iwlwifi: pcie: stop using _irqsave Emmanuel Grumbach
2013-12-11 11:17 ` [RFC 00/10] make iwlwifi RT friendly Emmanuel Grumbach
2013-12-15 15:48 ` Sebastian Andrzej Siewior
2013-12-15 17:45   ` Emmanuel Grumbach
2013-12-15 17:46     ` Sebastian Andrzej Siewior
2013-12-15 17:50       ` Emmanuel Grumbach
2013-12-17  9:21         ` Henrik Austad
2013-12-17  9:32           ` Grumbach, Emmanuel
2013-12-17  9:43             ` Henrik Austad

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.