summaryrefslogtreecommitdiffstats
path: root/tools/regression
diff options
context:
space:
mode:
authorngie <ngie@FreeBSD.org>2016-01-23 22:49:13 +0000
committerngie <ngie@FreeBSD.org>2016-01-23 22:49:13 +0000
commit91acafb74c3f9996a741d62572ad443dbce23f59 (patch)
tree29892f860de9b4f91d1ed0c84c0095de4eadd59d /tools/regression
parent9499d1afd804843e0e72061f4508aa1795e92bb6 (diff)
downloadFreeBSD-src-91acafb74c3f9996a741d62572ad443dbce23f59.zip
FreeBSD-src-91acafb74c3f9996a741d62572ad443dbce23f59.tar.gz
Don't run the t_cmsg_len testcase on 64-bit architectures
It always fails when trying to send through the sendit(9) private KPI in the kernel due to a size mismatch between the msghdr and data being sent [*], which suspiciously seems like it's related to sizeof pointers instead of scalars, or something of that ilk MFC after: 1 week PR: 206543, 206544 [*] Sponsored by: EMC / Isilon Storage Division
Diffstat (limited to 'tools/regression')
-rw-r--r--tools/regression/sockets/unix_cmsg/unix_cmsg.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/regression/sockets/unix_cmsg/unix_cmsg.c b/tools/regression/sockets/unix_cmsg/unix_cmsg.c
index a6833b1..7f6b45c 100644
--- a/tools/regression/sockets/unix_cmsg/unix_cmsg.c
+++ b/tools/regression/sockets/unix_cmsg/unix_cmsg.c
@@ -83,7 +83,13 @@ static int t_sockcred_2(void);
static int t_cmsgcred_sockcred(void);
static int t_timeval(void);
static int t_bintime(void);
+/*
+ * The testcase fails on 64-bit architectures (amd64), but passes on 32-bit
+ * architectures (i386); see bug 206543
+ */
+#ifndef __LP64__
static int t_cmsg_len(void);
+#endif
static int t_peercred(void);
struct test_func {
@@ -120,10 +126,12 @@ static const struct test_func test_stream_tbl[] = {
.func = t_bintime,
.desc = "Sending, receiving bintime"
},
+#ifndef __LP64__
{
.func = t_cmsg_len,
.desc = "Check cmsghdr.cmsg_len"
},
+#endif
{
.func = t_peercred,
.desc = "Check LOCAL_PEERCRED socket option"
@@ -158,10 +166,12 @@ static const struct test_func test_dgram_tbl[] = {
.func = t_bintime,
.desc = "Sending, receiving bintime"
},
+#ifndef __LP64__
{
.func = t_cmsg_len,
.desc = "Check cmsghdr.cmsg_len"
}
+#endif
};
#define TEST_DGRAM_TBL_SIZE \
@@ -1829,6 +1839,7 @@ t_bintime(void)
return (t_generic(t_bintime_client, t_bintime_server));
}
+#ifndef __LP64__
static int
t_cmsg_len_client(int fd)
{
@@ -1921,6 +1932,7 @@ t_cmsg_len(void)
{
return (t_generic(t_cmsg_len_client, t_cmsg_len_server));
}
+#endif
static int
t_peercred_client(int fd)
OpenPOWER on IntegriCloud