freebsd-skq/sys
jhb 4a72d2d59a Don't free mbufs when stopping an interface in netmap mode.
Currently if you ifconfig down a vtnet interface while it is being used
via netmap, the kernel panics due to trying to treat the cookie values
in the virtio rings as mbufs to be freed. When netmap is enabled, these
cookie values are pointers to something else.

Note that other netmap-aware drivers don't seem to need this as they
store the mbuf pointers in the software rings that mirror the hardware
descriptor rings, and since netmap doesn't touch those, the software
state always has NULL mbuf pointers causing the loops to free mbufs to
not do anything. However, vtnet reuses the same state area for both
netmap and non-netmap mode, so it needs to explicitly avoid looking at
the rings and treating the cookie values as mbufs if netmap is
enabled.

Differential Revision:	https://reviews.freebsd.org/D2348
Reviewed by:	adrian, bryanv, luigi
MFC after:	1 week
Sponsored by:	Norse Corp, Inc.
2015-04-29 17:48:25 +00:00
..
amd64 Microsoft vmbus, storage and other related driver enhancements for HyperV. 2015-04-29 10:12:34 +00:00
arm Fix pmap_dcache_wb_pou in the new armv6 pmap to correctly achieve icache 2015-04-28 16:47:34 +00:00
arm64 Add pmap_mapbios and pmap_unmapbios. These will be needed to support acpi. 2015-04-29 15:00:43 +00:00
boot Improve support for blacklisting bad memory locations. The user can supply 2015-04-29 15:57:14 +00:00
bsm
cam Revert r282227. It is clearly incorrect as it frees an object that is still 2015-04-29 17:18:41 +00:00
cddl Fix misuse of input argument in traverse_visitbp 2015-04-28 22:46:58 +00:00
compat Simplify linux_getcwd(), removing code that was longer used. 2015-04-23 08:41:50 +00:00
conf Make it possible to statically link SIFTR into the kernel 2015-04-29 12:37:45 +00:00
contrib Move ALTQ from contrib to net/altq. The ALTQ code is for many years 2015-04-16 20:22:40 +00:00
crypto In the version of gcc in the FreeBSD tree, this modification was made to 2015-04-16 17:42:52 +00:00
ddb
dev Don't free mbufs when stopping an interface in netmap mode. 2015-04-29 17:48:25 +00:00
fs Fix the NFS server's handling of a bogus NFSv2 ROOT RPC. 2015-04-25 00:58:24 +00:00
gdb
geom Move zlib.c from net to libkern. 2015-04-22 14:38:58 +00:00
gnu The GNU Amlogic DTS files have some errors (e.g. bad register 2015-04-11 08:17:39 +00:00
i386 Microsoft vmbus, storage and other related driver enhancements for HyperV. 2015-04-29 10:12:34 +00:00
isa
kern Add kern.racct.enable tunable and RACCT_DISABLED config option. 2015-04-29 10:23:02 +00:00
kgssapi Avoid dynamic syscall overhead for statically compiled modules. 2014-10-26 19:42:44 +00:00
libkern Move zlib.c from net to libkern. 2015-04-22 14:38:58 +00:00
mips The add_bounce_page() function can be called when loading physical 2015-04-28 06:12:37 +00:00
modules Rename the kld for oce(4) to if_oce.ko. ifconfig(8) has special knowledge 2015-04-24 14:47:53 +00:00
net Currently there is no easy way to specify net.isr.maxthreads = all cpus. We need 2015-04-25 16:12:06 +00:00
net80211 iwn, wlan: fix typos 2015-04-10 20:55:17 +00:00
netgraph Move zlib.c from net to libkern. 2015-04-22 14:38:58 +00:00
netinet Brief demo script showing the various values that can be read via 2015-04-29 17:19:55 +00:00
netinet6 Remove now unneded KEY_FREESP() for case when ipsec[46]_process_packet() 2015-04-27 01:11:09 +00:00
netipsec Fix the comment. We will not do SPD lookup again, because 2015-04-28 11:03:47 +00:00
netnatm
netpfil Fix panic introduced by r282070. 2015-04-28 17:05:55 +00:00
netsmb
nfs Avoid closing unallocated socket in case socreate fails. 2015-02-28 20:30:29 +00:00
nfsclient Remove some oldnfs remnants. 2015-04-18 16:08:06 +00:00
nfsserver Use M_SIZE() instead of hand-crafted (and mostly correct) NFSMSIZ() macro 2015-01-07 17:22:56 +00:00
nlm Avoid dynamic syscall overhead for statically compiled modules. 2014-10-26 19:42:44 +00:00
ofed fd: remove filedesc argument from fdclose 2015-04-11 15:40:28 +00:00
opencrypto Move zlib.c from net to libkern. 2015-04-22 14:38:58 +00:00
pc98 Fix kernel build ${MACHINE} path 2015-04-16 22:34:10 +00:00
powerpc The add_bounce_page() function can be called when loading physical 2015-04-28 06:12:37 +00:00
rpc Remove hard limits on number of accepting NFS connections. 2015-04-07 10:25:27 +00:00
security cred: add proc_set_cred helper 2015-03-16 00:10:03 +00:00
sparc64 Update this driver to not save copies of registers that are no longer used 2015-04-24 13:12:04 +00:00
sys Add kern.racct.enable tunable and RACCT_DISABLED config option. 2015-04-29 10:23:02 +00:00
teken mdoc: improvements to SEE ALSO. 2014-12-27 07:07:37 +00:00
tools
ufs Limit the number of cylinder groups that will be searched when 2015-04-24 23:27:50 +00:00
vm Improve support for blacklisting bad memory locations. The user can supply 2015-04-29 15:57:14 +00:00
x86 Microsoft vmbus, storage and other related driver enhancements for HyperV. 2015-04-29 10:12:34 +00:00
xdr
xen Merge ^/head r279995 through r280029. 2015-03-15 11:58:52 +00:00
Makefile