* PPPoA driver calls ppp_unregister_channel from invalid context
@ 2004-07-29 19:54 Till Immanuel Patzschke
2004-07-29 21:44 ` Michal Ostrowski
0 siblings, 1 reply; 2+ messages in thread
From: Till Immanuel Patzschke @ 2004-07-29 19:54 UTC (permalink / raw)
To: linux-ppp
Hi,
in case a VCC is being closed, pppoatm calls pppoatm_unassign_vcc (from
pppoatm_push), which calls ppp_unregister_channel. However the context
pppoatm_push is running in is not "process context" as demanded by
ppp_unregister_channel, resulting in (valid) warning messages, like the
one below.
The kernel is 2.6.7, the ATM card is a Fore HE155 (which shouldn't
matter since pppoatm_push is definitely not "process context".
What would be the right way of unregistering the channel in case the VCC
is being closed (or imagine a native PPPoEoA driver [yes, not using
br2684...]) receiving a PADT, so one has to initiate an unregister from
the driver?
Rganks for the help,
Immanuel
Jul 28 16:09:34 ipat06 kernel: Debug: sleeping function called from
invalid context at include/linux/rwsem.h:66
Jul 28 16:09:34 ipat06 kernel: in_atomic():1, irqs_disabled():1
Jul 28 16:09:34 ipat06 kernel: [dump_stack+30/32] dump_stack+0x1e/0x20
Jul 28 16:09:34 ipat06 kernel: [<c01080de>] dump_stack+0x1e/0x20
Jul 28 16:09:34 ipat06 kernel: [__might_sleep+199/224]
__might_sleep+0xc7/0xe0
Jul 28 16:09:34 ipat06 kernel: [<c011ff57>] __might_sleep+0xc7/0xe0
Jul 28 16:09:34 ipat06 kernel: [pg0+945292153/1068032000]
ppp_unregister_channel+0x39/0x3e0 [ppp_generic]
Jul 28 16:09:34 ipat06 kernel: [<f8af0379>]
ppp_unregister_channel+0x39/0x3e0 [ppp_generic]
...
--
Till Immanuel Patzschke, CTO
Q Inc
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: PPPoA driver calls ppp_unregister_channel from invalid context
2004-07-29 19:54 PPPoA driver calls ppp_unregister_channel from invalid context Till Immanuel Patzschke
@ 2004-07-29 21:44 ` Michal Ostrowski
0 siblings, 0 replies; 2+ messages in thread
From: Michal Ostrowski @ 2004-07-29 21:44 UTC (permalink / raw)
To: linux-ppp
[-- Attachment #1: Type: text/plain, Size: 1805 bytes --]
This was an issue at one point with the PPPoE driver. The solution,
IIRC, was to mark the socket connection as having received a PADT and
unregister it next time an operation was performed from process context.
--
Michal Ostrowski <mostrows@earthlink.net>
On Thu, 2004-07-29 at 12:54 -0700, Till Immanuel Patzschke wrote:
> Hi,
>
> in case a VCC is being closed, pppoatm calls pppoatm_unassign_vcc (from
> pppoatm_push), which calls ppp_unregister_channel. However the context
> pppoatm_push is running in is not "process context" as demanded by
> ppp_unregister_channel, resulting in (valid) warning messages, like the
> one below.
> The kernel is 2.6.7, the ATM card is a Fore HE155 (which shouldn't
> matter since pppoatm_push is definitely not "process context".
>
> What would be the right way of unregistering the channel in case the VCC
> is being closed (or imagine a native PPPoEoA driver [yes, not using
> br2684...]) receiving a PADT, so one has to initiate an unregister from
> the driver?
>
> Rganks for the help,
>
> Immanuel
>
>
> Jul 28 16:09:34 ipat06 kernel: Debug: sleeping function called from
> invalid context at include/linux/rwsem.h:66
> Jul 28 16:09:34 ipat06 kernel: in_atomic():1, irqs_disabled():1
> Jul 28 16:09:34 ipat06 kernel: [dump_stack+30/32] dump_stack+0x1e/0x20
> Jul 28 16:09:34 ipat06 kernel: [<c01080de>] dump_stack+0x1e/0x20
> Jul 28 16:09:34 ipat06 kernel: [__might_sleep+199/224]
> __might_sleep+0xc7/0xe0
> Jul 28 16:09:34 ipat06 kernel: [<c011ff57>] __might_sleep+0xc7/0xe0
> Jul 28 16:09:34 ipat06 kernel: [pg0+945292153/1068032000]
> ppp_unregister_channel+0x39/0x3e0 [ppp_generic]
> Jul 28 16:09:34 ipat06 kernel: [<f8af0379>]
> ppp_unregister_channel+0x39/0x3e0 [ppp_generic]
> ...
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2004-07-29 21:44 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-07-29 19:54 PPPoA driver calls ppp_unregister_channel from invalid context Till Immanuel Patzschke
2004-07-29 21:44 ` Michal Ostrowski
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.