Re: [2.6.0-test9] QoS HTB crash...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hmm - I have to look at 2.6's definition of rb_next. It
might be the case ! I'll check it.

Thanks, devik

On Thu, 30 Oct 2003, David S. Miller wrote:

> On Thu, 30 Oct 2003 20:50:16 +0100 (CET)
> devik <devik@cdi.cz> wrote:
>
> > thanks for the report. I know that there is an issue regarding
> > HTB in 2.6.x. Please send me net/sched/sch_htb.o,
> > net/sched/sch_htb.c (just to be sure) and be sure that you
> > build the kernel with debugging symbols (see debugging section
> > of menuconfig/xconfig).
>
> I think the problem is the changes that were made
> in 2.5.x to htb_next_rb_node().  It used to be:
>
> static void htb_next_rb_node(rb_node_t **n)
> {
>         rb_node_t *p;
>         if ((*n)->rb_right) {
>                 /* child at right. use it or its leftmost ancestor */
>                 *n = (*n)->rb_right;
>                 while ((*n)->rb_left)
>                         *n = (*n)->rb_left;
>                 return;
>         }
>         while ((p = (*n)->rb_parent) != NULL) {
>                 /* if we've arrived from left child then we have next node */
>                 if (p->rb_left == *n) break;
>                 *n = p;
>         }
>         *n = p;
> }
>
> But it was changed into:
>
> static void htb_next_rb_node(struct rb_node **n)
> {
>         *n = rb_next(*n);
> }
>
> This is wrong, the new code has much different side effects
> than the original code.
>
> This looks like the problem, devik what do you think?
>
>

-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux