Re: NMI lockup, 2.6.26 release

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Jarek Poplawski
Date: Friday, July 25, 2008 - 12:36 am

Hi Denys,

In case this is still working after hrtimer -> timer change here is
another patch for testing: to check if limiting hrtimers scheduling
could matter here. Btw. could you write what is the approximate
number of htb qdiscs and classes working on each device of this box
(including ifbs)?

Thanks,
Jarek P.

(This patch should be applided to 2.6.26 or .25 after reverting
the previous debugging patch.)

---

 net/sched/sch_htb.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/net/sched/sch_htb.c b/net/sched/sch_htb.c
index 30c999c..ff9e965 100644
--- a/net/sched/sch_htb.c
+++ b/net/sched/sch_htb.c
@@ -162,6 +162,7 @@ struct htb_sched {
 
 	int rate2quantum;	/* quant = rate / rate2quantum */
 	psched_time_t now;	/* cached dequeue time */
+	psched_time_t next_watchdog;
 	struct qdisc_watchdog watchdog;
 
 	/* non shaped skbs; let them go directly thru */
@@ -920,7 +921,11 @@ static struct sk_buff *htb_dequeue(struct Qdisc *sch)
 		}
 	}
 	sch->qstats.overlimits++;
-	qdisc_watchdog_schedule(&q->watchdog, next_event);
+	if (q->next_watchdog < q->now || next_event <=
+	     q->next_watchdog - PSCHED_TICKS_PER_SEC / HZ) {
+		qdisc_watchdog_schedule(&q->watchdog, next_event);
+		q->next_watchdog = next_event;
+	}
 fin:
 	return skb;
 }
@@ -973,6 +978,7 @@ static void htb_reset(struct Qdisc *sch)
 		}
 	}
 	qdisc_watchdog_cancel(&q->watchdog);
+	q->next_watchdog = 0;
 	__skb_queue_purge(&q->direct_queue);
 	sch->q.qlen = 0;
 	memset(q->row, 0, sizeof(q->row));
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
NMI lockup, 2.6.26 release, denys, (Tue Jul 22, 11:42 am)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Tue Jul 22, 1:13 pm)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Tue Jul 22, 1:35 pm)
Re: NMI lockup, 2.6.26 release, denys, (Tue Jul 22, 1:46 pm)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Tue Jul 22, 2:36 pm)
Re: NMI lockup, 2.6.26 release, denys, (Tue Jul 22, 2:45 pm)
Re: NMI lockup, 2.6.26 release, denys, (Wed Jul 23, 12:47 pm)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Wed Jul 23, 2:09 pm)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Wed Jul 23, 3:26 pm)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Wed Jul 23, 4:24 pm)
Re: NMI lockup, 2.6.26 release, denys, (Wed Jul 23, 4:56 pm)
Re: NMI lockup, 2.6.26 release, denys, (Thu Jul 24, 7:56 am)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Thu Jul 24, 10:45 am)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Fri Jul 25, 12:36 am)
Re: NMI lockup, 2.6.26 release, denys, (Fri Jul 25, 2:09 pm)
hrtimers lockups Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Fri Jul 25, 3:31 pm)
Re: NMI lockup, 2.6.26 release, Denys Fedoryshchenko, (Sat Aug 2, 5:55 am)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Sat Aug 2, 6:07 am)
Re: NMI lockup, 2.6.26 release, Denys Fedoryshchenko, (Tue Aug 12, 4:31 am)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Tue Aug 12, 5:40 am)
Re: NMI lockup, 2.6.26 release, Denys Fedoryshchenko, (Wed Aug 13, 12:28 am)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Wed Aug 13, 12:43 am)
Re: NMI lockup, 2.6.26 release, Denys Fedoryshchenko, (Wed Aug 13, 1:02 am)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Wed Aug 13, 1:49 am)
Re: NMI lockup, 2.6.26 release, Denys Fedoryshchenko, (Wed Aug 13, 2:08 am)
Re: NMI lockup, 2.6.26 release, Denys Fedoryshchenko, (Thu Aug 14, 8:07 am)
New: softlockup in 2.6.27-rc3-git2, Denys Fedoryshchenko, (Thu Aug 14, 8:10 am)
Re: NMI lockup, 2.6.26 release, Denys Fedoryshchenko, (Fri Aug 15, 6:13 am)
Re: NMI lockup, 2.6.26 release, Jarek Poplawski, (Fri Aug 15, 7:16 am)