Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-10 Thread Jarek Poplawski
On Mon, Jul 09, 2007 at 07:43:40PM +0300, Ranko Zivojnovic wrote: On Mon, 2007-07-09 at 15:52 +0200, Patrick McHardy wrote: Ranko Zivojnovic wrote: Patrick, I've taken liberty to try and implement this myself. Attached is the whole new

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-10 Thread Ranko Zivojnovic
On Tue, 2007-07-10 at 09:34 +0200, Jarek Poplawski wrote: On Mon, Jul 09, 2007 at 07:43:40PM +0300, Ranko Zivojnovic wrote: On Mon, 2007-07-09 at 15:52 +0200, Patrick McHardy wrote: Ranko Zivojnovic wrote: Patrick, I've taken liberty to try and implement this myself. Attached is the

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-10 Thread Jarek Poplawski
On Tue, Jul 10, 2007 at 01:09:07PM +0300, Ranko Zivojnovic wrote: On Tue, 2007-07-10 at 09:34 +0200, Jarek Poplawski wrote: On Mon, Jul 09, 2007 at 07:43:40PM +0300, Ranko Zivojnovic wrote: On Mon, 2007-07-09 at 15:52 +0200, Patrick McHardy wrote: Ranko Zivojnovic wrote: Patrick,

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-10 Thread Patrick McHardy
Jarek Poplawski wrote: On Tue, Jul 10, 2007 at 01:09:07PM +0300, Ranko Zivojnovic wrote: However I decided not to use _rcu based iteration neither the rcu_read_lock() after going through the RCU documentation and a bunch of examples in kernel that iterate through the lists using non _rcu macros

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-10 Thread Jarek Poplawski
On Tue, Jul 10, 2007 at 02:20:12PM +0200, Patrick McHardy wrote: Jarek Poplawski wrote: On Tue, Jul 10, 2007 at 01:09:07PM +0300, Ranko Zivojnovic wrote: However I decided not to use _rcu based iteration neither the rcu_read_lock() after going through the RCU documentation and a bunch of

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-10 Thread Jarek Poplawski
On Tue, Jul 10, 2007 at 03:10:34PM +0200, Jarek Poplawski wrote: On Tue, Jul 10, 2007 at 02:20:12PM +0200, Patrick McHardy wrote: Jarek Poplawski wrote: On Tue, Jul 10, 2007 at 01:09:07PM +0300, Ranko Zivojnovic wrote: However I decided not to use _rcu based iteration neither the

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-09 Thread Jarek Poplawski
On Sat, Jul 07, 2007 at 05:10:54PM +0200, Patrick McHardy wrote: On Sat, 7 Jul 2007, Ranko Zivojnovic wrote: On Fri, 2007-07-06 at 16:21 +0200, Patrick McHardy wrote: There is at least one ABBA deadlock, est_timer does: read_lock(est_lock) spin_lock(e-stats_lock) (which is dev-queue_lock)

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-09 Thread Jarek Poplawski
On Fri, Jul 06, 2007 at 04:16:18PM +0300, Ranko Zivojnovic wrote: On Fri, 2007-07-06 at 14:47 +0200, Jarek Poplawski wrote: On Fri, Jul 06, 2007 at 08:45:23AM +0200, Jarek Poplawski wrote: On Fri, Jul 06, 2007 at 09:08:43AM +0300, Ranko Zivojnovic wrote: ... In order to get that

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-09 Thread Ranko Zivojnovic
On Sat, 2007-07-07 at 17:10 +0200, Patrick McHardy wrote: On Sat, 7 Jul 2007, Ranko Zivojnovic wrote: Maybe the appropriate way to fix this would to call gen_kill_estimator, with the appropriate lock order, before the call to qdisc_destroy, so when dev-queue_lock is taken for qdisc_destroy

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-09 Thread Patrick McHardy
Ranko Zivojnovic wrote: On Sat, 2007-07-07 at 17:10 +0200, Patrick McHardy wrote: On Sat, 7 Jul 2007, Ranko Zivojnovic wrote: Maybe the appropriate way to fix this would to call gen_kill_estimator, with the appropriate lock order, before the call to qdisc_destroy, so when dev-queue_lock is

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-09 Thread Ranko Zivojnovic
On Mon, 2007-07-09 at 15:52 +0200, Patrick McHardy wrote: Ranko Zivojnovic wrote: Patrick, I've taken liberty to try and implement this myself. Attached is the whole new gen_estimator-fix-locking-and-timer-related-bugs.patch that is RCU lists based. Please be kind to review. Thanks for

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-09 Thread Patrick McHardy
Ranko Zivojnovic wrote: On Mon, 2007-07-09 at 15:52 +0200, Patrick McHardy wrote: You could also use synchronize_rcu(), estimator destruction is not particulary performance critical. I've tried synchronize_rcu(), but it went kaboom with the below, thus call_rcu() must stay: ---cut---

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-07 Thread Ranko Zivojnovic
On Fri, 2007-07-06 at 17:55 +0300, Ranko Zivojnovic wrote: On Fri, 2007-07-06 at 16:21 +0200, Patrick McHardy wrote: Ranko Zivojnovic wrote: BUG: spinlock lockup on CPU#0, swapper/0, c03eff80 [c01ed1fe] _raw_spin_lock+0x108/0x13c [c02a8468] __qdisc_run+0x97/0x1b0 [c02a96f3]

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-07 Thread Patrick McHardy
On Sat, 7 Jul 2007, Ranko Zivojnovic wrote: On Fri, 2007-07-06 at 16:21 +0200, Patrick McHardy wrote: There is at least one ABBA deadlock, est_timer does: read_lock(est_lock) spin_lock(e-stats_lock) (which is dev-queue_lock) and qdisc_destroy calls htb_destroy under dev-queue_lock, which

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Jarek Poplawski
On Thu, Jul 05, 2007 at 06:59:25PM +0300, Ranko Zivojnovic wrote: On Thu, 2007-07-05 at 17:34 +0300, Ranko Zivojnovic wrote: Anyhow - I am currently running 2.6.22-rc6-mm1 + sch_htb patch and running a test script that always managed to reproduce the problem within half hour - so far it

Fwd: Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Jarek Poplawski
- Forwarded message from Ranko Zivojnovic [EMAIL PROTECTED] - Date: Thu, 05 Jul 2007 18:59:25 +0300 From: Ranko Zivojnovic [EMAIL PROTECTED] Subject: Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree To: Jarek Poplawski [EMAIL PROTECTED] Cc: [EMAIL

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Jarek Poplawski
On Fri, Jul 06, 2007 at 08:14:20AM +0200, Jarek Poplawski wrote: ... This new lockup bug you have just found needs some time to figure out. BTW, I wonder if you had lockdep on (CONFIG_PROVE_LOCKING or CONFIG_LOCK_ALLOC)? Should be: (CONFIG_PROVE_LOCKING or CONFIG_DEBUG_LOCK_ALLOC)? Jarek P. -

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Jarek Poplawski
On Fri, Jul 06, 2007 at 09:08:43AM +0300, Ranko Zivojnovic wrote: On Thu, 2007-07-05 at 18:59 +0300, Ranko Zivojnovic wrote: On Thu, 2007-07-05 at 17:34 +0300, Ranko Zivojnovic wrote: Anyhow - I am currently running 2.6.22-rc6-mm1 + sch_htb patch and running a test script that always

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Jarek Poplawski
On Fri, Jul 06, 2007 at 08:45:23AM +0200, Jarek Poplawski wrote: On Fri, Jul 06, 2007 at 09:08:43AM +0300, Ranko Zivojnovic wrote: ... In order to get that parameter out of the way - I will make the same test on a real machine. BTW, maybe it would be better to try with something more stable

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Ranko Zivojnovic
On Fri, 2007-07-06 at 08:45 +0200, Jarek Poplawski wrote: On Fri, Jul 06, 2007 at 09:08:43AM +0300, Ranko Zivojnovic wrote: On Thu, 2007-07-05 at 18:59 +0300, Ranko Zivojnovic wrote: On Thu, 2007-07-05 at 17:34 +0300, Ranko Zivojnovic wrote: Anyhow - I am currently running

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Ranko Zivojnovic
On Fri, 2007-07-06 at 15:27 +0200, Patrick McHardy wrote: Ranko Zivojnovic wrote: Managed to get stuck on a normal machine as well (2.6.22-rc6-mm1 + sch_htb patch) ... here's the log: Can you post the script you're using to reproduce this please? Attached. R. tc-crash.sh

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Patrick McHardy
Ranko Zivojnovic wrote: Managed to get stuck on a normal machine as well (2.6.22-rc6-mm1 + sch_htb patch) ... here's the log: Can you post the script you're using to reproduce this please? - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Ranko Zivojnovic
On Fri, 2007-07-06 at 14:47 +0200, Jarek Poplawski wrote: On Fri, Jul 06, 2007 at 08:45:23AM +0200, Jarek Poplawski wrote: On Fri, Jul 06, 2007 at 09:08:43AM +0300, Ranko Zivojnovic wrote: ... In order to get that parameter out of the way - I will make the same test on a real machine.

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Patrick McHardy
Ranko Zivojnovic wrote: BUG: spinlock lockup on CPU#0, swapper/0, c03eff80 [c01ed1fe] _raw_spin_lock+0x108/0x13c [c02a8468] __qdisc_run+0x97/0x1b0 [c02a96f3] qdisc_watchdog+0x19/0x58 [c02fe5e7] __lock_text_start+0x37/0x43 [c02a9730] qdisc_watchdog+0x56/0x58 [c02a96da]

Re: + gen_estimator-fix-locking-and-timer-related-bugs.patch added to -mm tree

2007-07-06 Thread Ranko Zivojnovic
On Fri, 2007-07-06 at 16:21 +0200, Patrick McHardy wrote: Ranko Zivojnovic wrote: BUG: spinlock lockup on CPU#0, swapper/0, c03eff80 [c01ed1fe] _raw_spin_lock+0x108/0x13c [c02a8468] __qdisc_run+0x97/0x1b0 [c02a96f3] qdisc_watchdog+0x19/0x58 [c02fe5e7] __lock_text_start+0x37/0x43