1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-19 10:53:58 +00:00
freebsd/sys/dev
Navdeep Parhar fddd4f6273 Plug leak in m_unshare.
m_unshare passes on the source mbuf's flags as-is to m_getcl and this
results in a leak if the flags include M_NOFREE.  The fix is to clear
the bits not listed in M_COPYALL before calling m_getcl.  M_RDONLY
should probably be filtered out too but that's outside the scope of this
fix.

Add assertions in the zone_mbuf and zone_pack ctors to catch similar
bugs.

Update netmap_get_mbuf to not pass M_NOFREE to m_getcl.  It's not clear
what the original code was trying to do but it's likely incorrect.
Updated code is no different functionally but it avoids the newly added
assertions.

Reviewed by:	gnn@
Sponsored by:	Chelsio Communications
Differential Revision:	https://reviews.freebsd.org/D5698
2016-03-26 23:39:53 +00:00
..
aac Remove taskqueue_enqueue_fast(). 2016-03-01 17:47:32 +00:00
aacraid Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
acpi_support
acpica Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
adb
adlink
advansys Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
ae Fix a potentially "forever" loop. 2016-02-17 21:24:26 +00:00
age Fix variable assignment. 2016-02-18 01:24:10 +00:00
agp agp: Do not attach to Intel GEN6+ 2016-03-12 09:44:23 +00:00
aha Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
ahb
ahci Convert a long to rman_res_t, fixing a sign extension bug. 2016-03-20 14:21:07 +00:00
aic Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
aic7xxx
alc Fix variable assignment. 2016-02-18 01:24:10 +00:00
ale Fix variable assignment. 2016-02-18 01:24:10 +00:00
alpm
altera As <machine/vm.h> is included from <vm/vm.h>, there is no need to 2016-02-22 09:10:23 +00:00
amdpm
amdsbwd Replace several bus_alloc_resource() calls with bus_alloc_resource_any() 2016-02-27 03:34:01 +00:00
amdsmb
amdtemp
amr Don't assume that bio_cmd is a bitfield. 2016-03-10 00:36:52 +00:00
an Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
arcmsr Make sure we check for CAM_CDB_POINTER for all drivers. Also, for the 2016-03-15 05:17:29 +00:00
asmc
ata Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
ath Remove taskqueue_enqueue_fast(). 2016-03-01 17:47:32 +00:00
atkbdc Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
auxio
bce
beri
bfe
bge
bhnd Fix the resource_list_print_type() calls to use uintmax_t. 2016-03-22 22:25:08 +00:00
bktr
bm
buslogic
bvm
bwi
bwn Remove taskqueue_enqueue_fast(). 2016-03-01 17:47:32 +00:00
bxe Modifications to achieve a common source base from FreeBSD7.x thru 10.x 2016-03-21 18:48:20 +00:00
cadence
cardbus Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
cas
ce As <machine/pmap.h> is included from <vm/pmap.h>, there is no need to 2016-02-22 09:02:20 +00:00
cesa Make the fdt_get_mem_regions memsize argument optional. It's only used in 2016-03-01 09:45:27 +00:00
cfe
cfi Provide a workaround for setting the correct endianness when doing CFI on 2016-02-04 22:39:27 +00:00
ciss
cm Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
cmx
coretemp
cp As <machine/pmap.h> is included from <vm/pmap.h>, there is no need to 2016-02-22 09:02:20 +00:00
cpuctl
cpufreq
cs Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
ct Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
ctau Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
cx
cxgb cxgb(4): Remove redundant part of an assertion. 2016-03-10 14:17:24 +00:00
cxgbe cxgbe(4): Be consistent and call ETHER_BPF_MTAP before writing anything 2016-03-22 18:56:23 +00:00
cy Fix the build. 2016-02-25 04:32:17 +00:00
cyapa
dc
dcons
de
digi Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
dpaa Use the m_extadd() function instead of deprecated MEXTADD(). 2016-03-02 02:29:35 +00:00
dpms
dpt
drm As <machine/param.h> is included from <sys/param.h>, there is no need 2016-02-22 09:04:36 +00:00
drm2 Handle the driver KPI change from r292373. Ensure that managed device 2016-03-24 09:56:53 +00:00
dwc Add support for resetting the PHY via GPIO. 2016-03-03 22:26:36 +00:00
e1000 Support checksum offloading for TCP/IPV6 and UDP/IPV6. 2016-03-22 12:40:09 +00:00
ed Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
eisa Introduce a RMAN_IS_DEFAULT_RANGE() macro, and use it. 2016-02-20 01:32:58 +00:00
en
ep These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
esp
et
etherswitch
ex
exca
extres Fix support for fixed factor clocks. 2016-03-23 19:26:53 +00:00
fatm
fb As <machine/pmap.h> is included from <vm/pmap.h>, there is no need to 2016-02-22 09:02:20 +00:00
fdc Add raw RX-50 support. These are 400k single sided disks with 80 2016-03-10 00:36:38 +00:00
fdt ARM: Parse command line delivered by U-Boot: 2016-03-26 06:59:01 +00:00
fe Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
ffec
filemon Remove unneeded return left from refactoring. 2016-03-25 00:14:56 +00:00
firewire Don't assume bio_cmd is a bit field. 2016-03-10 00:36:45 +00:00
flash
fxp These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
gem
glxiic
glxsb
gpio Fix the resource_list_print_type() calls to use uintmax_t. 2016-03-22 22:25:08 +00:00
gxemul
hatm
hifn
hme
hpt27xx Replace several bus_alloc_resource() calls with bus_alloc_resource_any() 2016-02-27 03:34:01 +00:00
hptiop Replace several bus_alloc_resource() calls using default arguments with bus_alloc_resource_any() 2016-02-19 03:37:56 +00:00
hptmv Replace several bus_alloc_resource() calls with bus_alloc_resource_any() 2016-02-27 03:34:01 +00:00
hptnr Replace several bus_alloc_resource() calls with bus_alloc_resource_any() 2016-02-27 03:34:01 +00:00
hptrr Replace several bus_alloc_resource() calls with bus_alloc_resource_any() 2016-02-27 03:34:01 +00:00
hwpmc If full width writes to the performance monitoring counters are 2016-02-12 07:27:24 +00:00
hyperv hyperv/vmbus: Create per-cpu fast taskqueue for msg handling 2016-03-24 02:15:23 +00:00
ic
ichiic
ichsmb Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
ichwd Unify ichwd(4) attachment messages in dmesg. 2016-03-24 23:24:00 +00:00
ida
ie
if_ndis Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
iicbus Fix the resource_list_print_type() calls to use uintmax_t. 2016-03-22 22:25:08 +00:00
iir Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
intpm
io
ioat ioat(4): On error detected in ithread, defer HW reset to taskqueue 2016-02-13 22:51:25 +00:00
ipmi Optimize IPMI watchdog patting. 2016-03-22 06:24:52 +00:00
ips
ipw
isci Make sure we check for CAM_CDB_POINTER for all drivers. Also, for the 2016-03-15 05:17:29 +00:00
iscsi Fix iSCSI initiator crash that could happen with out-of-memory 2016-03-25 16:01:40 +00:00
iscsi_initiator These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
isl
ismt
isp Move to new value for XPT_GET_SIM_KNOB to avoid clash with XPT_ATA_IO. 2016-03-10 06:25:05 +00:00
ispfw
iwi
iwm
iwn Remove bogus cast. 2016-02-19 01:57:51 +00:00
ixgb Replace several bus_alloc_resource() calls using default arguments with bus_alloc_resource_any() 2016-02-19 03:37:56 +00:00
ixgbe Prevent invalid ixgbe advertise setting warning 2016-03-16 01:41:55 +00:00
ixl Fix ixl with RSS 2016-03-03 19:49:37 +00:00
jme Fix variable assignment. 2016-02-18 01:24:10 +00:00
joy
kbd
kbdmux
ksyms
le Fix the resource_list_print_type() calls to use uintmax_t. 2016-03-22 22:25:08 +00:00
led
lge
lmc Replace several bus_alloc_resource() calls using default arguments with bus_alloc_resource_any() 2016-02-19 03:37:56 +00:00
malo Remove taskqueue_enqueue_fast(). 2016-03-01 17:47:32 +00:00
mbox
mc146818
mca Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
mcd
md For the MD_ROOT option don't inject /dev/md0 as root dev when ROOTDEVNAME 2016-03-09 19:36:25 +00:00
mdio
mem
mfi Remove bare & 0x3; it encodes the values of BIO_READ and 2016-03-15 04:56:39 +00:00
mge
mii
mk48txx
mlx
mlx5
mly
mmc Fix fallout from r292180 (Dec 2015)... ensure that every driver which has 2016-03-21 00:52:24 +00:00
mn
mpr
mps Add sysctls for dumping out the device mapping tables. I'm finding this 2016-02-04 23:38:55 +00:00
mpt
mrsas Fix NULL pointer dereferences 2016-02-25 02:46:47 +00:00
mse Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
msk ifnet lock was changed to use sx(9) long time ago. 2016-02-22 00:58:04 +00:00
mvs Fix some more long -> rman_res_t 2016-03-21 22:19:53 +00:00
mwl
mxge Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
my
nand
ncr Make sure we check for CAM_CDB_POINTER for all drivers. Also, for the 2016-03-15 05:17:29 +00:00
ncv
netfpga10g/nf10bmac
netmap Plug leak in m_unshare. 2016-03-26 23:39:53 +00:00
nfe Remove taskqueue_enqueue_fast(). 2016-03-01 17:47:32 +00:00
nfsmb
nge
nmdm
nsp Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
ntb As <machine/pmap.h> is included from <vm/pmap.h>, there is no need to 2016-02-22 09:02:20 +00:00
null
nvd Revert r292074 (by smh): Limit stripesize reported from nvd(4) to 4K 2016-03-10 17:13:10 +00:00
nvme Revert r292074 (by smh): Limit stripesize reported from nvd(4) to 4K 2016-03-10 17:13:10 +00:00
nvram
nvram2env
nxge
oce Remove taskqueue_enqueue_fast(). 2016-03-01 17:47:32 +00:00
ofw Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
otus These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
ow
patm
pbio Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
pccard Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
pccbb Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
pcf
pci Convert the printfs here from %lx to %jx as well after r297000 in order 2016-03-18 19:36:43 +00:00
pcn
pdq
pms As <machine/pmap.h> is included from <vm/pmap.h>, there is no need to 2016-02-22 09:02:20 +00:00
powermac_nvram
ppbus Fix debug printf 2016-03-16 16:56:28 +00:00
ppc Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
proto Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
psci
pst
pty
puc Replace some more default range checks with RMAN_IS_DEFAULT_RANGE(). 2016-03-02 03:26:56 +00:00
qlxgb qlxgb: fix mismatch. 2016-02-19 18:05:02 +00:00
qlxgbe
qlxge
quicc Replace some more default range checks with RMAN_IS_DEFAULT_RANGE(). 2016-03-02 03:26:56 +00:00
ral
random Add missing braces. 2016-02-17 21:09:19 +00:00
rc Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
rccgpio
re Remove taskqueue_enqueue_fast(). 2016-03-01 17:47:32 +00:00
rl Fix a bug introduced in r295736 2016-02-18 03:05:08 +00:00
rndtest
rp Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
rt As <machine/pmap.h> is included from <vm/pmap.h>, there is no need to 2016-02-22 09:02:20 +00:00
rtwn rtwn: import r290048. 2016-02-21 18:51:48 +00:00
safe
sbni Allocate the PCI BAR resource with bus_alloc_resource_any() 2016-03-03 01:07:17 +00:00
scc Replace some more default range checks with RMAN_IS_DEFAULT_RANGE(). 2016-03-02 03:26:56 +00:00
scd
sdhci Fix fallout from r292180 (Dec 2015)... ensure that every driver which has 2016-03-21 00:52:24 +00:00
sec
sf
sfxge sfxge: implement SIOCGI2C to read information from phy modules 2016-02-10 12:14:56 +00:00
sge
si Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
siba Fix the resource_list_print_type() calls to use uintmax_t. 2016-03-22 22:25:08 +00:00
siis Fix some more long -> rman_res_t 2016-03-21 22:19:53 +00:00
sio Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
sis
sk ifnet lock was changed to use sx(9) long time ago. 2016-02-22 00:58:04 +00:00
smbus
smc Remove taskqueue_enqueue_fast(). 2016-03-01 17:47:32 +00:00
sn Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
snc Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
snp
sound Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
speaker
spibus
ste
stg
stge Fix variable assignment. 2016-02-18 01:24:10 +00:00
streams
sym
syscons
tdfx
terasic
ti
tl
tpm
trm
tsec Allow callers of OF_decode_addr to get the size of the found mapping. This 2016-02-16 15:18:12 +00:00
twa Replace several bus_alloc_resource() calls using default arguments with bus_alloc_resource_any() 2016-02-19 03:37:56 +00:00
twe
tws Replace several bus_alloc_resource() calls with bus_alloc_resource_any() 2016-02-27 03:34:01 +00:00
tx These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
txp
uart Add ns16550a compatible string in UART 8250 driver 2016-02-26 08:43:36 +00:00
ubsec
urtwn [urtwn] welcome basic 11n support to urtwn. 2016-03-22 01:09:15 +00:00
usb Add more UHCI PCI IDs. 2016-03-24 09:35:29 +00:00
utopia
vge
viapm
viawd
videomode
virtio Create an API to reset a struct bio (g_reset_bio). This is mandatory 2016-02-17 17:16:02 +00:00
vkbd
vmware/vmxnet3
vnic Fix bug in VNIC causing phony number of available TX descriptors 2016-03-10 05:45:24 +00:00
vr Remove taskqueue_enqueue_fast(). 2016-03-01 17:47:32 +00:00
vt As <machine/vm.h> is included from <vm/vm.h>, there is no need to 2016-02-22 09:10:23 +00:00
vte Fix variable assignment. 2016-02-18 01:24:10 +00:00
vx
vxge
watchdog
wb
wbwd Polish wbwd(4) driver and add more supported chips. 2016-03-24 20:52:35 +00:00
wds
wi Migrate many bus_alloc_resource() calls to bus_alloc_resource_anywhere(). 2016-02-27 03:38:01 +00:00
wl Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
wpi wpi: remove internal taskqueue 2016-03-21 23:25:41 +00:00
wtap
xe Use uintmax_t (typedef'd to rman_res_t type) for rman ranges. 2016-03-18 01:28:41 +00:00
xen Remove taskqueue_enqueue_fast(). 2016-03-01 17:47:32 +00:00
xl These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00