Date: Thu, 28 May 2015 15:39:46 +0300 From: Oleg Prozorov <oleg.prozorov@gmail.com> To: Stefano Garzarella <stefanogarzarella@gmail.com> Cc: "freebsd-net@freebsd.org" <net@freebsd.org>, Luigi Rizzo <rizzo@iet.unipi.it>, Giuseppe Lettieri <g.lettieri@iet.unipi.it> Subject: Re: Netmap problem with e1000e driver Message-ID: <CACkYmBB1O8FG7yU-4RAsFyb0tpX=EfbnNeQkqRTs2Zw8J6rJKw@mail.gmail.com> In-Reply-To: <CAO0mX5bbfeHkAmuhagQ-8DN1AJCX7rETbnq7pLVHMms34oijJQ@mail.gmail.com> References: <CACkYmBDEiN%2BUz5ztkAEuTHEY2cAqp2mvR1FdFdD7ht%2BVPL-Zxw@mail.gmail.com> <CAO0mX5bbfeHkAmuhagQ-8DN1AJCX7rETbnq7pLVHMms34oijJQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hello Stefano, I am working on Debian 8 jessy: kernel version: 3.16.0-4-amd64 i used netmap from link : https://netmap.googlecode.com/archive/32e06f9d18bf82e40a7c5b6e769c0ca760791= 3fc.tar.gz I did the next steps: 1) untar netmap achive 2) dowonload linux source 3) in netmap-32e06f9d18bf/LINUX directory 3.1) ./configure --kernel-sources=3D/usr/src/linux-source-3.16/ --drivers=3De1000e 3.2) make clean all 4) rmmod e1000e 5) insmod ./netmap.ko 6) insmod ./e1000e/e1000e.ko Ethernet adapter: 02:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection Subsystem: Intel Corporation Gigabit CT Desktop Adapter Flags: bus master, fast devsel, latency 0, IRQ 16 Memory at f7dc0000 (32-bit, non-prefetchable) [size=3D128K] Memory at f7d00000 (32-bit, non-prefetchable) [size=3D512K] I/O ports at e000 [size=3D32] Memory at f7de0000 (32-bit, non-prefetchable) [size=3D16K] Expansion ROM at f7d80000 [disabled] [size=3D256K] Capabilities: [c8] Power Management version 2 Capabilities: [d0] MSI: Enable- Count=3D1/1 Maskable- 64bit+ Capabilities: [e0] Express Endpoint, MSI 00 Capabilities: [a0] MSI-X: Enable+ Count=3D5 Masked- Capabilities: [100] Advanced Error Reporting Capabilities: [140] Device Serial Number 68-05-ca-ff-ff-28-36-f5 Kernel driver in use: e1000e 03:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection Subsystem: Intel Corporation Gigabit CT Desktop Adapter Flags: bus master, fast devsel, latency 0, IRQ 17 Memory at f7cc0000 (32-bit, non-prefetchable) [size=3D128K] Memory at f7c00000 (32-bit, non-prefetchable) [size=3D512K] I/O ports at d000 [size=3D32] Memory at f7ce0000 (32-bit, non-prefetchable) [size=3D16K] Expansion ROM at f7c80000 [disabled] [size=3D256K] Capabilities: [c8] Power Management version 2 Capabilities: [d0] MSI: Enable- Count=3D1/1 Maskable- 64bit+ Capabilities: [e0] Express Endpoint, MSI 00 Capabilities: [a0] MSI-X: Enable+ Count=3D5 Masked- Capabilities: [100] Advanced Error Reporting Capabilities: [140] Device Serial Number 68-05-ca-ff-ff-22-19-e7 Kernel driver in use: e1000e My application work as netmap bridge. rx -tx in one thread 02:00.0 -> 03:00.0 rx-tx in one thread 03:00.0 -> 02:00.0 I have attached my Netmap engine NetmapStream.cpp. On Intel I350 T2 having Network adapter link bringing down/up ethernet adapter has recovered successfully approx in 3-5 sec without driver crash. Thx, Oleg. 2015-05-28 12:54 GMT+03:00 Stefano Garzarella <stefanogarzarella@gmail.com>= : > Hi Oleg, > I'm working on netmap with Luigi and Giuseppe (in cc). > > I tried to do the same steps, but I can not produce the crash. > > Can you you send us your kernel and netmap version? > When you put down and up the interface, are you in tx or rx? > > Cheers, > Stefano > > 2015-05-27 17:26 GMT+02:00 Oleg Prozorov <oleg.prozorov@gmail.com>: > >> Hello All, >> I am using Netmap technology in my program and have the problem : >> when I put eth link down and then have it up netmap goes down with kerne= l >> messages: >> >> log from dmesg: >> >> [ 2457.286289] irq 44: nobody cared (try booting with the "irqpoll" >> option) >> [ 2457.286296] CPU: 2 PID: 0 Comm: swapper/2 Tainted: G O >> 3.16.0-4-amd64 #1 Debian 3.16.7-ckt9-3~deb8u1 >> [ 2457.286298] Hardware name: System manufacturer System Product >> Name/P8H61-MX R2.0, BIOS 0803 10/26/2012 >> [ 2457.286300] ffff880198b544c4 ffffffff8150ac96 ffff880198b54400 >> ffffffff810bd10d >> [ 2457.286304] ffff880198b54400 000000000000002c 0000000000000000 >> ffffffff810bd631 >> [ 2457.286307] 0000000000000000 0000000000000000 000000000000002c >> 0000000000000000 >> [ 2457.286310] Call Trace: >> [ 2457.286312] <IRQ> [<ffffffff8150ac96>] ? dump_stack+0x41/0x51 >> [ 2457.286324] [<ffffffff810bd10d>] ? __report_bad_irq+0x2d/0xc0 >> [ 2457.286328] [<ffffffff810bd631>] ? note_interrupt+0x241/0x290 >> [ 2457.286332] [<ffffffff810bae51>] ? handle_irq_event_percpu+0xa1/0x19= 0 >> [ 2457.286336] [<ffffffff810baf78>] ? handle_irq_event+0x38/0x60 >> [ 2457.286341] [<ffffffff810bda05>] ? handle_edge_irq+0x85/0x150 >> [ 2457.286347] [<ffffffff810150ed>] ? handle_irq+0x1d/0x30 >> [ 2457.286350] [<ffffffff81513bf9>] ? do_IRQ+0x49/0xe0 >> [ 2457.286355] [<ffffffff81511aad>] ? common_interrupt+0x6d/0x6d >> [ 2457.286356] <EOI> [<ffffffff8108ac6d>] ? >> __hrtimer_start_range_ns+0x1cd/0x390 >> [ 2457.286364] [<ffffffff813ddb52>] ? cpuidle_enter_state+0x52/0xc0 >> [ 2457.286368] [<ffffffff813ddb48>] ? cpuidle_enter_state+0x48/0xc0 >> [ 2457.286372] [<ffffffff810a7e68>] ? cpu_startup_entry+0x2f8/0x400 >> [ 2457.286375] [<ffffffff81042c4f>] ? start_secondary+0x20f/0x2d0 >> [ 2457.286377] handlers: >> [ 2457.286384] [<ffffffffa0732da0>] e1000_msix_other [e1000e] >> [ 2457.286386] Disabling IRQ #44 >> >> before i have the next steps: >> >> insmod ./netmap.ko >> insmod ./e1000e/e1000e.ko >> >> log from dmesg: >> >> [ 1645.548786] e1000e: Intel(R) PRO/1000 Network Driver - 2.3.2-k >> [ 1645.548791] e1000e: Copyright(c) 1999 - 2014 Intel Corporation. >> [ 1645.549056] e1000e 0000:02:00.0: Interrupt Throttling Rate (ints/sec) >> set to dynamic conservative mode >> [ 1645.549089] e1000e 0000:02:00.0: irq 42 for MSI/MSI-X >> [ 1645.549094] e1000e 0000:02:00.0: irq 43 for MSI/MSI-X >> [ 1645.549098] e1000e 0000:02:00.0: irq 44 for MSI/MSI-X >> [ 1645.704831] 635.291734 [2720] netmap_attach success for >> eth0 >> tx 1/256 rx 1/256 queues/slots >> [ 1645.705079] e1000e 0000:02:00.0 eth0: registered PHC clock >> [ 1645.705083] e1000e 0000:02:00.0 eth0: (PCI Express:2.5GT/s:Width x1) >> 68:05:ca:28:36:f5 >> [ 1645.705086] e1000e 0000:02:00.0 eth0: Intel(R) PRO/1000 Network >> Connection >> [ 1645.705100] e1000e 0000:02:00.0 eth0: MAC: 3, PHY: 8, PBA No: >> E46981-008 >> [ 1645.705349] e1000e 0000:03:00.0: Interrupt Throttling Rate (ints/sec) >> set to dynamic conservative mode >> [ 1645.705381] e1000e 0000:03:00.0: irq 45 for MSI/MSI-X >> [ 1645.705386] e1000e 0000:03:00.0: irq 46 for MSI/MSI-X >> [ 1645.705390] e1000e 0000:03:00.0: irq 47 for MSI/MSI-X >> [ 1645.739490] systemd-udevd[2715]: renamed network interface eth0 to et= h5 >> [ 1645.824716] IPv6: ADDRCONF(NETDEV_UP): eth5: link is not ready >> [ 1645.848756] 635.435799 [2720] netmap_attach success for >> eth0 >> tx 1/256 rx 1/256 queues/slots >> [ 1645.848851] e1000e 0000:03:00.0 eth0: registered PHC clock >> [ 1645.848856] e1000e 0000:03:00.0 eth0: (PCI Express:2.5GT/s:Width x1) >> 68:05:ca:22:19:e7 >> [ 1645.848859] e1000e 0000:03:00.0 eth0: Intel(R) PRO/1000 Network >> Connection >> [ 1645.848875] e1000e 0000:03:00.0 eth0: MAC: 3, PHY: 8, PBA No: >> E46981-008 >> [ 1645.869528] systemd-udevd[2715]: renamed network interface eth0 to et= h6 >> [ 1645.949935] IPv6: ADDRCONF(NETDEV_UP): eth6: link is not ready >> [ 1648.795532] e1000e: eth5 NIC Link is Up 1000 Mbps Full Duplex, Flow >> Control: Rx/Tx >> [ 1648.795856] IPv6: ADDRCONF(NETDEV_CHANGE): eth5: link becomes ready >> [ 1648.843497] e1000e: eth6 NIC Link is Up 1000 Mbps Full Duplex, Flow >> Control: Rx/Tx >> [ 1648.843820] IPv6: ADDRCONF(NETDEV_CHANGE): eth6: link becomes ready >> [ 1668.060841] e1000e: eth5 NIC Link is Up 1000 Mbps Full Duplex, Flow >> Control: Rx/Tx >> [ 1668.212692] e1000e: eth6 NIC Link is Up 1000 Mbps Full Duplex, Flow >> Control: Rx/Tx >> >> >> My program used netmap desc: >> root@debian:/home/debian/Projects/bin# lsmod | grep netmap >> netmap 99228 5 e1000e >> >> >> Then even if it shows that link is up net map stops to work and only >> rmmod/insmod and restart of the netmap can bring it back to work. >> >> Could you please help me with it ? >> >> Thx a lot, >> Oleg. >> _______________________________________________ >> freebsd-net@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-net >> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" >> > > > > -- > *Stefano Garzarella* > Software Engineer > > e-mail: stefano.garzarella@gmail.com > github: http://github.com/stefano-garzarella > linkedin: http://it.linkedin.com/pub/stefano-garzarella > --=20 =D0=A1 =D1=83=D0=B2=D0=B0=D0=B6=D0=B5=D0=BD=D0=B8=D0=B5=D0=BC, =D0=9E=D0=BB=D0=B5=D0=B3 =D0=9F=D1=80=D0=BE=D0=B7=D0=BE=D1=80=D0=BE=D0=B2.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACkYmBB1O8FG7yU-4RAsFyb0tpX=EfbnNeQkqRTs2Zw8J6rJKw>