linux/net/sched
Jeff Garzik bfaae0f04c [NET]: fix carrier-on bug?
While looking at a net driver with the following construct,

	if (!netif_carrier_ok(dev))
		netif_carrier_on(dev);

it stuck me that the netif_carrier_ok() check was redundant, since
netif_carrier_on() checks bit __LINK_STATE_NOCARRIER anyway.  This is
the same reason why netif_queue_stopped() need not be called prior to
netif_wake_queue().

This is true, but there is however an unwanted side effect from assuming
that netif_carrier_on() can be called multiple times:  it touches the
watchdog, regardless of pre-existing carrier state.

The fix:  move watchdog-up inside the bit-cleared code path.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2007-10-17 23:26:43 -07:00
..
act_api.c [NET_SCHED] protect action config/dump from irqs 2007-09-14 16:43:05 -07:00
act_gact.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
act_ipt.c [NETFILTER]: Replace sk_buff ** with sk_buff * 2007-10-15 12:26:29 -07:00
act_mirred.c [NET]: Make the device list and device lookups per namespace. 2007-10-10 16:49:10 -07:00
act_nat.c [PKT_SCHED]: Add stateless NAT 2007-10-10 16:53:11 -07:00
act_pedit.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
act_police.c [NET_SCHED]: Cleanup L2T macros and handle oversized packets 2007-10-10 16:49:20 -07:00
act_simple.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_api.c [NET]: Make the device list and device lookups per namespace. 2007-10-10 16:49:10 -07:00
cls_basic.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_fw.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_route.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_rsvp6.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_rsvp.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_rsvp.h [NETLINK]: Use nlmsg_trim() where appropriate 2007-04-25 22:26:37 -07:00
cls_tcindex.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_u32.c [NET]: sparse warning fixes 2007-10-10 16:54:48 -07:00
em_cmp.c [NET_SCHED]: ematch: module autoloading 2007-07-11 19:46:26 -07:00
em_meta.c [NET]: Make the device list and device lookups per namespace. 2007-10-10 16:49:10 -07:00
em_nbyte.c [NET_SCHED]: ematch: module autoloading 2007-07-11 19:46:26 -07:00
em_text.c [NET_SCHED]: ematch: module autoloading 2007-07-11 19:46:26 -07:00
em_u32.c [NET_SCHED]: ematch: module autoloading 2007-07-11 19:46:26 -07:00
ematch.c [NET_SCHED]: ematch: module autoloading 2007-07-11 19:46:26 -07:00
Kconfig [PKT_SCHED]: Add stateless NAT 2007-10-10 16:53:11 -07:00
Makefile [PKT_SCHED]: Add stateless NAT 2007-10-10 16:53:11 -07:00
sch_api.c [NET_SCHED]: Show timer resolution instead of clock resolution in /proc/net/psched 2007-10-10 16:55:59 -07:00
sch_atm.c [ATM]: Replacing kmalloc/memset combination with kzalloc. 2007-07-18 01:46:51 -07:00
sch_blackhole.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
sch_cbq.c [NET_SCHED]: Cleanup L2T macros and handle oversized packets 2007-10-10 16:49:20 -07:00
sch_dsmark.c [NET_SCHED]: Kill CONFIG_NET_CLS_POLICE 2007-07-15 00:03:05 -07:00
sch_fifo.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
sch_generic.c [NET]: fix carrier-on bug? 2007-10-17 23:26:43 -07:00
sch_gred.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
sch_hfsc.c [NET_SCHED]: Kill CONFIG_NET_CLS_POLICE 2007-07-15 00:03:05 -07:00
sch_htb.c [NET_SCHED]: Cleanup L2T macros and handle oversized packets 2007-10-10 16:49:20 -07:00
sch_ingress.c [NETFILTER]: Replace sk_buff ** with sk_buff * 2007-10-15 12:26:29 -07:00
sch_netem.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
sch_prio.c [NET_SCHED] sch_prio.c: remove duplicate call of tc_classify() 2007-08-30 22:35:46 -07:00
sch_red.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
sch_sfq.c [SFQ]: Remove artificial limitation for queue limit. 2007-10-01 21:01:23 -07:00
sch_tbf.c [NET_SCHED]: Cleanup L2T macros and handle oversized packets 2007-10-10 16:49:20 -07:00
sch_teql.c [NET]: Move hardware header operations out of netdevice. 2007-10-10 16:52:52 -07:00