Messages in this thread |  | | | Date | Thu, 17 Jan 2008 15:24:50 +0800 | | From | "Dave Young" <> | | Subject | Re: [Bluez-devel] Oops involving RFCOMM and sysfs |
On Jan 17, 2008 7:06 AM, Gabor Gombas <gombasg@sztaki.hu> wrote:
> Hi,
>
> On Wed, Jan 16, 2008 at 09:02:05AM +0800, Dave Young wrote:
>
> > The rfcomm tty device will possibly retain even when conn is down,
> > and sysfs doesn't support zombie device moving, so this patch
> > move the tty device before conn device is destroyed.
> >
> > Signed-off-by: Dave Young <hidave.darkstar@gmail.com>
>
> This seems to work, both the oops and the hang are gone. I get these
> messages in syslog when the Bluetooth link hangs and I want to kill pppd
> with "poff":
>
> Jan 16 23:55:59 twister kernel: unregister_netdevice: waiting for ppp0 to become free. Usage count = 1
> Jan 16 23:56:09 twister kernel: unregister_netdevice: waiting for ppp0 to become free. Usage count = 1
>
> But a "killall -9 pppd" seems to help and then the re-connect (after the
> phone got power-cycled) works.
Weird, I guess "device_move(dev, NULL) two times" cause the problem.
Anyway, device_move should check the old_parent and new_parent , if
they equal to each other then just return.
Am I right?
>
>
> Gabor
>
> --
> ---------------------------------------------------------
> MTA SZTAKI Computer and Automation Research Institute
> Hungarian Academy of Sciences
> ---------------------------------------------------------
>
|  |