All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/14] some netpoll and netconsole fixes
@ 2012-08-10  7:10 Cong Wang
  2012-08-10  7:10 ` [PATCH 01/14] netpoll: use GFP_ATOMIC in slave_enable_netpoll() and __netpoll_setup() Cong Wang
                   ` (13 more replies)
  0 siblings, 14 replies; 21+ messages in thread
From: Cong Wang @ 2012-08-10  7:10 UTC (permalink / raw)
  To: netdev; +Cc: David S. Miller, Cong Wang

V4:
* rebase against net tree
* fix a compile error in patch 9
* update patch 7 as Stephen suggested

V3:
* add more patches
* update patch 7 as David suggested

V2:
* update patch 1/8 as Eric suggested
* drop the bridge patch, add comments instead
* add patch 8/8

This patchset fixes serval problems in netconsole and netpoll.

I ran this patch in my KVM guest with some netpoll test cases,
even covered with some corner cases, everything worked as expected.

BTW, my kernel config enables the following validatation options:

CONFIG_DEBUG_ATOMIC_SLEEP=y
CONFIG_PROVE_LOCKING=y
CONFIG_PROVE_RCU=y
CONFIG_LOCKDEP=y
CONFIG_RCU_CPU_STALL_TIMEOUT=60
CONFIG_LOCKUP_DETECTOR=y
CONFIG_HARDLOCKUP_DETECTOR=y

Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Cong Wang <amwang@redhat.com>

--------

 netpoll: use GFP_ATOMIC in slave_enable_netpoll() and
 netpoll: make __netpoll_cleanup non-block
 netconsole: do not release spin_lock when calling
 netpoll: take rcu_read_lock_bh() in netpoll_rx()
 netpoll: use netpoll_rx_on() in netpoll_rx()
 netpoll: take rcu_read_lock_bh() in
 bridge: add some comments for NETDEV_RELEASE
 bridge: use list_for_each_entry() in netpoll functions
 netpoll: check netpoll tx status on the right device
 netpoll: convert several functions to bool
 vlan: clean up vlan_dev_hard_start_xmit()
 netpoll: handle vlan tags in netpoll tx and rx path
 netpoll: re-enable irq in poll_napi()
 netconsole.txt: revision of examples for the receiver

 Documentation/networking/netconsole.txt |   19 +++++-
 drivers/net/bonding/bond_main.c         |   12 ++--
 drivers/net/netconsole.c                |    5 --
 drivers/net/team/team.c                 |   16 +++--
 include/linux/if_team.h                 |   30 ++++----
 include/linux/netdevice.h               |    3 +-
 include/linux/netpoll.h                 |   42 +++++++-----
 net/8021q/vlan_dev.c                    |   40 +++++++----
 net/bridge/br_device.c                  |   27 +++-----
 net/bridge/br_forward.c                 |    2 +-
 net/bridge/br_if.c                      |    6 ++-
 net/bridge/br_private.h                 |    4 +-
 net/core/netpoll.c                      |  109 ++++++++++++++++++++++---------
 13 files changed, 194 insertions(+), 121 deletions(-)

^ permalink raw reply	[flat|nested] 21+ messages in thread
* [PATCH v3 0/14] some netpoll and netconsole fixes
@ 2012-08-09 15:00 Cong Wang
  2012-08-09 15:00 ` [PATCH 08/14] bridge: use list_for_each_entry() in netpoll functions Cong Wang
  0 siblings, 1 reply; 21+ messages in thread
From: Cong Wang @ 2012-08-09 15:00 UTC (permalink / raw)
  To: netdev; +Cc: David S. Miller, Cong Wang

V3:
* add more patches
* update patch 7 as David suggested

V2:
* update patch 1/8 as Eric suggested
* drop the bridge patch, add comments instead
* add patch 8/8

This patchset fixes serval problems in netconsole and netpoll.

I ran this patch in my KVM guest with some netpoll test cases,
even covered with some corner cases, everything worked as expected.

BTW, my kernel config enables the following validatation options:

CONFIG_DEBUG_ATOMIC_SLEEP=y
CONFIG_PROVE_LOCKING=y
CONFIG_PROVE_RCU=y
CONFIG_LOCKDEP=y
CONFIG_RCU_CPU_STALL_TIMEOUT=60
CONFIG_LOCKUP_DETECTOR=y
CONFIG_HARDLOCKUP_DETECTOR=y

Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Cong Wang <amwang@redhat.com>

--------

 netpoll: use GFP_ATOMIC in slave_enable_netpoll() and
 netpoll: make __netpoll_cleanup non-block
 netconsole: do not release spin_lock when calling
 netpoll: take rcu_read_lock_bh() in netpoll_rx()
 netpoll: use netpoll_rx_on() in netpoll_rx()
 netpoll: take rcu_read_lock_bh() in
 bridge: add some comments for NETDEV_RELEASE
 bridge: use list_for_each_entry() in netpoll functions
 netpoll: check netpoll tx status on the right device
 netpoll: convert several functions to bool
 vlan: clean up vlan_dev_hard_start_xmit()
 netpoll: handle vlan tags in netpoll tx and rx path
 netpoll: re-enable irq in poll_napi()
 netconsole.txt: revision of examples for the receiver


 Documentation/networking/netconsole.txt |   19 +++++-
 drivers/net/bonding/bond_main.c         |   12 ++--
 drivers/net/netconsole.c                |    5 --
 drivers/net/team/team.c                 |   16 +++--
 include/linux/if_team.h                 |    2 +-
 include/linux/netdevice.h               |    3 +-
 include/linux/netpoll.h                 |   42 +++++++-----
 net/8021q/vlan_dev.c                    |   40 +++++++----
 net/bridge/br_device.c                  |   27 +++-----
 net/bridge/br_forward.c                 |    2 +-
 net/bridge/br_if.c                      |    5 +-
 net/bridge/br_private.h                 |    4 +-
 net/core/netpoll.c                      |  109 ++++++++++++++++++++++---------
 13 files changed, 179 insertions(+), 107 deletions(-)

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

end of thread, other threads:[~2012-08-10  8:32 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-10  7:10 [PATCH v4 00/14] some netpoll and netconsole fixes Cong Wang
2012-08-10  7:10 ` [PATCH 01/14] netpoll: use GFP_ATOMIC in slave_enable_netpoll() and __netpoll_setup() Cong Wang
2012-08-10  7:10 ` [PATCH 02/14] netpoll: make __netpoll_cleanup non-block Cong Wang
2012-08-10  7:10 ` [PATCH 03/14] netconsole: do not release spin_lock when calling __netpoll_cleanup Cong Wang
2012-08-10  7:10 ` [PATCH 04/14] netpoll: take rcu_read_lock_bh() in netpoll_rx() Cong Wang
2012-08-10  7:10 ` [PATCH 05/14] netpoll: use netpoll_rx_on() " Cong Wang
2012-08-10  7:10 ` [PATCH 06/14] netpoll: take rcu_read_lock_bh() in netpoll_send_skb_on_dev() Cong Wang
2012-08-10  7:10 ` [PATCH 07/14] bridge: add some comments for NETDEV_RELEASE Cong Wang
2012-08-10  7:10 ` [PATCH 08/14] bridge: use list_for_each_entry() in netpoll functions Cong Wang
2012-08-10  7:10 ` [PATCH 09/14] netpoll: check netpoll tx status on the right device Cong Wang
2012-08-10  7:20   ` Jiri Pirko
2012-08-10  7:52     ` Cong Wang
2012-08-10  8:32       ` Jiri Pirko
2012-08-10  7:10 ` [PATCH 10/14] netpoll: convert several functions to bool Cong Wang
2012-08-10  7:10 ` [PATCH 11/14] vlan: clean up vlan_dev_hard_start_xmit() Cong Wang
2012-08-10  7:14   ` Patrick McHardy
2012-08-10  7:47     ` Cong Wang
2012-08-10  7:10 ` [PATCH 12/14] netpoll: handle vlan tags in netpoll tx and rx path Cong Wang
2012-08-10  7:10 ` [PATCH 13/14] netpoll: re-enable irq in poll_napi() Cong Wang
2012-08-10  7:10 ` [PATCH 14/14] netconsole.txt: revision of examples for the receiver of kernel messages Cong Wang
  -- strict thread matches above, loose matches on Subject: below --
2012-08-09 15:00 [PATCH v3 0/14] some netpoll and netconsole fixes Cong Wang
2012-08-09 15:00 ` [PATCH 08/14] bridge: use list_for_each_entry() in netpoll functions Cong Wang

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.