Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 15 Mar 2014 17:13:48 -0600
From:      Ian Lepore <ian@FreeBSD.org>
To:        Hooman Fazaeli <hoomanfazaeli@gmail.com>
Cc:        FreeBSD Hackers <freebsd-hackers@FreeBSD.org>, Rui Paulo <rpaulo@FreeBSD.org>
Subject:   Re: mbuf question
Message-ID:  <1394925228.1149.558.camel@revolution.hippie.lan>
In-Reply-To: <5324DAC0.9020508@gmail.com>
References:  <53230214.7010501@gmail.com> <BBAFAB2A-F496-46A2-8FE0-224BE562EAA7@FreeBSD.org> <532405B7.2020007@gmail.com> <96659837-1FDC-421D-A339-87104A0075C7@FreeBSD.org> <5324D669.804@gmail.com> <5324DAC0.9020508@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 2014-03-16 at 03:27 +0430, Hooman Fazaeli wrote:
> On 3/16/2014 3:08 AM, Hooman Fazaeli wrote:
> > On 3/15/2014 9:09 PM, Rui Paulo wrote:
> >> On 15 Mar 2014, at 00:48, Hooman Fazaeli <hoomanfazaeli@gmail.com> wrote:
> >>> What about the area started at (m->m_ext + 1) whose size is (MHLEN - sizeof(struct m_ext))?
> >>> Is there any known uses of this area in the stack?
> >> I'm not sure what you mean by m_ext + 1, but what are you trying to do?  If you need to tag an mbuf, use mbuf tags.
> >>
> >> -- 
> >> Rui Paulo
> >
> > (m->m_ext+ 1) points to the (unused?) area in m->m_dat.MHright after the space occupied by m_ext.
> > I am well aware of mbuf tags. I was just thinking toavoid the overhead of m_tag allocation/de-allocation
> > and store my little piece of data directly in mbufs.
> >
> sorry for my mistake. (m->m_ext + 1) is a totally wrong notation as m_ext is a struct.
> The area I was talking about is (m->m_pktdat + sizeof(m->m_ext)).
> Is this part of mbuf+cluster has any known uses? can we use it to store some
> data about the packet (instead of using mbuf tags)?

It sounds dangerous to put data there and assume that there will never
be kernel changes in the future that starts using that area.

How about an optimization that puts tags in that area when it's
available to avoid the allocation overhead?  I don't know much about the
network code, so maybe that's not a sensible idea.

-- Ian





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