Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Jan 2008 00:31:07 GMT
From:      "Christian S.J. Peron" <csjp@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 132663 for review
Message-ID:  <200801070031.m070V7qB021634@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=132663

Change 132663 by csjp@csjp_xor on 2008/01/07 00:30:15

	Make zerocopy copy enabled by default.  This doesn't mean that we
	will use it by default, but it does mean that we will have support
	for it by default.

Affected files ...

.. //depot/projects/zcopybpf/src/sys/amd64/conf/BPF_ZEROCOPY#2 delete
.. //depot/projects/zcopybpf/src/sys/conf/NOTES#15 edit
.. //depot/projects/zcopybpf/src/sys/conf/files#16 edit
.. //depot/projects/zcopybpf/src/sys/conf/options#12 edit
.. //depot/projects/zcopybpf/src/sys/i386/conf/BPF_ZEROCOPY#2 delete
.. //depot/projects/zcopybpf/src/sys/net/bpf.c#37 edit

Differences ...

==== //depot/projects/zcopybpf/src/sys/conf/NOTES#15 (text+ko) ====

@@ -614,10 +614,6 @@
 options 	ALTQ_NOPCC	# Required if the TSC is unusable
 options 	ALTQ_DEBUG
 
-# bpf(4). Compile-time options go here, whereas enabling bpf(4) itself goes
-# later with the other devices.
-options 	BPF_ZEROCOPY	# Enable zero-copy BPF
-
 # netgraph(4). Enable the base netgraph code with the NETGRAPH option.
 # Individual node types can be enabled with the corresponding option
 # listed below; however, this is not strictly necessary as netgraph

==== //depot/projects/zcopybpf/src/sys/conf/files#16 (text+ko) ====

@@ -1607,7 +1607,7 @@
 net/bpf_buffer.c		optional bpf
 net/bpf_jitter.c		optional bpf_jitter
 net/bpf_filter.c		optional bpf | netgraph_bpf
-net/bpf_zerocopy.c		optional bpf_zerocopy
+net/bpf_zerocopy.c		optional bpf
 net/bridgestp.c			optional bridge | if_bridge
 net/bsd_comp.c			optional ppp_bsdcomp
 net/ieee8023ad_lacp.c		optional lagg

==== //depot/projects/zcopybpf/src/sys/conf/options#12 (text+ko) ====

@@ -479,7 +479,6 @@
 # DRM options
 DRM_DEBUG		opt_drm.h
 
-BPF_ZEROCOPY		opt_bpf.h
 ZERO_COPY_SOCKETS	opt_zero.h
 TI_PRIVATE_JUMBOS	opt_ti.h
 TI_JUMBO_HDRSPLIT	opt_ti.h

==== //depot/projects/zcopybpf/src/sys/net/bpf.c#37 (text+ko) ====

@@ -70,9 +70,7 @@
 #ifdef BPF_JITTER
 #include <net/bpf_jitter.h>
 #endif
-#ifdef BPF_ZEROCOPY
 #include <net/bpf_zerocopy.h>
-#endif
 #include <net/bpfdesc.h>
 
 #include <netinet/in.h>
@@ -134,11 +132,9 @@
 static int bpf_maxinsns = BPF_MAXINSNS;
 SYSCTL_INT(_net_bpf, OID_AUTO, maxinsns, CTLFLAG_RW,
     &bpf_maxinsns, 0, "Maximum bpf program instructions");
-#ifdef BPF_ZEROCOPY
 static int bpf_zerocopy_enable = 1;
 SYSCTL_INT(_net_bpf, OID_AUTO, zerocopy_enable, CTLFLAG_RW,
     &bpf_zerocopy_enable, 0, "Enable new zero-copy BPF buffer sessions");
-#endif
 SYSCTL_NODE(_net_bpf, OID_AUTO, stats, CTLFLAG_RW,
     bpf_stats_sysctl, "bpf statistics portal");
 
@@ -181,11 +177,9 @@
 	case BPF_BUFMODE_BUFFER:
 		return (bpf_buffer_append_bytes(d, buf, offset, src, len));
 
-#ifdef BPF_ZEROCOPY
 	case BPF_BUFMODE_ZBUF:
 		d->bd_zcopy++;
 		return (bpf_zerocopy_append_bytes(d, buf, offset, src, len));
-#endif
 
 	default:
 		panic("bpf_buf_append_bytes");
@@ -203,11 +197,9 @@
 	case BPF_BUFMODE_BUFFER:
 		return (bpf_buffer_append_mbuf(d, buf, offset, src, len));
 
-#ifdef BPF_ZEROCOPY
 	case BPF_BUFMODE_ZBUF:
 		d->bd_zcopy++;
 		return (bpf_zerocopy_append_mbuf(d, buf, offset, src, len));
-#endif
 
 	default:
 		panic("bpf_buf_append_mbuf");
@@ -226,10 +218,8 @@
 	BPFD_LOCK_ASSERT(d);
 
 	switch (d->bd_bufmode) {
-#ifdef BPF_ZEROCOPY
 	case BPF_BUFMODE_ZBUF:
 		return (bpf_zerocopy_canfreebuf(d));
-#endif
 	}
 	return (0);
 }
@@ -241,11 +231,9 @@
 	BPFD_LOCK_ASSERT(d);
 
 	switch (d->bd_bufmode) {
-#ifdef BPF_ZEROCOPY
 	case BPF_BUFMODE_ZBUF:
 		bpf_zerocopy_bufheld(d);
 		break;
-#endif
 	}
 }
 
@@ -257,10 +245,8 @@
 	case BPF_BUFMODE_BUFFER:
 		return (bpf_buffer_free(d));
 
-#ifdef BPF_ZEROCOPY
 	case BPF_BUFMODE_ZBUF:
 		return (bpf_zerocopy_free(d));
-#endif
 
 	default:
 		panic("bpf_buf_free");
@@ -291,11 +277,7 @@
 
 	if (d->bd_bufmode != BPF_BUFMODE_ZBUF)
 		return (EOPNOTSUPP);
-#ifdef BPF_ZEROCOPY
 	return (bpf_zerocopy_ioctl_ackzbuf(td, d, bz));
-#else
-	panic("bpf_ioctl_ackzbuf");
-#endif
 }
 
 static int
@@ -304,11 +286,7 @@
 
 	if (d->bd_bufmode != BPF_BUFMODE_ZBUF)
 		return (EOPNOTSUPP);
-#ifdef BPF_ZEROCOPY
 	return (bpf_zerocopy_ioctl_getzbuf(td, d, bz));
-#else
-	panic("bpf_ioctl_getzbuf");
-#endif
 }
 
 static int
@@ -317,11 +295,7 @@
 
 	if (d->bd_bufmode != BPF_BUFMODE_ZBUF)
 		return (EOPNOTSUPP);
-#ifdef BPF_ZEROCOPY
 	return (bpf_zerocopy_ioctl_getznext(td, d, bz));
-#else
-	panic("bpf_ioctl_getznext");
-#endif
 }
 
 static int
@@ -330,11 +304,7 @@
 
 	if (d->bd_bufmode != BPF_BUFMODE_ZBUF)
 		return (EOPNOTSUPP);
-#ifdef BPF_ZEROCOPY
 	return (bpf_zerocopy_ioctl_getzmax(td, d, i));
-#else
-	panic("bpf_ioctl_getzmax");
-#endif
 }
 
 static int
@@ -343,11 +313,7 @@
 
 	if (d->bd_bufmode != BPF_BUFMODE_ZBUF)
 		return (EOPNOTSUPP);
-#ifdef BPF_ZEROCOPY
 	return (bpf_zerocopy_ioctl_rotzbuf(td, d, bz));
-#else
-	panic("bpf_ioctl_rotzbuf");
-#endif
 }
 
 static int
@@ -356,11 +322,7 @@
 
 	if (d->bd_bufmode != BPF_BUFMODE_ZBUF)
 		return (EOPNOTSUPP);
-#ifdef BPF_ZEROCOPY
 	return (bpf_zerocopy_ioctl_setzbuf(td, d, bz));
-#else
-	panic("bpf_ioctl_setzbuf");
-#endif
 }
 
 /*
@@ -1308,12 +1270,10 @@
 		case BPF_BUFMODE_BUFFER:
 			break;
 
-#ifdef BPF_ZEROCOPY
 		case BPF_BUFMODE_ZBUF:
 			if (bpf_zerocopy_enable)
 				break;
 			/* FALLSTHROUGH */
-#endif
 
 		default:
 			return (EINVAL);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200801070031.m070V7qB021634>