PERFORCE change 137790 for review
Christian S.J. Peron
csjp at FreeBSD.org
Sat Mar 15 18:47:49 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=137790
Change 137790 by csjp at ibm01 on 2008/03/15 18:47:15
- Add a pad element to inform users that this space is not being used
as the compiler will align subsequent intgers to a 4 byte boundary
since the structure is not packed.
- Change the counters from unsigned to explicitly 64 bits
Affected files ...
.. //depot/projects/zcopybpf/src/sys/net/bpfdesc.h#11 edit
Differences ...
==== //depot/projects/zcopybpf/src/sys/net/bpfdesc.h#11 (text+ko) ====
@@ -75,8 +75,8 @@
#ifdef BPF_JITTER
bpf_jit_filter *bd_bfilter; /* binary filter code */
#endif
- u_long bd_rcount; /* number of packets received */
- u_long bd_dcount; /* number of packets dropped */
+ u_int64_t bd_rcount; /* number of packets received */
+ u_int64_t bd_dcount; /* number of packets dropped */
u_char bd_promisc; /* true if listening promiscuously */
u_char bd_state; /* idle, waiting, or timed out */
@@ -91,14 +91,14 @@
struct mtx bd_mtx; /* mutex for this descriptor */
struct callout bd_callout; /* for BPF timeouts with select */
struct label *bd_label; /* MAC label for descriptor */
- u_long bd_fcount; /* number of packets which matched filter */
+ u_int64_t bd_fcount; /* number of packets which matched filter */
pid_t bd_pid; /* PID which created descriptor */
int bd_locked; /* true if descriptor is locked */
u_int bd_bufmode; /* Current buffer mode. */
- u_long bd_wcount; /* number of packets written */
- u_long bd_wfcount; /* number of packets that matched write filter */
- u_long bd_wdcount; /* number of packets dropped during a write */
- u_long bd_zcopy; /* number of zero copy operations */
+ u_int64_t bd_wcount; /* number of packets written */
+ u_int64_t bd_wfcount; /* number of packets that matched write filter */
+ u_int64_t bd_wdcount; /* number of packets dropped during a write */
+ u_int64_t bd_zcopy; /* number of zero copy operations */
};
/* Values for bd_state */
@@ -117,13 +117,14 @@
u_int bd_structsize; /* Size of this structure. */
u_char bd_promisc;
u_char bd_immediate;
+ u_char __bd_pad[6];
int bd_hdrcmplt;
int bd_direction;
int bd_feedback;
int bd_async;
- u_long bd_rcount;
- u_long bd_dcount;
- u_long bd_fcount;
+ u_int64_t bd_rcount;
+ u_int64_t bd_dcount;
+ u_int64_t bd_fcount;
int bd_sig;
int bd_slen;
int bd_hlen;
@@ -131,10 +132,14 @@
pid_t bd_pid;
char bd_ifname[IFNAMSIZ];
int bd_locked;
- u_long bd_wcount;
- u_long bd_wfcount;
- u_long bd_wdcount;
- u_long bd_zcopy;
+ u_int64_t bd_wcount;
+ u_int64_t bd_wfcount;
+ u_int64_t bd_wdcount;
+ u_int64_t bd_zcopy;
+ /*
+ * Spare 64 bit integers for future expansion.
+ */
+ u_int64_t bd_spare[4];
};
#define BPFIF_LOCK(bif) mtx_lock(&(bif)->bif_mtx)
More information about the p4-projects
mailing list