Hi I want to test performance and latency with dpdkr ports. In order to do so, I configured 2 such ports, and wrote a test program that lookup for the relevant rings, and streams traffic into the rings. I run this program as a secondary DPDK process. Once I invoke the program, and I enqueuer mbufs to the rings, ovs-vswitchd is "killed by SIGABRT (core dumped)". I first thought my packet might be corrupted, so I captured a valid packet and initialize my packets with the bytes of it. I have tried to invoke it with a log file, but there is no message there when the problem occurs. Also, no message in "dmesg -w" when the problem occurs. I also tried to invoke it after "ulimit -c unlimited", but I could not find any core dump. I attached strace to it after it is running, ("strace -p <PID>"), so I could see poll is done over and over again. In the code, I saw the pool in vswitchd/ovs-vswitchd.c, in line ~132. I added "printf("%s,%s,%d\n", __FILE__, __FUNCTION__, __LINE__)" before and after the poll, just for debug (those are the "write (1..." in the strace dump).
System properties: DPDK version: 2.2.0 Linux kernel (uname -r): 3.17.4-301.fc21.x86_64 Distribution: Fedora21 Attached: - strace dump. - run.sh - a script I use to initialize my setup. I run it as root. Thanks, Eli ------------------------------------------------------------------------------------------------------------------------------------------------- This email and any files transmitted and/or attachments with it are confidential and proprietary information of Toga Networks Ltd., and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. This message contains confidential information of Toga Networks Ltd., and is intended only for the individual named. If you are not the named addressee you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately by e-mail if you have received this e-mail by mistake and delete this e-mail from your system. If you are not the intended recipient you are notified that disclosing, copying, distributing or taking any action in reliance on the contents of this information is strictly prohibited. ------------------------------------------------------------------------------------------------------------------------------------------------
recvfrom(19, 0x2130b3f0, 288, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(18, 0x7fffba25cf10, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) read(29, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) read(34, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) accept(35, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(36, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(17, 0x7fffba26dfc0, [128]) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(23, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(24, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) write(1, "vswitchd/ovs-vswitchd.c,main,131"..., 33) = 33 poll([{fd=20, events=POLLIN}, {fd=18, events=POLLIN}, {fd=14, events=POLLIN}, {fd=24, events=POLLIN}, {fd=17, events=POLLIN}, {fd=37, events=POLLIN}, {fd=23, events=POLLIN}, {fd=19, events=POLLIN}, {fd=35, events=POLLIN}, {fd=34, events=POLLIN}, {fd=36, events=POLLIN}, {fd=29, events=POLLIN}], 12, 1785) = 1 ([{fd=37, revents=POLLIN}]) getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 103374}, ru_stime={0, 28265}, ...}) = 0 read(37, "\0", 512) = 1 futex(0x9dcc40, FUTEX_WAKE_PRIVATE, 1) = 1 write(1, "vswitchd/ovs-vswitchd.c,main,133"..., 33) = 33 recvfrom(19, 0x2130b3f0, 288, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(18, 0x7fffba25cf10, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) read(29, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) read(34, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) accept(35, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(36, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(17, 0x7fffba26dfc0, [128]) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(23, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(24, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) write(1, "vswitchd/ovs-vswitchd.c,main,131"..., 33) = 33 poll([{fd=20, events=POLLIN}, {fd=18, events=POLLIN}, {fd=14, events=POLLIN}, {fd=24, events=POLLIN}, {fd=17, events=POLLIN}, {fd=37, events=POLLIN}, {fd=23, events=POLLIN}, {fd=19, events=POLLIN}, {fd=35, events=POLLIN}, {fd=34, events=POLLIN}, {fd=36, events=POLLIN}, {fd=29, events=POLLIN}], 12, 1284) = 1 ([{fd=37, revents=POLLIN}]) getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 103374}, ru_stime={0, 28265}, ...}) = 0 read(37, "\0", 512) = 1 write(1, "vswitchd/ovs-vswitchd.c,main,133"..., 33) = 33 recvfrom(19, 0x2130b3f0, 288, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(18, 0x7fffba25cf10, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) read(29, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) read(34, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) accept(35, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(36, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(17, 0x7fffba26dfc0, [128]) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(23, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(24, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) write(1, "vswitchd/ovs-vswitchd.c,main,131"..., 33) = 33 poll([{fd=20, events=POLLIN}, {fd=18, events=POLLIN}, {fd=14, events=POLLIN}, {fd=24, events=POLLIN}, {fd=17, events=POLLIN}, {fd=37, events=POLLIN}, {fd=23, events=POLLIN}, {fd=19, events=POLLIN}, {fd=35, events=POLLIN}, {fd=34, events=POLLIN}, {fd=36, events=POLLIN}, {fd=29, events=POLLIN}], 12, 784) = 1 ([{fd=37, revents=POLLIN}]) getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 103374}, ru_stime={0, 28265}, ...}) = 0 read(37, "\0", 512) = 1 futex(0x9dcc40, FUTEX_WAKE_PRIVATE, 1) = 1 write(1, "vswitchd/ovs-vswitchd.c,main,133"..., 33) = 33 recvfrom(19, 0x2130b3f0, 288, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(18, 0x7fffba25cf10, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) read(29, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) read(34, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) accept(35, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(36, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(17, 0x7fffba26dfc0, [128]) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(23, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(24, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) write(1, "vswitchd/ovs-vswitchd.c,main,131"..., 33) = 33 poll([{fd=20, events=POLLIN}, {fd=18, events=POLLIN}, {fd=14, events=POLLIN}, {fd=24, events=POLLIN}, {fd=17, events=POLLIN}, {fd=37, events=POLLIN}, {fd=23, events=POLLIN}, {fd=19, events=POLLIN}, {fd=35, events=POLLIN}, {fd=34, events=POLLIN}, {fd=36, events=POLLIN}, {fd=29, events=POLLIN}], 12, 284) = 0 (Timeout) getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 103374}, ru_stime={0, 28265}, ...}) = 0 read(37, 0x7fffba26de90, 512) = -1 EAGAIN (Resource temporarily unavailable) futex(0x9dcc40, FUTEX_WAKE_PRIVATE, 1) = 1 write(1, "vswitchd/ovs-vswitchd.c,main,133"..., 33) = 33 getrusage(RUSAGE_SELF, {ru_utime={70, 1399}, ru_stime={0, 50021}, ...}) = 0 recvfrom(19, 0x2130b3f0, 288, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(18, 0x7fffba25cf10, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) read(29, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) read(34, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) accept(35, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(36, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) sendmsg(25, {msg_name(0)=NULL, msg_iov(1)=[{"(\0\0\0\22\0\1\0\26\0\0\0\266\352\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 40}], msg_controllen=0, msg_flags=0}, 0) = 40 recvmsg(25, {msg_name(0)=NULL, msg_iov(2)=[{"\204\4\0\0\20\0\0\0\26\0\0\0\266\352\377\377\0\0\1\0\255\0\0\0\2\1\0\0\0\0\0\0"..., 1024}, {"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 65536}], msg_controllen=0, msg_flags=0}, MSG_DONTWAIT) = 1156 accept(17, 0x7fffba26dfc0, [128]) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(23, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(24, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) write(1, "vswitchd/ovs-vswitchd.c,main,131"..., 33) = 33 poll([{fd=20, events=POLLIN}, {fd=18, events=POLLIN}, {fd=14, events=POLLIN}, {fd=24, events=POLLIN}, {fd=17, events=POLLIN}, {fd=37, events=POLLIN}, {fd=23, events=POLLIN}, {fd=19, events=POLLIN}, {fd=35, events=POLLIN}, {fd=34, events=POLLIN}, {fd=36, events=POLLIN}, {fd=29, events=POLLIN}], 12, 5000) = 1 ([{fd=37, revents=POLLIN}]) getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 103374}, ru_stime={0, 28265}, ...}) = 0 read(37, "\0", 512) = 1 write(1, "vswitchd/ovs-vswitchd.c,main,133"..., 33) = 33 recvfrom(19, 0x2130b3f0, 288, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(18, 0x7fffba25cf10, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) read(29, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) read(34, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) accept(35, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(36, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(17, 0x7fffba26dfc0, [128]) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(23, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(24, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) write(1, "vswitchd/ovs-vswitchd.c,main,131"..., 33) = 33 poll([{fd=20, events=POLLIN}, {fd=18, events=POLLIN}, {fd=14, events=POLLIN}, {fd=24, events=POLLIN}, {fd=17, events=POLLIN}, {fd=37, events=POLLIN}, {fd=23, events=POLLIN}, {fd=19, events=POLLIN}, {fd=35, events=POLLIN}, {fd=34, events=POLLIN}, {fd=36, events=POLLIN}, {fd=29, events=POLLIN}], 12, 4785) = 1 ([{fd=37, revents=POLLIN}]) getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 103374}, ru_stime={0, 28265}, ...}) = 0 read(37, "\0", 512) = 1 futex(0x9dcc40, FUTEX_WAKE_PRIVATE, 1) = 1 write(1, "vswitchd/ovs-vswitchd.c,main,133"..., 33) = 33 recvfrom(19, 0x2130b3f0, 288, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(18, 0x7fffba25cf10, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) read(29, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) read(34, 0x2179cf06, 1518) = -1 EAGAIN (Resource temporarily unavailable) accept(35, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(36, 0x7fffba26dd60, [128]) = -1 EAGAIN (Resource temporarily unavailable) accept(17, 0x7fffba26dfc0, [128]) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(23, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(24, 0x7fffba25cfb0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(20, 0x7fffba25cfa0, MSG_DONTWAIT) = -1 EAGAIN (Resource temporarily unavailable) write(1, "vswitchd/ovs-vswitchd.c,main,131"..., 33) = 33 poll([{fd=20, events=POLLIN}, {fd=18, events=POLLIN}, {fd=14, events=POLLIN}, {fd=24, events=POLLIN}, {fd=17, events=POLLIN}, {fd=37, events=POLLIN}, {fd=23, events=POLLIN}, {fd=19, events=POLLIN}, {fd=35, events=POLLIN}, {fd=34, events=POLLIN}, {fd=36, events=POLLIN}, {fd=29, events=POLLIN}], 12, 4285 <unfinished ...> +++ killed by SIGABRT (core dumped) +++
run.sh
Description: run.sh
_______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss