The "xmit" function of a PPP channel is a synchronous operation. If the transmission fails, we must notify the caller and let them re-submit the skb later. The return status of dev_queue_xmit is needed to determine the return code passed back to the caller and thus the call is made synchronously and not in a tasklet.

Looking at the stack traces earlier in this thread, it seems to me that even if the PPPoE call was made in a tasklet, this same warning could be generated.

--
Michal Ostrowski
[EMAIL PROTECTED]



Jarek Poplawski wrote:
On Wed, Apr 11, 2007 at 12:52:28PM +0400, Yuriy N. Shkandybin wrote:
...
On Wed, 11 Apr 2007 09:57:33 +0400 "Yuriy N. Shkandybin" <[EMAIL PROTECTED]> wrote:

I've tested  2.6.21-rc6-mm1
Linux vpn1 2.6.21-rc6-mm1 #4 SMP Wed Apr 11 03:34:26 MSD 2007 x86_64
Intel(R) Pentium(R) D CPU 2.80GHz GenuineIntel GNU/Linux

warn appeares upon first pppoe connection to rp-pppoe server in kernel mode

Thanks.  So you're saying that
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.21-rc6/2.6.21-rc6-mm1/broken-out/ppp_generic-fix-lockdep-warning.patch
did not fix anything?
As i understand this patch already in -mm tree, so I've booted into last mm kernel and received this locked warning.
Or i've mistaked and should apply this patch manually?

Hi!

Yuriy - thanks for testing my patch ...(pause) Not!

It seems this patch is not visible in this version - probably
is overpatched by something else. But your new log shows there
is another connection between these locks (ppp_xmit_process
and ppp_push instead of ppp_channel_push in "-> #0"), so the
patch is not sufficient (and could be dumped).

I don't know your vlans configuration, but it seems the real
lockup isn't very probable here - it's rather lockdep question.
I think vlan's too broad lockdep class is the main "guilty"
here, but probably pppoe also could be enhanced: it's making
the things unnecessarily complicated by calling dev_queue_xmit
under ppp_generic's xmit locks. I wonder if there is any reason
against using a tasklet here.

I'll try to find more time to untie this yet - or maybe some
maintainer will find this interesting, too...

Regards,
Jarek P.

PS: sorry for late responding (vacations).


-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to