freebsd-skq/sys/net
Mark Johnston aa14e9b7c9 Reimplement support for userland core dump compression using a new interface
in kern_gzio.c. The old gzio interface was somewhat inflexible and has not
worked properly since r272535: currently, the gzio functions are called with
a range lock held on the output vnode, but kern_gzio.c does not pass the
IO_RANGELOCKED flag to vn_rdwr() calls, resulting in deadlock when vn_rdwr()
attempts to reacquire the range lock. Moreover, the new gzio interface can
be used to implement kernel core compression.

This change also modifies the kernel configuration options needed to enable
userland core dump compression support: gzio is now an option rather than a
device, and the COMPRESS_USER_CORES option is removed. Core dump compression
is enabled using the kern.compress_user_cores sysctl/tunable.

Differential Revision:	https://reviews.freebsd.org/D1832
Reviewed by:	rpaulo
Discussed with:	kib
2015-03-09 03:50:53 +00:00
..
bpf_buffer.c
bpf_buffer.h
bpf_filter.c Include strings.h so that bpf_filter.c can be built in userland. 2014-03-19 13:10:25 +00:00
bpf_jitter.c
bpf_jitter.h
bpf_zerocopy.c - Modify vm_page_unwire() and vm_page_enqueue() to directly accept 2014-06-16 18:15:27 +00:00
bpf_zerocopy.h
bpf.c Eliminate SIOCGIFADDR handling in bpf. 2015-01-16 10:09:28 +00:00
bpf.h MFV r276759: libpcap 1.6.2. 2015-01-06 22:29:12 +00:00
bpfdesc.h
bridgestp.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
bridgestp.h
ethernet.h Move struct ether_vlan_header to ethernet.h, out of if_vlan_var.h, 2014-11-11 10:22:33 +00:00
fddi.h
firewire.h
flowtable.c Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
flowtable.h Add my copyright to flowtable. 2014-02-17 12:07:17 +00:00
ieee8023ad_lacp.c Improve the distribution of LAGG port traffic. 2015-01-23 00:06:35 +00:00
ieee8023ad_lacp.h Use printb() for boolean flags in ro_opts and actor_state for LACP. 2014-10-05 02:37:01 +00:00
ieee_oui.h Bump bhyve allocation up to 20 bits to avoid 2014-05-20 02:59:13 +00:00
if_arc.h
if_arcsubr.c Fix typo. 2015-01-09 20:29:13 +00:00
if_arp.h Remove struct arpcom. It is unused by most interface types, that allocate 2014-11-07 15:14:10 +00:00
if_atm.h
if_atmsubr.c Mechanically convert to if_inc_counter(). 2014-09-19 10:39:58 +00:00
if_bridge.c Fix a panic when tearing down a vnet on a VIMAGE-enabled kernel. 2015-02-14 18:15:14 +00:00
if_bridgevar.h
if_clone.c Fix group membership of cloned interfaces when one is moved by 2015-03-02 20:00:03 +00:00
if_clone.h Fix group membership of cloned interfaces when one is moved by 2015-03-02 20:00:03 +00:00
if_dead.c Provide a dead version of if_get_counter. 2014-12-12 16:10:42 +00:00
if_debug.c Remove ifq_drops from struct ifqueue. Now queue drops are accounted in 2014-09-19 09:01:19 +00:00
if_disc.c Make checks for rt_mtu generic: 2014-11-06 13:13:09 +00:00
if_dl.h Simplify filling sockaddr_dl structure for if_resolvemulti() 2014-01-18 23:24:51 +00:00
if_edsc.c Virtualize if_edsc(4). 2014-10-05 21:27:26 +00:00
if_enc.c Our packet filters use mbuf's rcvif pointer to determine incoming interface. 2014-10-07 13:31:04 +00:00
if_enc.h
if_epair.c Virtualize if_epair(4). An if_xname check for both "a" and "b" interfaces 2014-10-10 06:45:13 +00:00
if_ethersubr.c Refactor / restructure the RSS code into generic, IPv4 and IPv6 specific 2015-01-18 18:06:40 +00:00
if_fddisubr.c After r275196 unbreak NOIP and NOINET kernels by hiding an otherwise 2014-11-28 14:51:49 +00:00
if_fwsubr.c After r275196 unbreak NOIP and NOINET kernels by hiding an otherwise 2014-11-28 14:51:49 +00:00
if_gif.c Restore Ethernet-within-IP Encapsulation support that was broken after 2015-01-10 08:28:50 +00:00
if_gif.h Move the recursion detection code into separate function gif_check_nesting(). 2015-01-10 03:13:16 +00:00
if_gre.c Fix an error introduced in r274246. 2015-01-10 03:26:46 +00:00
if_gre.h Extern declarations in C files loses compile-time checking that 2014-12-25 21:32:37 +00:00
if_iso88025subr.c Do not return unlocked/unreferenced lle in arpresolve/nd6_storelladdr - 2014-11-27 23:06:25 +00:00
if_lagg.c Improve the distribution of LAGG port traffic. 2015-01-23 00:06:35 +00:00
if_lagg.h Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
if_llatbl.c
if_llatbl.h Remove include opt_ofed.h since OFED is unifdef'd. 2013-08-27 16:45:00 +00:00
if_llc.h
if_loop.c Make checks for rt_mtu generic: 2014-11-06 13:13:09 +00:00
if_me.c Overhaul if_gre(4). 2014-11-07 19:13:19 +00:00
if_media.c Optimize SIOCGIFMEDIA handling removing malloc(9) and double 2015-03-04 15:00:20 +00:00
if_media.h Introduce a procedural interface to the ifnet structure. The new 2014-06-02 17:54:39 +00:00
if_mib.c Remove SYSCTL_VNET_* macros, and simply put CTLFLAG_VNET where needed. 2014-11-07 09:39:05 +00:00
if_mib.h
if_pflog.h
if_pfsync.h Remove more constants related to static sysctl nodes. The MAXID constants 2014-02-25 18:44:33 +00:00
if_sppp.h
if_spppfr.c Mechanically convert to if_inc_counter(). 2014-09-19 10:39:58 +00:00
if_spppsubr.c Replace some calls to fuword() by fueword() with proper error checking. 2014-10-28 15:28:20 +00:00
if_stf.c Remove if_stf.h. It contains only one function declaration used by if_stf(4). 2014-12-23 20:54:59 +00:00
if_tap.c Add a sysctl `net.link.tap.deladdrs_on_close' to configure whether tap 2014-11-24 14:00:27 +00:00
if_tap.h
if_tapvar.h
if_tun.c This is the much-discussed major upgrade to the random(4) device, known to you all as /dev/random. 2014-10-30 21:21:53 +00:00
if_tun.h
if_types.h Renove faith(4) and faithd(8) from base. It looks like industry 2014-11-09 21:33:01 +00:00
if_var.h Hide struct ifmultiaddr under _KERNEL, too. 2015-02-27 01:15:23 +00:00
if_vlan_var.h Move struct ether_vlan_header to ethernet.h, out of if_vlan_var.h, 2014-11-11 10:22:33 +00:00
if_vlan.c Handle SIOCSIFCAP by propogating the request to the parent interface. This 2015-02-20 18:39:12 +00:00
if_vxlan.c Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
if_vxlan.h Add vxlan interface 2014-10-20 14:42:42 +00:00
if.c Fix group membership of cloned interfaces when one is moved by 2015-03-02 20:00:03 +00:00
if.h * Add SIOCGI2C driver ioctl used to retrieve i2c info. 2014-08-29 18:02:58 +00:00
ifq.h Remove duplicate declaraton of the if_inc_counter() function after r272244. 2014-09-28 15:38:21 +00:00
iso88025.h Garbage collect long time obsoleted (or never used) stuff from routing API. 2014-03-15 06:49:32 +00:00
netisr_internal.h
netisr.c Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
netisr.h Update the IPv4 input path to handle reassembled frames and incoming frames 2014-09-09 04:18:20 +00:00
netmap_user.h return kernel-supplied error if available. 2014-11-10 08:31:56 +00:00
netmap.h Update to the current version of netmap. 2014-08-16 15:00:01 +00:00
paravirt.h Update to the current version of netmap. 2014-08-16 15:00:01 +00:00
pfil.c The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare 2013-10-26 17:58:36 +00:00
pfil.h Whitespace, style cleanups, and improved comments. 2013-08-24 12:03:24 +00:00
pfkeyv2.h
pfvar.h - Improve INET/INET6 scope. 2015-02-16 23:50:53 +00:00
ppp_defs.h
radix_mpath.c - Remove rt_metrics_lite and simply put its members into rtentry. 2014-03-05 01:17:47 +00:00
radix_mpath.h
radix.c since we cast a pointer, use the correct signedness 2014-10-22 18:55:36 +00:00
radix.h Revert previous commit (262727) and bounce patch back to the 2014-03-04 23:55:04 +00:00
raw_cb.c vnet.h needs to be included before raw_cb.h. Now it compiles due to 2013-10-25 19:49:03 +00:00
raw_cb.h
raw_usrreq.c vnet.h needs to be included before raw_cb.h. Now it compiles due to 2013-10-25 19:49:03 +00:00
route.c Finish r274175: do control plane MTU tracking. 2014-11-17 01:05:29 +00:00
route.h Finish r274175: do control plane MTU tracking. 2014-11-17 01:05:29 +00:00
rss_config.c Refactor / restructure the RSS code into generic, IPv4 and IPv6 specific 2015-01-18 18:06:40 +00:00
rss_config.h Refactor / restructure the RSS code into generic, IPv4 and IPv6 specific 2015-01-18 18:06:40 +00:00
rtsock.c Remove ifq_drops from struct ifqueue. Now queue drops are accounted in 2014-09-19 09:01:19 +00:00
sff8436.h * Add new net/sff8436.h containing constants used to access 2014-08-21 17:54:42 +00:00
sff8472.h * Add new net/sff8436.h containing constants used to access 2014-08-21 17:54:42 +00:00
slcompress.c
slcompress.h
toeplitz.c Refactor / restructure the RSS code into generic, IPv4 and IPv6 specific 2015-01-18 18:06:40 +00:00
toeplitz.h Refactor / restructure the RSS code into generic, IPv4 and IPv6 specific 2015-01-18 18:06:40 +00:00
vnet.c Remove identical vnet sysctl handlers, and handle CTLFLAG_VNET 2014-02-07 13:47:33 +00:00
vnet.h Remove SYSCTL_VNET_* macros, and simply put CTLFLAG_VNET where needed. 2014-11-07 09:39:05 +00:00
zlib.c
zlib.h Reimplement support for userland core dump compression using a new interface 2015-03-09 03:50:53 +00:00
zutil.h