> On Jan 24, 2017, at 4:56 PM, Olivier MATZ <olivier.m...@6wind.com> wrote: > > Hi, > > On Sat, 21 Jan 2017 16:28:29 +0000, "Ananyev, Konstantin" > <konstantin.anan...@intel.com> wrote: >>> -----Original Message----- >>> From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Ilya >>> Matveychikov Sent: Saturday, January 21, 2017 3:08 PM >>> To: Yigit, Ferruh <ferruh.yi...@intel.com> >>> Cc: dev@dpdk.org >>> Subject: Re: [dpdk-dev] [PATCH] mbuf: remove redundant line in >>> rte_pktmbuf_attach >>> >>> >>>> On Jan 20, 2017, at 4:08 PM, Ferruh Yigit >>>> <ferruh.yi...@intel.com> wrote: >>>> >>>> On 1/20/2017 12:19 AM, Ilya Matveychikov wrote: >>>>> mi->next will be assigned to NULL few lines later, trivial patch >>>>> >>>>> Signed-off-by: Ilya V. Matveychikov <matvejchi...@gmail.com> >>>>> --- >>>>> lib/librte_mbuf/rte_mbuf.h | 1 - >>>>> 1 file changed, 1 deletion(-) >>>>> >>>>> diff --git a/lib/librte_mbuf/rte_mbuf.h >>>>> b/lib/librte_mbuf/rte_mbuf.h index ead7c6e..5589d54 100644 >>>>> --- a/lib/librte_mbuf/rte_mbuf.h >>>>> +++ b/lib/librte_mbuf/rte_mbuf.h >>>>> @@ -1139,7 +1139,6 @@ static inline void >>>>> rte_pktmbuf_attach(struct rte_mbuf *mi, struct rte_mbuf *m) >>>>> mi->buf_addr = m->buf_addr; mi->buf_len = m->buf_len; >>>>> >>>>> - mi->next = m->next; >>>> > > Fixes: ea672a8b1655 ("mbuf: remove the rte_pktmbuf structure") > > Acked-by: Olivier Matz <olivier.m...@6wind.com> > > >>>> Do you know why attaching mbuf is not supporting multi-segment? >> >> This is supported, but you have to do it segment by segment. >> Actually rte_pktmbuf_clone() does that. >> Konstantin >> >> >>>> Perhaps this can be documented in function comment, as one of the >>>> "not supported" items. >>> >>> No, I don’t know. For my application I’ve found that nb_segs with >>> it’s limit in 256 segments is very annoying and I’ve decided not to >>> use DPDK functions that dealt with nb_segs… But it is not about the >>> rte_pktmbuf_attach() function and the patch. > > > Out of curiosity, can you explain why your application needs more > than 256 segments? When we were discussing the possibility of extending > this field to 16 bits, Konstantin convinced me that it was not so > useful.
In my application I need to do IPv4 fragments reassembly. There is no explicit limit of number of fragments in datagram, so I’m trying to avoid any limitations and `nb_segs` here is a constraint for me. Expanding it from 8-bit to 16-bit can solve that issue for me. But I don’t remember are there any other places in DPDK where we need to know how many segments are in the packet? I mean that is `nb_segs` required at all?