Page MenuHomeFreeBSD

D56399.id175528.diff
No OneTemporary

D56399.id175528.diff

diff --git a/sys/net/bpf.c b/sys/net/bpf.c
--- a/sys/net/bpf.c
+++ b/sys/net/bpf.c
@@ -1420,11 +1420,22 @@
*/
case BIOCSRTIMEOUT:
#if defined(COMPAT_FREEBSD32) && defined(__amd64__)
+ /*
+ * On platforms other than amd64, BIOCSRTIMEOUT32 is equal to
+ * BIOCSRTIMEOUT.
+ */
case BIOCSRTIMEOUT32:
#endif
{
struct timeval *tv = (struct timeval *)addr;
-#if defined(COMPAT_FREEBSD32)
+#if defined(COMPAT_FREEBSD32) && defined(__amd64__)
+ /*
+ * Don't run this code on platforms other than amd64,
+ * since it will always perform the mapping.
+ * On little endian platforms this doesn't matter,
+ * but on big endian platforms it basically clears
+ * tv_usec.
+ */
struct timeval32 *tv32;
struct timeval tv64;

File Metadata

Mime Type
text/plain
Expires
Sun, Apr 26, 8:15 PM (14 h, 54 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31556129
Default Alt Text
D56399.id175528.diff (757 B)

Event Timeline