ACPI group / action ไม่ได้กำหนด: processor / LNXCPU


12

หากฉันถอดปลั๊กแล็ปท็อปของฉันจากอะแดปเตอร์ AC ฉันจะได้รับข้อผิดพลาด ACPI ดังนี้:

May 07 21:45:04 veritas root[7067]: ACPI group/action undefined: processor / LNXCPU:00
May 07 21:45:04 veritas root[7076]: ACPI group/action undefined: processor / LNXCPU:01
May 07 21:45:04 veritas root[7078]: ACPI group/action undefined: processor / LNXCPU:02
May 07 21:45:04 veritas root[7080]: ACPI group/action undefined: processor / LNXCPU:03

acpi_listen ทิ้ง

ac_adapter ACPI0003:00 00000080 00000000
battery PNP0C0A:00 00000080 00000001
processor LNXCPU:00 00000080 00000015
processor LNXCPU:01 00000080 00000015
processor LNXCPU:02 00000080 00000015
processor LNXCPU:03 00000080 00000015
processor LNXCPU:00 00000081 00000000
processor LNXCPU:01 00000081 00000000
processor LNXCPU:02 00000081 00000000
processor LNXCPU:03 00000081 00000000
...
processor LNXCPU:00 00000080 00000000
processor LNXCPU:01 00000080 00000000
processor LNXCPU:02 00000080 00000000
processor LNXCPU:03 00000080 00000000

/etc/acpi/handler.sh ดูเหมือนจะไม่จัดการเหตุการณ์ตัวประมวลผล / LNXCPU ...

#!/bin/bash
# Default acpi script that takes an entry for all actions

case "$1" in
    button/power)
        case "$2" in
            PBTN|PWRF)
                logger 'PowerButton pressed'
                ;;
            *)
                logger "ACPI action undefined: $2"
                ;;
        esac
        ;;
    button/sleep)
        case "$2" in
            SLPB|SBTN)
                logger 'SleepButton pressed'
                ;;
            *)
                logger "ACPI action undefined: $2"
                ;;
        esac
        ;;
    ac_adapter)
        case "$2" in
            AC|ACAD|ADP0)
                case "$4" in
                    00000000)
                        logger 'AC unpluged'
                        ;;
                    00000001)
                        logger 'AC pluged'
                        ;;
                esac
                ;;
            *)
                logger "ACPI action undefined: $2"
                ;;
        esac
        ;;
    battery)
        case "$2" in
            BAT0)
                case "$4" in
                    00000000)
                        logger 'Battery online'
                        ;;
                    00000001)
                        logger 'Battery offline'
                        ;;
                esac
                ;;
            CPU0)
                ;;
            *)  logger "ACPI action undefined: $2" ;;
        esac
        ;;
    button/lid)
        case "$3" in
            close)
                logger 'LID closed'
                ;;
            open)
                logger 'LID opened'
                ;;
            *)
                logger "ACPI action undefined: $3"
                ;;
    esac
    ;;
    *)
        logger "ACPI group/action undefined: $1 / $2"
        ;;
esac

สิ่งที่แย่กว่านั้นคือฉันจะประสบปัญหาเรื่องประสิทธิภาพที่รุนแรง (ทุกอย่างล่าช้า!) ฉันคิดว่านี่เป็นเพราะความพยายามซ้ำ ๆ ของโปรเซสเซอร์ / LNXCPU เนื่องจากปัญหาด้านประสิทธิภาพนั้นเชื่อมต่ออย่างมากกับข้อผิดพลาดของการกระทำ ACPI ที่ไม่ได้กำหนดและประสิทธิภาพจะเป็นปกติอีกครั้งหากรีบูต

อย่างไรก็ตามฉันไม่สามารถหาสาเหตุได้ ... ฉันพยายามcpupowerควบคุมโหมด CPU (powersave หรือประสิทธิภาพ) และปิดการใช้งานtlpแต่ทั้งคู่ก็ไม่ได้ช่วยอะไร

มันเกิดขึ้นได้อย่างไร? อะไรเป็นสาเหตุของปัญหานี้ และที่สำคัญฉันจะแก้ปัญหานี้ได้อย่างไร ขอบคุณมาก!

FOLLOW-UP : ฉันสังเกตเห็นว่าความถี่ของ CPU คือ 400MHz (การเลือกโหมดประสิทธิภาพไม่ทำงาน) แต่หลังจากรีบูตเครื่องจะกลายเป็น 800MHz (การเลือกโหมดประสิทธิภาพความถี่จะเป็น 2.8GHz)

คำตอบ:


0

หากฉันถอดปลั๊กแล็ปท็อปของฉันจากอะแดปเตอร์ AC ฉันจะได้รับข้อผิดพลาด ACPI เช่นนี้ ...

สิ่งนี้แนะนำให้ที่: " ไม่รู้จักการเสียบอะแดปเตอร์ ACPI AC "

rzepaczyk - handler.sh ของฉัน:

# Default acpi script that takes an entry for all actions

minspeed=`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq`
maxspeed=`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq`
setspeed1="/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed"
setspeed2="/sys/devices/system/cpu/cpu1/cpufreq/scaling_setspeed"
setspeed3="/sys/devices/system/cpu/cpu2/cpufreq/scaling_setspeed"
setspeed4="/sys/devices/system/cpu/cpu3/cpufreq/scaling_setspeed"

set $*

case "$1" in
    button/power)
        #echo "PowerButton pressed!">/dev/tty5
        case "$2" in
            PBTN|PWRF)  logger "PowerButton pressed: $2" ;;
            *)          logger "ACPI action undefined: $2" ;;
        esac
        ;;
    button/sleep)
        case "$2" in
            SLPB)   echo -n mem >/sys/power/state ;;
            *)      logger "ACPI action undefined: $2" ;;
        esac
        ;;
    ac_adapter)
        case "$2" in
            AC*|ACAD*|ADP0*|AD*)
                case "$4" in
                    00000000)
                        echo -n $minspeed >$setspeed1
                        echo -n $minspeed >$setspeed2
                        echo -n $minspeed >$setspeed3
                        echo -n $minspeed >$setspeed4
                        #/etc/laptop-mode/laptop-mode start
                    ;;
                    00000001)
                        echo -n $maxspeed >$setspeed1
                        echo -n $maxspeed >$setspeed2
                        echo -n $maxspeed >$setspeed3
                        echo -n $maxspeed >$setspeed4
                        #/etc/laptop-mode/laptop-mode stop
                    ;;
                esac
                ;;
            *)  logger "ACPI action undefined: $2" ;;
        esac
        ;;
    battery)
        case "$2" in
            BAT0)
                case "$4" in
                    00000000)   #echo "offline" >/dev/tty5
                    ;;
                    00000001)   #echo "online"  >/dev/tty5
                    ;;
                esac
                ;;
            CPU0)
                ;;
            *)  logger "ACPI action undefined: $2" ;;
        esac
        ;;
    button/lid)
        case "$3" in
            close)
                #echo "LID closed!">/dev/tty5
                ;;
            open)
                #echo "LID opened!">/dev/tty5
                ;;
        esac
        ;;

    *)
        logger "ACPI group/action undefined: $1 / $2"
        ;;
esac

สิ่งที่ฉันพยายามทำคือการตั้งค่า cpu ราชการเป็น ondemand เมื่อเสียบอะแดปเตอร์และ powersave เมื่อถอดปลั๊กอะแดปเตอร์ ฉันเห็นว่าการกระทำนั้นไม่ได้กำหนดดังนั้นฉันจึงคิดว่า acpi ไม่รู้จักการกระทำ (แม้จะเป็นเช่นนี้:

ac_adapter)
           case "$2" in
           AC*|ACAD*|ADP0*|AD*)

)

รายการใน handler.sh

Raynman - ดูเหมือนว่าพวกเขาจะได้รับการจัดการ acpi_listen แสดงเหตุการณ์ ac_adapter นอกเหนือจากเหตุการณ์ที่ไม่ได้กำหนดซึ่งแสดงในบันทึก กรณีเหล่านี้ได้รับการจัดการในใบเสนอราคาล่าสุดของคุณ จากนั้นคุณมีคำสั่ง case อื่นบน $ 4 เพื่อแยกความแตกต่างระหว่างการเสียบ (00000001) และการถอด (00000000) หากคุณแทนที่คำสั่ง echo เหล่านั้นด้วยการเรียกไปที่ cpufreq-set (หรืออะไรก็ตามที่คุณนึกถึง) มันควรจะใช้ได้

rzepaczyk - ใช้งานได้ขอบคุณสำหรับความช่วยเหลือของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.