OVH Cloud OVH Cloud

APM ou ACPI ?

69 réponses
Avatar
hugolino
Salut

APM et ACPI font bien la même chose ? (Mise en veille et tout ça)

Je me demande lequel des deux modules il vaut mieux prendre, l'un
n'est-il pas deprécié ?

La page de man d'acipd est plus agée que celle d'apm mais acipd a l'air
plus puissant.

Dernier truc, j'envisage de patcher mon 2.4.24 avec le suspend-to-disk,
y-at-il des incompatibilités avec apm ou acpi.

Merci

--
> It looks as if noone with a 64 bit machine has gotten bitten by this yet
Well, in order to get bitten by this you have to have a 2-terabyte IDE
disk, so we don't have to worry about it for another few months..
-+- Linus in Guide du linuxien pervers - J'ai déjà entendu ça quelque part"

10 réponses

3 4 5 6 7
Avatar
Samuel Colin
Dans l'article ,
Christophe PEREZ a tapoté :

C'est pas un freeze alors, c'est un beau plantage noyau. Le module de ta
carte réseau a, semble-t-il, un problème.


Non, je crois que je me suis encore mal fait comprendre.
Je peux encore faire des choses sur le pc, quasiment normalement (hors
réseau bien sûr) mais l'appel à n'importe quelle procédure de clôture
échoue. C'est en ce sens qu'il "plante", mais il n'est pas "bloqué"

Et bien, si, même tous services réseau arrêtés, tu ne peux pas décharger le

module, c'est qu'il y a vraiment un problème.
Mais ça peut être difficile de voir si tous les services ayant besoin du
réseau sont arrêtés. Par exemple, il est possible que kde ait un daemon de
surveillance réseau (c'est juste une hypothèse de réflexion, je n'utilise
pas kde).

Il se trouve que c'est juste plus cohérent de mettre les scripts
en question dans /etc/acpi.


C'est pour ça que tu les mets en /etc/acpi/events ? :-)
Là, j'ai suivi le Français mot pour mot.

Non, le script est la suite de commandes qui sera exécutée. Dans

/etc/acpi/events il n'y a que les associations événements/scripts.
Bon, de toute façon, tu as compris, hein :-).

Ok, ça c'est l'exemple que j'ai avec mon propre :
# cat /etc/acpi/events/power
event=button/power PWR.
action=sudo /usr/local/sbin/hibernate

Euh, évite de travailler trop souvent en root et utilises plutôt sudo,

conseil d'ami.
Si tu veux voir les événements acpi, tu peux lire le contenu de
/proc/acpi/event.
D'abord tu désactives tous les daemons qui surveillent ce fichier (acpid
seulement, je pense), et tu fais un "sudo cat /proc/acpi/event", et tu
appuies sur les boutons pour voir ce qui est renvoyé.

Par contre, si tu as d'autres scripts, c'est que tu fais d'autres choses
en fonctions d'autres événements. Mais quels sont-ils ?
Que mettre d'autre pour le "event=" ?

Ben sur mon portable (je suis pas dessus, là) j'ai un événement "lid" qui

m'indique qu'on a appuyé sur le bouton de fermeture d'écran.
Il y a aussi les événements battery, ac_adapter pour signaler que la
machine fonctionne sur le secteur, etc...


J'ai viré rapidement cet acpid avec lequel l'applet batterie de gnome ne
semblait pas communiquer.

Ça n'a pas de rapport. Les niveaux de batterie sont visibles dans

/proc/acpi/battery. Mais j'ai vu que certains utilitaires avaient du mal
selon que la batterie était à gauche ou à droite (et donc battery1 ou
battery2). J'avais trouvé ça:
http://open.iliad.fr/~clecourt/wmacpi/
Et depuis je sais lire mon niveau de batterie. Il doit exister le même genre
de modifications pour gnome.

Non, je ne peux pas. Je peux sur les touches étendues qui renvoient un code,
mais pas sur les touches qui ne renvoient pas de code. La question que je me
pose, c'est pourquoi ces touches ne renvoient pas de code, raison pour
laquelle je jetterais bien un coup d'oeil au noyau ou à xfree pour voir s'il
n'y a pas un truc particulier à faire.


Allez, je me pose la question avec toi, mais je te laisse le soin de
trouver la réponse, car là, ce n'est pas de mon niveau.

Y'a peut-être des choses possible à faire avec l'url envoyée par Qing Liu:

http://lineak.sourceforge.net/
Je crois que je vais y jeter un oeil, ils mentionnent dans la doc des
boutons non visibles par xev.

Ceci dit, je plaisante, je charrie, mais je te remercie pour le temps que
tu consacres à m'expliquer.

De rien.


--
TB> fmbl est indestructible
GS> Pour quelle raison ?
JB> Parce qu'on en a une plus grosse.
-+- JB in Guide du Fmblien Assassin : "La taille compte finalement..." -+-


Avatar
Christophe PEREZ
Le Sat, 24 Jan 2004 13:28:07 +0000, Samuel Colin a écrit:

Et bien, si, même tous services réseau arrêtés, tu ne peux pas décharger le
module, c'est qu'il y a vraiment un problème.


Non, ce n'est pas ce que j'ai dit.
Si j'arrête tous les services réseau, tel qu'indiqué (tmdns, slpd,
netfs, network), je peux enlever le module.
Par contre, si je fais le malheur de vouloir décharger le module sans les
avoir tous arrêter, c'est là que le problème se pose. Même si ensuite
j'arrête ces services, le module ne se décharge plus. Et donc, je suis
"bloqué" sans être planté, et je ne peux plus ni arrêter ni rebooter
ma machine, si ce n'est avec les magics sysrq keys.

[...]
Bon, de toute façon, tu as compris, hein :-).


Ouaip ! :-)

Euh, évite de travailler trop souvent en root et utilises plutôt sudo,
conseil d'ami.


Pfff... en tant normal, oui, bien sur, mais là, il faudrait que je mette
tout en sudo :-))

Si tu veux voir les événements acpi, tu peux lire le contenu de
/proc/acpi/event.


Ah !! Là, tu dis quelque chose d'intéressant.
Et mon problème c'est que si je fais un cat /proc/acpi/event, ça ne
renvoie rien et reste bloqué dessus. CTRL+C pour en sortir.
Peut-être que j'ai là la preuve d'un défaut ?
Pourtant, à part ça, tout le reste semble fonctionner, charge de
batterie etc... sauf la temperature qui est constamment indiquée à 75°C.

D'abord tu désactives tous les daemons qui surveillent ce fichier (acpid
seulement, je pense), et tu fais un "sudo cat /proc/acpi/event", et tu
appuies sur les boutons pour voir ce qui est renvoyé.


Ben justement, rien. Mais peut-être est-ce justement en rapport avec le
fait que cette touche power ne renvoie pas de code ?
Dans le bios particulièrement succinct, j'ai juste une option APM qui est
à enable. Je dois changer ça ?

Ben sur mon portable (je suis pas dessus, là) j'ai un événement "lid" qui
m'indique qu'on a appuyé sur le bouton de fermeture d'écran.


Ne renvoie rien non plus, mais me met l'écran en noir. Intercepté par le
bios ?

Il y a aussi les événements battery, ac_adapter pour signaler que la
machine fonctionne sur le secteur, etc...


Ah !
Ça c'est intéressant aussi. Où pourrais-je trouver une doc sur les
différents événements possibles ?
Là non plus, test effectué en débranchant le secteur, rien n'est
renvoyé par /proc/acpi/event
Dans ces conditions, j'aurais bien du mal à associer des actions à des
événements puisque aucun n'existe chez moi :-)

Ça n'a pas de rapport.


Juste le rapport que si je met acpid au lieu de acpi, l'applet n'indique
plus rien.

Les niveaux de batterie sont visibles dans
/proc/acpi/battery.


Je sais ça.

Mais j'ai vu que certains utilitaires avaient du mal
selon que la batterie était à gauche ou à droite (et donc battery1 ou
battery2). J'avais trouvé ça:
http://open.iliad.fr/~clecourt/wmacpi/


Vais voir.

Y'a peut-être des choses possible à faire avec l'url envoyée par Qing Liu:
http://lineak.sourceforge.net/
Je crois que je vais y jeter un oeil, ils mentionnent dans la doc des
boutons non visibles par xev.


J'étais allé voir, il est basé sur showkeys qui chez moi, ne renvoie
rien de plus.

--
Christophe PEREZ
Écrivez moi sans _faute !

Avatar
Christophe PEREZ
Le Fri, 23 Jan 2004 17:37:00 -0400, Christophe PEREZ a écrit:

Je ne crois pas qu'on puisse faire des choses avec les touches
combinées à Fn (pas les F1, F2...). Pour les autres touches,
il y a en qui se sont décarcassés à écrire des doc:

http://qliu.free.fr/Linux/programmer-touche.html


Vais voir ça, merci.


J'ai vu, mais ça ne m'apporte rien de plus, à moins que j'ai mal lu,
puisque justement ni xev, ni showkey, ni évidemment xbindkeys ne me
renvoie le moindre code de touche pour les touches en question.

--
Christophe PEREZ
Écrivez moi sans _faute !


Avatar
Qing Liu
Christophe PEREZ writes:

J'ai vu, mais ça ne m'apporte rien de plus, à moins que j'ai mal lu,
puisque justement ni xev, ni showkey, ni évidemment xbindkeys ne me


showkey -s ?

renvoie le moindre code de touche pour les touches en question.


Quelles touches ?

--
Liu

Avatar
Christophe PEREZ
Le Sun, 25 Jan 2004 23:12:47 +0100, Qing Liu a écrit:

J'ai vu, mais ça ne m'apporte rien de plus, à moins que j'ai mal lu,
puisque justement ni xev, ni showkey, ni évidemment xbindkeys ne me


showkey -s ?


Oui.

renvoie le moindre code de touche pour les touches en question.


Quelles touches ?


3 touches en haut à droite du clavier, sous Windows, elles correspondent
à l'explorateur, le maileur, et l'arrêt du PC (bouton power qui, si
j'appuis plus de 5 secondes coupe tout).
+ Quasiment la touche "Fn", à part le switch écran portable / écran
externe (Fn+F4), mais à mon avis, celle là doit être interceptée
directement par le bios. Quoi que, elle, elle répond à showkey -s.


--
Christophe PEREZ
Écrivez moi sans _faute !


Avatar
Samuel Colin
Dans l'article ,
Christophe PEREZ a tapoté :

Désolé pour la réponse tardive, j'étais loin de tout réseau pendant quelques
jours.


Ah !! Là, tu dis quelque chose d'intéressant.
Et mon problème c'est que si je fais un cat /proc/acpi/event, ça ne
renvoie rien et reste bloqué dessus. CTRL+C pour en sortir.
Peut-être que j'ai là la preuve d'un défaut ?


Non, la lecture est bloquante, et tu lis quelque chose à chaque fois qu'il y
a un événement.

Pourtant, à part ça, tout le reste semble fonctionner, charge de
batterie etc... sauf la temperature qui est constamment indiquée à 75°C.

Si c'est un portable, ce n'est pas si surprenant (mais c'est quand même

chaud). 'Faudrait peut-être voir les réglages des ventilateurs.

Ben justement, rien. Mais peut-être est-ce justement en rapport avec le
fait que cette touche power ne renvoie pas de code ?


Possible, mais ça m'étonne un peu.

Dans le bios particulièrement succinct, j'ai juste une option APM qui est
à enable. Je dois changer ça ?

Je crois, oui. Pendant un moment, les portables avaient le double support

apm/acpi, et il fallait choisir l'un ou l'autre. Le fait de choisir apm doit
peut-être faire que tu n'observes aucune activité acpi.
Tu peux aussi faire dmesg pour voir ce qui est détecté au niveau acpi au boot.

Ben sur mon portable (je suis pas dessus, là) j'ai un événement "lid" qui
m'indique qu'on a appuyé sur le bouton de fermeture d'écran.


Ne renvoie rien non plus, mais me met l'écran en noir. Intercepté par le
bios ?

Je pense que oui. C'est souvent le cas quand c'est l'apm qui est activé.


Ça c'est intéressant aussi. Où pourrais-je trouver une doc sur les
différents événements possibles ?


Bonne question, à laquelle je n'ai aucune réponse. Si tu en trouves une, ça
m'intéresse aussi (au pire, il faudrait jeter un oeil aux specs acpi
publiées par Intel).

--
JH>J'ai un lecteur qui ne permet que de régler le line length,
JH> désolé pour vous si cela vous empêche de respirer.
Clickez <brain backup>, rebootez, et ça devrait marcher après.
-+- GM in <http://www.le-gnu.net> : Quote, quote, quote codec -+-


Avatar
Christophe PEREZ
Le Wed, 28 Jan 2004 09:25:55 +0000, Samuel Colin a écrit:

Désolé pour la réponse tardive, j'étais loin de tout réseau pendant quelques
jours.


Pas de mal ;-)

Non, la lecture est bloquante, et tu lis quelque chose à chaque fois qu'il y
a un événement.


J'ai cru comprendre ça ensuite...

Pourtant, à part ça, tout le reste semble fonctionner, charge de
batterie etc... sauf la temperature qui est constamment indiquée à 75°C.

Si c'est un portable, ce n'est pas si surprenant (mais c'est quand même

chaud).


Mais c'est à tout moment 75°. Démarrage, après un long temps
d'utilisation intensive, quelque soit la chaleur ambiante etc...

'Faudrait peut-être voir les réglages des ventilateurs.


Ah ! Où ça ? Côté Hard ? brrrr...

Ben justement, rien. Mais peut-être est-ce justement en rapport avec le
fait que cette touche power ne renvoie pas de code ?


Possible, mais ça m'étonne un peu.


De toutes les façons, rien ne s'ajoute à l'appui de cette(ces) touche(s)
dans /var/log/syslog.

Dans le bios particulièrement succinct, j'ai juste une option APM qui est
à enable. Je dois changer ça ?

Je crois, oui.



Ah ! Je vais essayer alors.

Pendant un moment, les portables avaient le double support
apm/acpi, et il fallait choisir l'un ou l'autre.


Je n'ai pas les 2 moi, hein.

Le fait de choisir apm doit
peut-être faire que tu n'observes aucune activité acpi.


Oui mais comme je n'y ai pas l'acpi...

Tu peux aussi faire dmesg pour voir ce qui est détecté au niveau acpi au boot.


# dmesg | grep -i acpi
BIOS-e820: 000000000f7d0000 - 000000000f7df000 (ACPI data)
BIOS-e820: 000000000f7df000 - 000000000f800000 (ACPI NVS)
ACPI: have wakeup address 0xc0001000
ACPI: RSDP (v000 ACPIAM ) @ 0x000f5520
ACPI: RSDT (v001 A M I OEMRSDT 0x10000313 MSFT 0x00000097) @ 0x0f7d0000
ACPI: FADT (v002 A M I OEMFACP 0x10000313 MSFT 0x00000097) @ 0x0f7d0200
ACPI: MADT (v001 A M I OEMAPIC 0x10000313 MSFT 0x00000097) @ 0x0f7d0390
ACPI: OEMB (v001 A M I AMI_OEM 0x10000313 MSFT 0x00000097) @ 0x0f7df040
ACPI: DSDT (v001 1ABHI 1ABHI016 0x00000016 INTL 0x02002026) @ 0x00000000
ACPI: Local APIC address 0xfee00000
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
ACPI: LAPIC (acpi_id[0x02] lapic_id[0x81] disabled)
ACPI: Skipping IOAPIC probe due to 'noapic' option.
Using ACPI for processor (LAPIC) configuration information
Kernel command line: auto BOOT_IMAGE$24-sws ro root05 quiet devfs=mount hdc=ide-scsi acpi=on noapic resume2=swap:/dev/hda8
ACPI: Subsystem revision 20031203
ACPI: IRQ9 SCI: Level Trigger.
ACPI: Interpreter enabled
ACPI: Using PIC for interrupt routing
ACPI: System [ACPI] (supports S0 S3 S4 (swsusp) S5)
ACPI: PCI Root Bridge [PCI0] (00:00)
ACPI: PCI Interrupt Routing Table [_SB_.PCI0._PRT]
ACPI: PCI Interrupt Routing Table [_SB_.PCI0.P0P2._PRT]
ACPI: Power Resource [URP1] (off)
ACPI: Power Resource [URP2] (off)
ACPI: Power Resource [FDDP] (off)
ACPI: Power Resource [LPTP] (off)
ACPI: Embedded Controller [EC0] (gpe 28)
ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 9 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LNKB] (IRQs *3 4 5 6 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 *9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 6 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 6 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6 7 9 *10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 11
ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 5
ACPI: PCI Interrupt Link [LNKC] enabled at IRQ 9
ACPI: PCI Interrupt Link [LNKH] enabled at IRQ 10
ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 3
PCI: Using ACPI for IRQ routing
PCI: if you experience problems, try using option 'pci=noacpi' or even 'acpi=off'
ACPI: Battery Slot [BAT0] (battery present)
ACPI: AC Adapter [AC0] (on-line)
ACPI: Processor [CPU1] (supports C1, 8 throttling states)
ACPI: Processor [CPU2] (supports C1, 8 throttling states)
ACPI: Thermal Zone [THRM] (75 C)
ACPI: Power Button (FF) [PWRF]
ACPI: Lid Switch [LID]
ACPI: Sleep Button (CM) [SLPB]

Tiens, j'aperçois les boutons :-)

Ben sur mon portable (je suis pas dessus, là) j'ai un événement "lid" qui
m'indique qu'on a appuyé sur le bouton de fermeture d'écran.


Ne renvoie rien non plus, mais me met l'écran en noir. Intercepté par le
bios ?



Ah !!!!
Je viens de passer mon clavier en PC104 (au lieu de PC105) dans
XF86Config-4 (parce que j'ai vu qu'avec la Flonix USB, ce bouton était
actif et mettait l'écran en veille, et que c'était la config de XFree86)

Je pense que oui. C'est souvent le cas quand c'est l'apm qui est activé.


En fait, non, je n'ai encore rien changé au bios, et maintenant, j'ai
bien des évènements dans /proc/acpi/event :
button/power PWRF 00000080 00000004
button/sleep SLPB 00000080 00000003
button/lid LID 00000080 00000005

Bonne question, à laquelle je n'ai aucune réponse. Si tu en trouves une, ça
m'intéresse aussi


C'est fou quand même. Sur l'acpi, on trouve quasiment la même doc sur
énormément de sites, mais ça ne va jamais plus loin dans la config
même de ses services.

(au pire, il faudrait jeter un oeil aux specs acpi publiées par Intel).


Bon courage ! ;-)

--
Christophe PEREZ
Écrivez moi sans _faute !



Avatar
Christophe PEREZ
Le Fri, 23 Jan 2004 21:43:49 +0100, Qing Liu a écrit:

/etc/acpi/events:
default


Une question :
Qu'est-ce que tu as là-dedans (/etc/acpi/events/default) stp ?

--
Christophe PEREZ
Écrivez moi sans _faute !

Avatar
Christophe PEREZ
Le Wed, 28 Jan 2004 10:44:44 -0400, Christophe PEREZ a écrit:

Dans le bios particulièrement succinct, j'ai juste une option APM qui est
à enable. Je dois changer ça ?

Je crois, oui.



Ah ! Je vais essayer alors.


Ça ne change strictement rien.

[...]
En fait, non, je n'ai encore rien changé au bios, et maintenant, j'ai
bien des évènements dans /proc/acpi/event :
button/power PWRF 00000080 00000004
button/sleep SLPB 00000080 00000003
button/lid LID 00000080 00000005


Bon, j'avance. J'ai mis :
-------/etc/acpi/events/power-------
event=button/power
action=/etc/acpi/power
-------/etc/acpi/events/lid-------
event=button/lid
action=/etc/acpi/lid
-------/etc/acpi/events/sleep-------
event=button/sleep
action=/etc/acpi/sleep

et :
-------/etc/acpi/lid-------
#!/bin/bash
echo lid >> /tmp/acpi
-------/etc/acpi/power-------
#!/bin/bash
echo power >> /tmp/acpi
-------/etc/acpi/sleep-------
#!/bin/bash
echo sleep >> /tmp/acpi

Ben, l'appui des boutons correspondants ne donne rien dans /tmp/acpi.
Les scripts /etc/acpi/* sont bien exécutables, mais pas les events, ce
n'est pas nécessaires ?

Je sens que je suis près du but, mais il semble me manquer encore un
petit quelque chose...

Merci.

--
Christophe PEREZ
Écrivez moi sans _faute !



Avatar
Samuel Colin
Dans l'article ,
Christophe PEREZ a tapoté :

Pourtant, à part ça, tout le reste semble fonctionner, charge de
batterie etc... sauf la temperature qui est constamment indiquée à 75°C.

Si c'est un portable, ce n'est pas si surprenant (mais c'est quand même

chaud).


Mais c'est à tout moment 75°. Démarrage, après un long temps
d'utilisation intensive, quelque soit la chaleur ambiante etc...

C'est un ventilateur très précis et pointilleux, dans ce cas ;-).


'Faudrait peut-être voir les réglages des ventilateurs.


Ah ! Où ça ? Côté Hard ? brrrr...

Non, toujours du côté de l'acpi. Par exemple, le réglage des zones thermiques:

:/proc/acpi/thermal_zone/TZ1$ cat trip_points
critical (S5): 93 C
passive: 91 C: tc1=1 tc2=2 tsp0 devices=0xc158b980
active[0]: 78 C: devices=0xc15f2880
active[1]: 72 C: devices=0xc15f29c0
active[2]: 67 C: devices=0xc15f2ac0
active[3]: 55 C: devices=0xc15f2bc0

Y'a toute une tripotée de fichiers à explorer dans /proc/acpi. Avec un
dictionnaire d'anglais à côté si on a du mal.

[dmesg]

Tiens, j'aperçois les boutons :-)

Et, chance, l'implémentation acpi dans ton bios n'a pas l'air buggée.


Je pense que oui. C'est souvent le cas quand c'est l'apm qui est activé.


En fait, non, je n'ai encore rien changé au bios, et maintenant, j'ai
bien des évènements dans /proc/acpi/event :
button/power PWRF 00000080 00000004
button/sleep SLPB 00000080 00000003
button/lid LID 00000080 00000005

Ben dans ce cas, c'était un problème de reconnaissance clavier.

Et l'option apm de ton bios doit signifier apm "en général" (contrairement à
l'ancien apm), et donc acpi.

En tout cas, tes problèmes ont l'air de se résoudre progressivement, c'est
motivant :-).

--
Au fait, tu sais quel animal a deux neurones ?
un freebsdiste avec un rat sur l'épaule ?

-+- K in GFA : L'animal de compagnie de Beastie -+-



3 4 5 6 7