freebsd-nq/sys
Adrian Chadd 8bde802a2b The users of RSS shouldn't be directly concerned about hash -> CPU ID
mappings.  Instead, they should be first mapping to an RSS bucket and
then querying the RSS bucket -> CPU ID mapping to figure out the target
CPU.

When (if?) RSS rebalancing is implemented or some other (non round-robin)
distribution of work from buckets to CPU IDs, various bits of code - both
userland and kernel - will need to know how this mapping works.

So, to support this:

* Add a new function rss_m2bucket() - this maps an mbuf to a given bucket.
  Anything which is currently doing hash -> CPU work may instead wish to
  do hash -> bucket, and then query the bucket->cpuid map for which
  CPU it belongs on.  Or, map it to a bucket, then re-pin that bucket ->
  CPU during a rebalance operation.

* For userland applications which wish to exploit affinity to RSS buckets,
  the bucket -> CPU ID mapping is now available via a sysctl.
  net.inet.rss.bucket_mapping lists the bucket to CPU ID mapping via
  a list of bucket:cpu pairs.
2014-05-27 08:06:20 +00:00
..
amd64 Add segment protection and limits violation checks in vie_calculate_gla() 2014-05-27 04:26:22 +00:00
arm Rework the Ti GPIO driver to work on multiple SoCs. At the moment it could 2014-05-26 18:02:36 +00:00
boot "%p" formatting already includes "0x" prefix in printout. 2014-05-21 18:02:19 +00:00
bsm IFp4 @1192291: 2014-04-07 20:44:00 +00:00
cam Provide better descriptions for 'struct ctl_scsiio' fields; based mostly 2014-05-04 15:35:04 +00:00
cddl Improve sysctl descriptions for new ZFS sysctls: 2014-05-22 05:30:38 +00:00
compat In freebsd32_sendmsg(), replace the call to sockargs() followed by a 2014-04-05 18:56:01 +00:00
conf Initial import of character device in userspace support for FreeBSD. 2014-05-23 08:46:28 +00:00
contrib Move mutex creation from ipf_log_soft_init() to ipf_log_soft_create() 2014-05-24 06:05:21 +00:00
crypto NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
ddb ddb: Minor style cleanups. 2014-03-31 16:37:41 +00:00
dev Remove r264317 by accident. 2014-05-27 01:47:23 +00:00
fs Initial import of character device in userspace support for FreeBSD. 2014-05-23 08:46:28 +00:00
gdb
geom Add a topology trace to the g_spoil_event. 2014-05-19 16:08:15 +00:00
gnu Symbolic bindings for the dts files... 2014-02-28 16:51:33 +00:00
i386 imagact_binmisc builds for all supported architectures, so enable it for all. 2014-05-22 05:04:40 +00:00
ia64 Bring in the mpr(4) driver for LSI's MPT3 12Gb SAS controllers. 2014-05-02 20:25:09 +00:00
isa Remove vestiges of knowing the ISA bus, which we gave up on around 20 2014-03-19 21:03:04 +00:00
kern Add a new taskqueue setup method that takes a cpuid to pin the 2014-05-24 20:37:15 +00:00
kgssapi
libkern Fix typo 2013-11-29 20:14:26 +00:00
mips Remove duplicate: 2014-05-21 21:30:00 +00:00
modules Initial import of character device in userspace support for FreeBSD. 2014-05-23 08:46:28 +00:00
net Bump bhyve allocation up to 20 bits to avoid 2014-05-20 02:59:13 +00:00
net80211 Use logical rather than bitwise OR in if() expression. 2014-04-26 23:22:49 +00:00
netgraph Make ng_mppc to not disable the node in case of multiple packet loss. 2014-05-22 07:27:04 +00:00
netinet The users of RSS shouldn't be directly concerned about hash -> CPU ID 2014-05-27 08:06:20 +00:00
netinet6 Cancel DAD for an ifa when the ifp has ND6_IFF_IFDISABLED as early as 2014-05-16 15:53:31 +00:00
netipsec Only do a ports check if this is a NAT-T SA. Otherwise other 2014-05-24 09:29:23 +00:00
netnatm
netpfil Since ipfw nat configures all options in one step, we should set all bits 2014-05-18 14:25:19 +00:00
netsmb Remove redundant unlock. 2014-04-17 12:22:08 +00:00
nfs - Remove rt_metrics_lite and simply put its members into rtentry. 2014-03-05 01:17:47 +00:00
nfsclient For software builds, the NFS client does many small 2013-12-07 23:05:59 +00:00
nfsserver The PR reported that the old NFS server did not set uio_td == NULL 2014-04-24 20:47:58 +00:00
nlm Correct a typo in nlm_find_host_by_addr(): the intention of the 2014-03-11 00:25:55 +00:00
ofed Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
opencrypto allow the kern.cryptodevallowsoft sysctl to enable symetric/hashes too... 2014-03-11 01:45:46 +00:00
pc98 lindev(4): finish the partial commit in r265212 2014-05-02 07:14:22 +00:00
pci Increase the number of TX DMA segments from 32 to 35. It turned 2014-03-31 01:54:59 +00:00
powerpc oea64 uses 4k pages, too. 2014-05-15 15:17:44 +00:00
rpc Properly free resources in case of error. 2014-05-02 20:45:55 +00:00
security audit: plug FILEDESC_LOCK leak in audit_canon_path. 2014-03-21 01:30:33 +00:00
sparc64 Bring in the mpr(4) driver for LSI's MPT3 12Gb SAS controllers. 2014-05-02 20:25:09 +00:00
sys Garbage-collect a couple of unused identifiers. 2014-05-27 02:00:43 +00:00
teken Fix typo. 2014-02-06 13:28:06 +00:00
tools Fix logic error. <blush> 2014-04-30 20:52:38 +00:00
ufs Due to reasons unknown at this time, the system can be forced to write 2014-05-06 20:40:16 +00:00
vm There is no reason to perform the pmap_remove() on the kernel pmap while 2014-05-23 16:22:36 +00:00
x86 Whitespace fix. 2014-05-22 18:13:17 +00:00
xdr
xen Make this compile with gcc. 2014-04-05 22:43:18 +00:00
Makefile Add a new target cscope-hook. 2014-05-15 03:47:52 +00:00