[PATCH 2.4] Use double-linked list for dev->qdisc_list

STALE8033d

7 messages, 3 authors, 2004-08-18 · open the first message on its own page

[PATCH 2.4] Use double-linked list for dev->qdisc_list

From: Tomasz Paszkowski <hidden>
Date: 2004-08-04 12:59:26

This patch changes dev->qdisc_list to a double-linked list. This solves
the performance problems when destroying qdiscs with large number of inner
qdiscs.

This is backported version of Patrick McHardy patch (03-qdisc_list-list_h.diff)
for 2.6 kernels.

-- 
Tomasz Paszkowski

Re: [PATCH 2.4] Use double-linked list for dev->qdisc_list

From: Patrick McHardy <hidden>
Date: 2004-08-04 13:30:45

Tomasz Paszkowski wrote:
This patch changes dev->qdisc_list to a double-linked list. This solves
the performance problems when destroying qdiscs with large number of inner
qdiscs.

This is backported version of Patrick McHardy patch (03-qdisc_list-list_h.diff)
or 2.6 kernels.
 
Looks good, except for the last hunk, the BUG_TRAP is valid in 2.4 because
it doesn't use RCU. Change it to BUG_TRAP(list_empty(&dev->qdisc_list)).
 

------------------------------------------------------------------------

#endif
-	BUG_TRAP(dev->qdisc_list == NULL);
	BUG_TRAP(!timer_pending(&dev->watchdog_timer));
-	dev->qdisc_list = NULL;
	spin_unlock_bh(&dev->queue_lock);
	write_unlock(&qdisc_tree_lock);
}
 

Re: [PATCH 2.4] Use double-linked list for dev->qdisc_list

From: Tomasz Paszkowski <hidden>
Date: 2004-08-04 14:56:10

On Wed, Aug 04, 2004 at 03:30:45PM +0200, Patrick McHardy wrote:
Looks good, except for the last hunk, the BUG_TRAP is valid in 2.4 because
it doesn't use RCU. Change it to BUG_TRAP(list_empty(&dev->qdisc_list)).
Thanks. In attachment there's a corrected version of this patch.

-- 
Tomasz Paszkowski
Administrator
Miejskie Sieci Informatyczne e-wro
http://www.e-wro.pl

Re: [PATCH 2.4] Use double-linked list for dev->qdisc_list

From: David S. Miller <hidden>
Date: 2004-08-04 20:44:32

On Wed, 4 Aug 2004 16:56:10 +0200
Tomasz Paszkowski [off-list ref] wrote:
On Wed, Aug 04, 2004 at 03:30:45PM +0200, Patrick McHardy wrote:
quoted
Looks good, except for the last hunk, the BUG_TRAP is valid in 2.4 because
it doesn't use RCU. Change it to BUG_TRAP(list_empty(&dev->qdisc_list)).
Thanks. In attachment there's a corrected version of this patch.
Can someone regenerate this patch with the q_idx fix Patrick
just posted added to it?

Thanks.

Re: [PATCH 2.4] Use double-linked list for dev->qdisc_list

From: Patrick McHardy <hidden>
Date: 2004-08-04 21:50:47

David S. Miller wrote:
Can someone regenerate this patch with the q_idx fix Patrick
just posted added to it?
 
Updated patch for 2.4 attached.

Re: [PATCH 2.4] Use double-linked list for dev->qdisc_list

From: Patrick McHardy <hidden>
Date: 2004-08-14 08:17:12

Hi Dave,

Patrick McHardy wrote:
David S. Miller wrote:
quoted
Can someone regenerate this patch with the q_idx fix Patrick
just posted added to it?
 
Updated patch for 2.4 attached.
seems like you missed this patch.

Regards
Patrick

Re: [PATCH 2.4] Use double-linked list for dev->qdisc_list

From: David S. Miller <hidden>
Date: 2004-08-18 20:10:27

On Sat, 14 Aug 2004 10:17:12 +0200
Patrick McHardy [off-list ref] wrote:
Patrick McHardy wrote:
quoted
David S. Miller wrote:
quoted
Can someone regenerate this patch with the q_idx fix Patrick
just posted added to it?
 
Updated patch for 2.4 attached.
seems like you missed this patch.
Sorry, applied :-)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help