From: Prashant Bhole <bhole_prashant_q7@lab.ntt.co.jp>
To: Alexei Starovoitov <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
John Fastabend <john.fastabend@gmail.com>
Cc: Prashant Bhole <bhole_prashant_q7@lab.ntt.co.jp>,
"David S . Miller" <davem@davemloft.net>,
Shuah Khan <shuah@kernel.org>,
netdev@vger.kernel.org, linux-kselftest@vger.kernel.org
Subject: [PATCH bpf v3 4/5] selftests/bpf: test_sockmap, fix data verification
Date: Wed, 30 May 2018 14:56:10 +0900 [thread overview]
Message-ID: <20180530055611.10216-5-bhole_prashant_q7@lab.ntt.co.jp> (raw)
In-Reply-To: <20180530055611.10216-1-bhole_prashant_q7@lab.ntt.co.jp>
When data verification is enabled, some tests fail because verification is done
incorrectly. Following changes fix it.
- Identify the size of data block to be verified
- Reset verification counter when data block size is reached
- Fixed the value printed in case of verfication failure
Fixes: 16962b2404ac ("bpf: sockmap, add selftests")
Acked-by: John Fastabend <john.fastabend@gmail.com>
Signed-off-by: Prashant Bhole <bhole_prashant_q7@lab.ntt.co.jp>
---
tools/testing/selftests/bpf/test_sockmap.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/tools/testing/selftests/bpf/test_sockmap.c b/tools/testing/selftests/bpf/test_sockmap.c
index 9d01f5c2abe2..664f268dc02a 100644
--- a/tools/testing/selftests/bpf/test_sockmap.c
+++ b/tools/testing/selftests/bpf/test_sockmap.c
@@ -337,8 +337,15 @@ static int msg_loop(int fd, int iov_count, int iov_length, int cnt,
int fd_flags = O_NONBLOCK;
struct timeval timeout;
float total_bytes;
+ int bytes_cnt = 0;
+ int chunk_sz;
fd_set w;
+ if (opt->sendpage)
+ chunk_sz = iov_length * cnt;
+ else
+ chunk_sz = iov_length * iov_count;
+
fcntl(fd, fd_flags);
total_bytes = (float)iov_count * (float)iov_length * (float)cnt;
err = clock_gettime(CLOCK_MONOTONIC, &s->start);
@@ -388,9 +395,14 @@ static int msg_loop(int fd, int iov_count, int iov_length, int cnt,
errno = -EIO;
fprintf(stderr,
"detected data corruption @iov[%i]:%i %02x != %02x, %02x ?= %02x\n",
- i, j, d[j], k - 1, d[j+1], k + 1);
+ i, j, d[j], k - 1, d[j+1], k);
goto out_errno;
}
+ bytes_cnt++;
+ if (bytes_cnt == chunk_sz) {
+ k = 0;
+ bytes_cnt = 0;
+ }
recv--;
}
}
--
2.17.0
WARNING: multiple messages have this Message-ID (diff)
From: bhole_prashant_q7 at lab.ntt.co.jp (Prashant Bhole)
Subject: [PATCH bpf v3 4/5] selftests/bpf: test_sockmap, fix data verification
Date: Wed, 30 May 2018 14:56:10 +0900 [thread overview]
Message-ID: <20180530055611.10216-5-bhole_prashant_q7@lab.ntt.co.jp> (raw)
In-Reply-To: <20180530055611.10216-1-bhole_prashant_q7@lab.ntt.co.jp>
When data verification is enabled, some tests fail because verification is done
incorrectly. Following changes fix it.
- Identify the size of data block to be verified
- Reset verification counter when data block size is reached
- Fixed the value printed in case of verfication failure
Fixes: 16962b2404ac ("bpf: sockmap, add selftests")
Acked-by: John Fastabend <john.fastabend at gmail.com>
Signed-off-by: Prashant Bhole <bhole_prashant_q7 at lab.ntt.co.jp>
---
tools/testing/selftests/bpf/test_sockmap.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/tools/testing/selftests/bpf/test_sockmap.c b/tools/testing/selftests/bpf/test_sockmap.c
index 9d01f5c2abe2..664f268dc02a 100644
--- a/tools/testing/selftests/bpf/test_sockmap.c
+++ b/tools/testing/selftests/bpf/test_sockmap.c
@@ -337,8 +337,15 @@ static int msg_loop(int fd, int iov_count, int iov_length, int cnt,
int fd_flags = O_NONBLOCK;
struct timeval timeout;
float total_bytes;
+ int bytes_cnt = 0;
+ int chunk_sz;
fd_set w;
+ if (opt->sendpage)
+ chunk_sz = iov_length * cnt;
+ else
+ chunk_sz = iov_length * iov_count;
+
fcntl(fd, fd_flags);
total_bytes = (float)iov_count * (float)iov_length * (float)cnt;
err = clock_gettime(CLOCK_MONOTONIC, &s->start);
@@ -388,9 +395,14 @@ static int msg_loop(int fd, int iov_count, int iov_length, int cnt,
errno = -EIO;
fprintf(stderr,
"detected data corruption @iov[%i]:%i %02x != %02x, %02x ?= %02x\n",
- i, j, d[j], k - 1, d[j+1], k + 1);
+ i, j, d[j], k - 1, d[j+1], k);
goto out_errno;
}
+ bytes_cnt++;
+ if (bytes_cnt == chunk_sz) {
+ k = 0;
+ bytes_cnt = 0;
+ }
recv--;
}
}
--
2.17.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: bhole_prashant_q7@lab.ntt.co.jp (Prashant Bhole)
Subject: [PATCH bpf v3 4/5] selftests/bpf: test_sockmap, fix data verification
Date: Wed, 30 May 2018 14:56:10 +0900 [thread overview]
Message-ID: <20180530055611.10216-5-bhole_prashant_q7@lab.ntt.co.jp> (raw)
Message-ID: <20180530055610.HyrxbUixCilj0TgbtpZRgRtBBIn5VbhEo6uA0zBX6I0@z> (raw)
In-Reply-To: <20180530055611.10216-1-bhole_prashant_q7@lab.ntt.co.jp>
When data verification is enabled, some tests fail because verification is done
incorrectly. Following changes fix it.
- Identify the size of data block to be verified
- Reset verification counter when data block size is reached
- Fixed the value printed in case of verfication failure
Fixes: 16962b2404ac ("bpf: sockmap, add selftests")
Acked-by: John Fastabend <john.fastabend at gmail.com>
Signed-off-by: Prashant Bhole <bhole_prashant_q7 at lab.ntt.co.jp>
---
tools/testing/selftests/bpf/test_sockmap.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/tools/testing/selftests/bpf/test_sockmap.c b/tools/testing/selftests/bpf/test_sockmap.c
index 9d01f5c2abe2..664f268dc02a 100644
--- a/tools/testing/selftests/bpf/test_sockmap.c
+++ b/tools/testing/selftests/bpf/test_sockmap.c
@@ -337,8 +337,15 @@ static int msg_loop(int fd, int iov_count, int iov_length, int cnt,
int fd_flags = O_NONBLOCK;
struct timeval timeout;
float total_bytes;
+ int bytes_cnt = 0;
+ int chunk_sz;
fd_set w;
+ if (opt->sendpage)
+ chunk_sz = iov_length * cnt;
+ else
+ chunk_sz = iov_length * iov_count;
+
fcntl(fd, fd_flags);
total_bytes = (float)iov_count * (float)iov_length * (float)cnt;
err = clock_gettime(CLOCK_MONOTONIC, &s->start);
@@ -388,9 +395,14 @@ static int msg_loop(int fd, int iov_count, int iov_length, int cnt,
errno = -EIO;
fprintf(stderr,
"detected data corruption @iov[%i]:%i %02x != %02x, %02x ?= %02x\n",
- i, j, d[j], k - 1, d[j+1], k + 1);
+ i, j, d[j], k - 1, d[j+1], k);
goto out_errno;
}
+ bytes_cnt++;
+ if (bytes_cnt == chunk_sz) {
+ k = 0;
+ bytes_cnt = 0;
+ }
recv--;
}
}
--
2.17.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2018-05-30 5:57 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-30 5:56 [PATCH bpf v3 0/5] fix test_sockmap Prashant Bhole
2018-05-30 5:56 ` Prashant Bhole
2018-05-30 5:56 ` bhole_prashant_q7
2018-05-30 5:56 ` [PATCH bpf v3 1/5] selftests/bpf: test_sockmap, check test failure Prashant Bhole
2018-05-30 5:56 ` Prashant Bhole
2018-05-30 5:56 ` bhole_prashant_q7
2018-05-30 13:26 ` John Fastabend
2018-05-30 13:26 ` John Fastabend
2018-05-30 13:26 ` john.fastabend
2018-05-30 5:56 ` [PATCH bpf v3 2/5] selftests/bpf: test_sockmap, join cgroup in selftest mode Prashant Bhole
2018-05-30 5:56 ` Prashant Bhole
2018-05-30 5:56 ` bhole_prashant_q7
2018-05-30 5:56 ` [PATCH bpf v3 3/5] selftests/bpf: test_sockmap, fix test timeout Prashant Bhole
2018-05-30 5:56 ` Prashant Bhole
2018-05-30 5:56 ` bhole_prashant_q7
2018-05-30 13:31 ` John Fastabend
2018-05-30 13:31 ` John Fastabend
2018-05-30 13:31 ` john.fastabend
2018-05-30 19:29 ` Alexei Starovoitov
2018-05-30 19:29 ` Alexei Starovoitov
2018-05-30 19:29 ` alexei.starovoitov
2018-05-30 19:59 ` John Fastabend
2018-05-30 19:59 ` John Fastabend
2018-05-30 19:59 ` john.fastabend
2018-05-31 4:13 ` Prashant Bhole
2018-05-31 4:13 ` Prashant Bhole
2018-05-31 4:13 ` bhole_prashant_q7
2018-06-01 14:03 ` John Fastabend
2018-06-01 14:03 ` John Fastabend
2018-06-01 14:03 ` john.fastabend
2018-05-30 5:56 ` Prashant Bhole [this message]
2018-05-30 5:56 ` [PATCH bpf v3 4/5] selftests/bpf: test_sockmap, fix data verification Prashant Bhole
2018-05-30 5:56 ` bhole_prashant_q7
2018-05-30 5:56 ` [PATCH bpf v3 5/5] selftests/bpf: test_sockmap, print additional test options Prashant Bhole
2018-05-30 5:56 ` Prashant Bhole
2018-05-30 5:56 ` bhole_prashant_q7
2018-05-30 13:32 ` [PATCH bpf v3 0/5] fix test_sockmap John Fastabend
2018-05-30 13:32 ` John Fastabend
2018-05-30 13:32 ` john.fastabend
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180530055611.10216-5-bhole_prashant_q7@lab.ntt.co.jp \
--to=bhole_prashant_q7@lab.ntt.co.jp \
--cc=ast@kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=john.fastabend@gmail.com \
--cc=linux-kselftest@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=shuah@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.