While I couldn't get a debug trace for this devicekit-power-daemon crash
(or rather unexpected quit), I have now compiled a kernel with a custom
DSDT, and the problem goes away.

These are the lines changed in the DSDT:

Original, as BIOS
Name (BBIF, Package (0x0D)
            {
                One,
                0x1130,
                0x1130,
                One,
                0x2B5C,
                Zero,
                Zero,
                Zero,
                0xFFFFFFFF,
                "T220",
                "",
                "LION",
                "Thread"
            })


Edited DSDT:
Name (BBIF, Package (0x0D)
            {
                One,
                0x1130,
                0x1130,
                One,
                0x2B5C,
                0x140,
                0xA0,
                0x10,
                0x10,
                "T220",
                "",
                "LION",
                "Thread"
            })

A few lines later in the _BIF Method, the line

Store (STR3, Index (BBIF, 0x0C))

was also removed, which was overriding the 'OEM INfo' field with the
Unicode or binary contents of the variable STR3.

/proc/acpi/battery/BAT0/info before:

cat /proc/acpi/battery/BAT0/info 
present:                 yes
design capacity:         3200 mAh
last full capacity:      3360 mAh
battery technology:      rechargeable
design voltage:          7400 mV
design capacity warning: 0 mAh
design capacity low:     0 mAh
capacity granularity 1:  0 mAh
capacity granularity 2:  -1 mAh
model number:            2S1P
serial number:           
battery type:            LION
OEM info:                ��������������������������������

After:

cat /proc/acpi/battery/BAT0/info 
present:                 yes
design capacity:         3200 mAh
last full capacity:      3360 mAh
battery technology:      rechargeable
design voltage:          7400 mV
design capacity warning: 320 mAh
design capacity low:     160 mAh
capacity granularity 1:  16 mAh
capacity granularity 2:  16 mAh
model number:            2S1P
serial number:           
battery type:            LION
OEM info:                Thread


It therefore appears that either the zero or negative values of the DSDT 
'capacity granularity' constants or the apparently Binary contents of the 'OEM 
info' field (which end up in the /sys filesystem as  POWER_SUPPLY_MANUFACTURER 
variable) are causing either dBus, udev or devkit-power-daemon to quit.

The process of loading a customised DSDT takes hours, since a new kernel
has to be compiled (and maintained), which is definitely a retrograde
step.

-- 
Karmic Alpha 6: devicekit-power-daemon crash with SIGPIPE
https://bugs.launchpad.net/bugs/434771
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to