Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 May 2002 23:45:28 -0500 (CDT)
From:      Mike Silbersack <silby@silby.com>
To:        Andre Oppermann <oppermann@pipeline.ch>
Cc:        freebsd-net@freebsd.org
Subject:   Re: Bug in net/route.[ch] with rmx_pksent while cloning
Message-ID:  <20020530233919.K22164-100000@patrocles.silby.com>
In-Reply-To: <3CF6B748.E8CA7FC6@pipeline.ch>

next in thread | previous in thread | raw e-mail | index | archive | help

On Fri, 31 May 2002, Andre Oppermann wrote:

Ok, here we go.

>  		if (req == RTM_RESOLVE) {
>  			rt->rt_rmx = (*ret_nrt)->rt_rmx; /* copy metrics */
> +			rt->rt_rmx.rmx_pksent = 0; /* reset packet counter */

This has been committed to -current, and will be MFC'd after 4.6-release
is tagged and away.  I guess this could really throw stats off for some
people, good catch!

> -	int	rtm_use;	/* from rtentry */
> +	u_long	rtm_use;	/* from rtentry */

On i386 systems, making such a change should be safe, as int and u_long
are both 32 bits, if I recall correctly.  However, changing this will
change the size of the structure on 64-bit architectures, so I'm not sure
I want to touch it.  I know that if you change the size of rtentry, you
need to recompile route to match the kernel if you want any routing
functions to work.  Will similar breakage occur if rt_msghdr is changed?

I agree that your change is correct, I just don't want to break anything
in the process of making it better. :)

> -		printf("%6ld %8ld ", rt->rt_refcnt, rt->rt_use);
> +		printf("%6ld %8lu ", rt->rt_refcnt, rt->rt_use);

Also committed and slated for MFC.

Mike "Silby" Silbersack


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020530233919.K22164-100000>