Sorry... I guess I didn't explain that very well.  :-/

What I'm seeing is that the high-CPU problem with udevd only happens when I 
plug in
the Blackberry when the "berry_charge" module is already loaded.  The module 
seems
to work just fine the *first* time it loads (that is to say, when it auto-loads 
in response
to my plugging in the Blackberry).

To clarify, I'm not using "barry".  I'm just using the berry_charge kernel 
module (on a
2.6.24.2 kernel).

BTW, I found that it was informative to turn on debugging for the module, which 
I did
by creating a file in "/etc/modprobe.d", containing this line:

  options berry_charge debug=1

With this in effect, the dmesg output shows that the berry_charge module keeps 
getting
called over and over, successfully sending the "magic" commands to the 
Blackberry each time.
The problem seems to be that udevd doesn't understand that it doesn't need to 
keep
trying to reinitialize the module.  Again, udevd only seems to get in this mode 
when a Blackberry
is plugged in when the berry_charge module is already loaded.

>From a quick look at the source code of the "berry_charge" module, I'd guess 
>that this is because 
the module doesn't finish its initialization like most drivers -- it actually 
returns a failure ("-ENODEV"),
presumably because it's not *really* a driver at all.  Guessing that this 
doesn't phase udevd when
we're in the "auto-install module" code path, but exposes a bug when it's on 
the "reinitialize module"
code path.
(I may be talking through my hat on this last part, as I haven't looked at the 
udevd source...)

Best Regards,

Bill

-- 
Blackberry 7730, possibly others don't work in at least Edgy Eft, Gutsy Gibbon
https://bugs.launchpad.net/bugs/152742
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to