Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 Feb 2011 12:38:24 -0800
From:      Juli Mallett <jmallett@FreeBSD.org>
To:        John Baldwin <jhb@freebsd.org>
Cc:        svn-src-head@freebsd.org, Randall Stewart <rrs@freebsd.org>, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r218232 - head/sys/netinet
Message-ID:  <AANLkTikLJ_fAFiFWCm%2Bwnrzb-1EF%2Bf4rOzTufSHUe7Ky@mail.gmail.com>
In-Reply-To: <201102031529.25072.jhb@freebsd.org>
References:  <201102031922.p13JML8i055697@svn.freebsd.org> <201102031529.25072.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Feb 3, 2011 at 12:29, John Baldwin <jhb@freebsd.org> wrote:
>> =A0 =A0 =A0 =A0 =A0 =A0 =A0 ip =3D mtod(m, struct ip *);
>> =A0 =A0 =A0 =A0 =A0 =A0 =A0 offset =3D off + sizeof(*sh);
>> =A0 =A0 =A0 =A0 =A0 =A0 =A0 if (SCTP_BUF_LEN(m) < offset) {
>> @@ -5944,7 +5947,7 @@ sctp_input(struct mbuf *m, int off)
>> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ip =3D mtod(m, struct ip *);
>> =A0 =A0 =A0 =A0 =A0 =A0 =A0 }
>> =A0 =A0 =A0 =A0 =A0 =A0 =A0 sh =3D (struct sctphdr *)((caddr_t)ip + off)=
;
>> - =A0 =A0 =A0 =A0 =A0 =A0 cpu_to_use =3D ntohl(sh->v_tag) % mp_ncpus;
>> + =A0 =A0 =A0 =A0 =A0 =A0 cpu_to_use =3D ntohl(sh->v_tag) % mp_maxid;
>
> Hmmm, this is more complicated. =A0 Can sctp_queue_to_mcore() handle the =
fact
> that a cpu_to_use value might not be valid? =A0If not you might want to m=
aintain
> a separate "dense" virtual CPU ID table numbered 0 .. mp_ncpus - 1 that m=
aps
> to "present" FreeBSD CPU IDs. =A0I think Robert has done something simila=
r to
> support RSS in TCP. =A0Does that make sense?

Plus mp_maxid is inclusive, so rrs probably meant (mp_maxid + 1) not
mp_maxid in that modulus.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTikLJ_fAFiFWCm%2Bwnrzb-1EF%2Bf4rOzTufSHUe7Ky>