Date: Wed, 14 Apr 2010 09:28:33 -0700 From: Jack Vogel <jfvogel@gmail.com> To: Mikolaj Golub <to.my.trociny@gmail.com> Cc: Brandon Gooch <jamesbrandongooch@gmail.com>, pyunyh@gmail.com, freebsd-stable@freebsd.org, Brandon Gooch <bgooch@se.edu> Subject: Re: em driver regression Message-ID: <w2t2a41acea1004140928kefc2443ci44e22d7b38509a32@mail.gmail.com> In-Reply-To: <867hoajsaw.fsf@zhuzha.ua1> References: <201004081313.o38DD4JM041821@lava.sentex.ca> <201004081446.o38EkU7h042296@lava.sentex.ca> <20100408181741.GI5734@michelle.cdnetworks.com> <g2q2a41acea1004081122ndec4e6a1mbac3f0f7fa11cc9c@mail.gmail.com> <s2h2a41acea1004081127qac1d542dufcefbf5ec054e0ce@mail.gmail.com> <20100408183900.GJ5734@michelle.cdnetworks.com> <q2k2a41acea1004081217t24b14f5fi18801af5ca0a962@mail.gmail.com> <r2w179b97fb1004081252k2c864293zb63bd44e200e7efe@mail.gmail.com> <86d3y54tb0.fsf@kopusha.onet> <867hoajsaw.fsf@zhuzha.ua1>
next in thread | previous in thread | raw e-mail | index | archive | help
Oh, didn't realize you were running the lem code :) Will make the changes shortly, thanks for your debugging efforts. Jack On Wed, Apr 14, 2010 at 2:29 AM, Mikolaj Golub <to.my.trociny@gmail.com>wrote: > > On Sun, 11 Apr 2010 23:40:03 +0300 Mikolaj Golub wrote: > > MG> Hi, > > MG> Today I have upgraded the kernel in my VirtualBox (3.1.51.r27187) to > the > MG> latest current and have "em0: Watchdog timeout -- resetting" issue. My > MG> previous kernel was for Mar 12. > > MG> Tracking the revision where the problem appeared I see that the issue > is not > MG> observed for r203834 and starts to observe after r205869. > > MG> Interestingly, if I enter ddb and then exit (sometimes I needed to do > this > MG> twice) the errors stop and network starts working. > > Adding some prints I observed the following: > > Apr 14 07:14:08 hasta kernel: em0: lem_init_locked started (ticks 813, > watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_init_locked returned at 3 (ticks > 818, watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: setting watchdog_check to TRUE in > lem_mq_start_locked 1 (ticks 818, watchdog_ > time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_init_locked started (ticks 818, > watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_init_locked returned at 3 (ticks > 823, watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: setting watchdog_check to TRUE in > lem_mq_start_locked 1 (ticks 828, watchdog_ > time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_txeof started (ticks: 923, > watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_txeof returned at 3 (ticks: 923, > watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_txeof started (ticks: 1023, > watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_txeof returned at 3 (ticks: 1023, > watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: Watchdog timeout -- resetting (ticks: > 1023, watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_init_locked started (ticks 1024, > watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_init_locked returned at 3 (ticks > 1028, watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_txeof started (ticks: 1128, > watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: lem_txeof returned at 1 (ticks: 1128, > watchdog_time: 0) > Apr 14 07:14:08 hasta kernel: em0: Watchdog timeout -- resetting (ticks: > 1128, watchdog_time: 0) > ... > > So althogh adapter->watchdog_check was set TRUE, adapter->watchdog_time was > never set. > > I see that before r205869 watchdog_time was set in em_xmit but lem_xmit > does > not contain this. After adding back this line to lem_xmit (see the first > patch > below) the problem has gone on my box. > > Also seeing that in the current em_mq_start_locked() both watchdog_check > and > watchdog_time are set I tried another patch adding watchdog_time setting in > lem_mq_start_locked() too (see the second patch below). This has also fixed > the issue for me but I don't know if this is a correct fix and if this is > the > only place where watchdog_time should be set (there are other places in the > function and in the code where watchdog_check is set to TRUE but > watchdog_time > is not set). > > -- > Mikolaj Golub > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?w2t2a41acea1004140928kefc2443ci44e22d7b38509a32>