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>
index | next in thread | previous in thread | raw e-mail
On Thu, Feb 3, 2011 at 12:29, John Baldwin <jhb@freebsd.org> wrote:
>> ip = mtod(m, struct ip *);
>> offset = off + sizeof(*sh);
>> if (SCTP_BUF_LEN(m) < offset) {
>> @@ -5944,7 +5947,7 @@ sctp_input(struct mbuf *m, int off)
>> ip = mtod(m, struct ip *);
>> }
>> sh = (struct sctphdr *)((caddr_t)ip + off);
>> - cpu_to_use = ntohl(sh->v_tag) % mp_ncpus;
>> + cpu_to_use = ntohl(sh->v_tag) % mp_maxid;
>
> Hmmm, this is more complicated. Can sctp_queue_to_mcore() handle the fact
> that a cpu_to_use value might not be valid? If not you might want to maintain
> a separate "dense" virtual CPU ID table numbered 0 .. mp_ncpus - 1 that maps
> to "present" FreeBSD CPU IDs. I think Robert has done something similar to
> support RSS in TCP. Does that make sense?
Plus mp_maxid is inclusive, so rrs probably meant (mp_maxid + 1) not
mp_maxid in that modulus.
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTikLJ_fAFiFWCm%2Bwnrzb-1EF%2Bf4rOzTufSHUe7Ky>
