Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#151 Le 10/08/2018, à 00:05

NicoApi73

Re : entraide pour erreurs pcieport en masse

J'ai fait un dernier test avant d'aller me coucher : j'ai toujours aspm=off et j'ai réactivé l'aer. Ben, pas de spam...

Il y a bien un lien avec l'aspm également

Bonne soirée

Hors ligne

#152 Le 10/08/2018, à 08:25

NicoApi73

Re : entraide pour erreurs pcieport en masse

NicoApi73 a écrit :
Naziel a écrit :

CAP_EX serait donc le registre pour l'AER.

Oui, mais c'est le seul lien que je n'arrive pas à faire

Bonjour,

Ca s'est vraiment la question qu'il me reste (en tout cas pour l'instant)

Bon, je progresse ...

Dans setpci, il y a :

·      If the register is a part of a PCI capability, you can  specify  the  name  of  the
              capability  to  get  the address of its first register. See the names starting with
              `CAP_' or `ECAP_' in the --dumpregs output

Le registre auquel on fait appel, fait partie de la capability CAP_EX, et ce doit être le 8ième registre.

Et voila pourquoi le .w dans la commande

setpci -v -d 8086:a114 CAP_EXP+0x8.w=0xe

·      Finally, you should append a width specifier .B, .W, or .L to choose how many bytes
              (1,  2,  or 4) should be transferred. The width can be omitted if you are referring
              to a register by its name and the width of the register is well known.

On transfert 2 octets (word)

Mais je ne sais toujours pas ce qu'il y a dans CAP_EX mad

Ca y est, j'ai compris, c'est défini dans /usr/include/linux/pci_regs.h, le registre en question avec un offset de 8!
Ce qui nous intéresse fait partie des capabilités

/* PCI Express capability registers */

CAP_EX

Il y a peut être à faire quelque chose sur l'ASPM :
Dans la même capability, il y a :

#define PCI_EXP_LNKCTL        16    /* Link Control */
#define  PCI_EXP_LNKCTL_ASPMC    0x0003    /* ASPM Control */
#define  PCI_EXP_LNKCTL_ASPM_L0S 0x0001    /* L0s Enable */
#define  PCI_EXP_LNKCTL_ASPM_L1  0x0002    /* L1 Enable */
#define  PCI_EXP_LNKCTL_RCB    0x0008    /* Read Completion Boundary */
#define  PCI_EXP_LNKCTL_LD    0x0010    /* Link Disable */
#define  PCI_EXP_LNKCTL_RL    0x0020    /* Retrain Link */
#define  PCI_EXP_LNKCTL_CCC    0x0040    /* Common Clock Configuration */
#define  PCI_EXP_LNKCTL_ES    0x0080    /* Extended Synch */
#define  PCI_EXP_LNKCTL_CLKREQ_EN 0x0100 /* Enable clkreq */
#define  PCI_EXP_LNKCTL_HAWD    0x0200    /* Hardware Autonomous Width Disable */
#define  PCI_EXP_LNKCTL_LBMIE    0x0400    /* Link Bandwidth Management Interrupt Enable */
#define  PCI_EXP_LNKCTL_LABIE    0x0800    /* Link Autonomous Bandwidth Interrupt Enable */

A voir si c'est le bon registre. Le shift est de 16 pour accéder à ce registre. Il faut voir la configuration possible sur ce registre (il est également sur 2 octets)

Ou encore

/* ASPM L1 PM Substates */

si c'est L1 qui ne va pas

Je n'ai pas le temps de m'en occuper pour l'instant.

Dernière modification par NicoApi73 (Le 10/08/2018, à 09:46)

Hors ligne

#153 Le 10/08/2018, à 22:46

NicoApi73

Re : entraide pour erreurs pcieport en masse

@Naziel :
J'ai continué sur l'aspm :
J'ai ça :

sudo setpci -v -d 8086:9d15 CAP_EXP+0xc.l
0000:00:1c.5 (cap 10 @40) @4c = 06724c13
sudo setpci -v -d 8086:9d15 CAP_EXP+0x10.w
0000:00:1c.5 (cap 10 @40) @50 = 0043

C'est la configuration ASPM de ma machine (bon, j'ai aussi le paramètre ASPM=off

Pourrais tu me donner le retour, sur ta machine de :

sudo setpci -v -d 8086:9c1a CAP_EXP+0xc.l
sudo setpci -v -d 8086:9c1a CAP_EXP+0x10.w

STP
Je cherche à voir s'il y a des différences de configuration. J'essaierai aussi sur la mienne sans le paramètre ASPM=off

Merci

Hors ligne

#154 Le 10/08/2018, à 22:50

Nuliel

Re : entraide pour erreurs pcieport en masse

~$ sudo setpci -v -d 8086:9c1a CAP_EXP+0xc.l
0000:00:1c.5 (cap 10 @40) @4c = 06323c12
~$ sudo setpci -v -d 8086:9c1a CAP_EXP+0x10.w
0000:00:1c.5 (cap 10 @40) @50 = 0043

et que dalle avec dmesg

Hors ligne

#155 Le 10/08/2018, à 23:01

NicoApi73

Re : entraide pour erreurs pcieport en masse

Naziel a écrit :

et que dalle avec dmesg

On ne fait que lire des registres wink ça ne risque pas de changer quoique ce soit.

Je pense que tu n'as pas d'erreur avec dmesg parce que tu n'es pas sur la même architecture, et donc ton pci bridge n'est pas le même. Pour moi, tu n'auras jamais d'erreur pcieport, sauf problème.

Arabi a bien des messages sur son ordi. Il est en kaby lake pour le processeur (qui est proche de sky lake) et un reliquat de  sky lake. Son module WIFI est un RTL8821AE.
Tous les autres que j'ai aidés sont en sky lake + rtl8723be

Dernière modification par NicoApi73 (Le 10/08/2018, à 23:02)

Hors ligne

#156 Le 10/08/2018, à 23:10

Nuliel

Re : entraide pour erreurs pcieport en masse

On ne fait que lire des registres wink

Ah oui, pas de égal devant, c'est vrai

Hors ligne

#157 Le 10/08/2018, à 23:20

NicoApi73

Re : entraide pour erreurs pcieport en masse

Je ne me rappelle plus, tu es en xenial?

Hors ligne

#158 Le 10/08/2018, à 23:20

Nuliel

Re : entraide pour erreurs pcieport en masse

Oui, 16.04.1 (noyaux 4.4, j'ai mis de côté les 4.15 et 4.14 qui me posent problème pour docker ou la carte wifi)

Dernière modification par Nuliel (Le 10/08/2018, à 23:23)

Hors ligne

#159 Le 10/08/2018, à 23:24

NicoApi73

Re : entraide pour erreurs pcieport en masse

ok, je regarderai demain quand j'aurai le temps le premier retour que tu m'as donné : Il y a de la conversion en binaire à faire un peu trop pour ce soir wink

Le deuxième est plus simple, en plus similaire au mien : ASPM L0 et L1 enable  et Common Clock Configuration

Bonne soirée

Dernière modification par NicoApi73 (Le 10/08/2018, à 23:26)

Hors ligne

#160 Le 10/08/2018, à 23:27

Nuliel

Re : entraide pour erreurs pcieport en masse

Je passerai bientôt en 18.04.1 (j'aimerais avoir un système qui ressemble pas à un champ de bataille pour la rentrée)

Bonne soirée

Dernière modification par Nuliel (Le 10/08/2018, à 23:27)

Hors ligne

#161 Le 11/08/2018, à 11:39

NicoApi73

Re : entraide pour erreurs pcieport en masse

Salut,

Il y a (pour l'instant) une incohérence chez moi :

sudo setpci -v -d 8086:9d15 CAP_EXP+0xc.l
0000:00:1c.5 (cap 10 @40) @4c = 06724c13

Par rapport à ce qui est défini dans pci_regs.h, il n'y a pas de raison que ce soit 06724c13, mais 06324c13 (ce qui est le cas chez toi). Sur ce quartet, seuls 2 bits sont utilisés, donc les valeurs possibles vont de 0 à 3. Si le masque est bien fait dans le code, ça ne devrait pas avoir de conséquence.

EDIT : je viens de faire l'essai en passant la valeur du registre à 06324c13. La commande d'écriture passe, sans erreur et dès que je le relis, il est à nouveau à 06724c13.
Soit il y a un problème sur le registre (spécifiquement sur ce bit là!), soit il y a quelque chose qui passe derrière et remet ce bit à 1.

Après, c'est peut être une fausse piste...

@Naziel : peux tu essayer l'inverse (sauve ton travail en cours, à cas où ça freeze) :

sudo setpci -v -d 8086:9c1a CAP_EXP+0xc.l=06723c12
dmesg -lerr
sudo setpci -v -d 8086:9c1a CAP_EXP+0xc.l

La dernière commande, c'est pour voir si le bit est repassé à 0 ou s'il reste à 1 (si la valeur hexa reste à 7, ou si elle repasse à 3). Entre temps, ça aura peut être généré des erreurs pcieport
FIN EDIT

Dernière modification par NicoApi73 (Le 11/08/2018, à 12:10)

Hors ligne

#162 Le 11/08/2018, à 17:58

NicoApi73

Re : entraide pour erreurs pcieport en masse

Naziel a écrit :

Il y a aussi ECAP_AER dans la liste de mes registres

Salut,

Je vais regarder ce point là également.

Cependant :

#define PCI_EXP_DEVCTL        8    /* Device Control */

Device control -> je suppose que ça fait référence au device qui est connecté sur ce port

#define PCI_EXT_CAP_ID_ERR    0x01    /* Advanced Error Reporting */

et

#define PCI_ERR_COR_STATUS    16    /* Correctable Error Status */

Je pense que ça fait référence au bridge...

Hors ligne

#163 Le 11/08/2018, à 18:00

Nuliel

Re : entraide pour erreurs pcieport en masse

@HP-desktop:~$ sudo setpci -v -d 8086:9c1a CAP_EXP+0xc.l=06723c12
[sudo] Mot de passe de : 
0000:00:1c.5 (cap 10 @40) @4c 06723c12
@HP-desktop:~$ dmesg -lerr
[    1.198902] acpi PNP0C0B:00: Setting initial power state
[    1.727597] [drm:intel_dp_link_training_channel_equalization [i915]] *ERROR* failed to train DP, aborting
[    1.737565] radeon 0000:0d:00.0: VCE init error (-22).
[    1.777431] [drm:intel_dp_link_training_channel_equalization [i915]] *ERROR* failed to train DP, aborting
[   17.376832] radeon 0000:0d:00.0: VCE init error (-22).
[   32.054532] radeon 0000:0d:00.0: VCE init error (-22).
[   43.371640] radeon 0000:0d:00.0: VCE init error (-22).
[   60.182555] radeon 0000:0d:00.0: VCE init error (-22).
[   95.162194] rtlwifi: IEEE80211_AMPDU_ERR for action 1330838840!!!!:
[   98.148948] rtlwifi: IEEE80211_AMPDU_ERR for action 1330838840!!!!:
[   98.179745] rtlwifi: IEEE80211_AMPDU_ERR for action 1330838840!!!!:
[   98.212252] rtlwifi: IEEE80211_AMPDU_ERR for action 1330838840!!!!:
[   99.149431] rtlwifi: IEEE80211_AMPDU_ERR for action 1330838840!!!!:
[  119.495962] rtlwifi: IEEE80211_AMPDU_ERR for action 1438334336!!!!:
[  119.510821] rtlwifi: IEEE80211_AMPDU_ERR for action 1438334264!!!!:
[  119.514762] rtlwifi: IEEE80211_AMPDU_ERR for action 1438334264!!!!:
[  119.551599] rtlwifi: IEEE80211_AMPDU_ERR for action 1438334264!!!!:
[  128.941291] rtlwifi: IEEE80211_AMPDU_ERR for action 1438334264!!!!:
[  128.944909] rtlwifi: IEEE80211_AMPDU_ERR for action 1438334264!!!!:
[  128.972814] rtlwifi: IEEE80211_AMPDU_ERR for action 1438334264!!!!:
@HP-desktop:~$ sudo setpci -v -d 8086:9c1a CAP_EXP+0xc.l
0000:00:1c.5 (cap 10 @40) @4c = 06323c12

Les erreurs sont pas graves, je les ai habituellement

Dernière modification par Nuliel (Le 11/08/2018, à 18:01)

Hors ligne

#164 Le 11/08/2018, à 18:10

xubu1957

Re : entraide pour erreurs pcieport en masse

Salut,

Vous aviez relevé ce cas > [Résolu]Une erreur wifi génère une très (trop) grande quantité de logs ?

Dernière modification par xubu1957 (Le 12/08/2018, à 07:57)


Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Résolu] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.                   Membre de Linux-Azur

En ligne

#165 Le 11/08/2018, à 19:05

NicoApi73

Re : entraide pour erreurs pcieport en masse

@Naziel :

@HP-desktop:~$ sudo setpci -v -d 8086:9c1a CAP_EXP+0xc.l
0000:00:1c.5 (cap 10 @40) @4c = 06323c12

Il te l'a remis à 3 ! Bon, pas sur que ce soit la meilleur piste, mais je ne sais pas l'expliquer.

@xubu : je regarde ça un peu plus tard

J'ai (encore progressé)
Je suis allé voir la capability ECAP_AER
J'y retrouve mes informations : le masque retporté dans l'erreur

Aug  1 23:01:22 nicolas-X541UJ kernel: [   32.695167] pcieport 0000:00:1c.5:   device [8086:9d15] error status/mask=00000001/00002000
nicolas@nicolas-X541UJ:~$ sudo setpci -v -d 8086:9d15 ECAP_AER+0x10.l
0000:00:1c.5 (ecap 0001 @100) @110 = 00000001
nicolas@nicolas-X541UJ:~$ sudo setpci -v -d 8086:9d15 ECAP_AER+0x14.l
0000:00:1c.5 (ecap 0001 @100) @114 = 00002000

et l'ID :

Aug  1 23:01:22 nicolas-X541UJ kernel: [   32.695159] pcieport 0000:00:1c.5: AER: Corrected error received: id=00e5
nicolas@nicolas-X541UJ:~$ sudo setpci -v -d 8086:9d15 ECAP_AER+0x34.l
0000:00:1c.5 (ecap 0001 @100) @134 = 000000e5

Le masque des erreurs AER autorise toutes les erreurs. Dans ce cas, j'ai mes erreurs qui apparaissent :

nicolas@nicolas-X541UJ:~$ sudo setpci -v -d 8086:9d15 ECAP_AER+0x2c.l
0000:00:1c.5 (ecap 0001 @100) @12c = 00000007

Des que je masque les erreurs Correctable, le flot s'arrête :

nicolas@nicolas-X541UJ:~$ sudo setpci -v -d 8086:9d15 ECAP_AER+0x2c.l=0x06
0000:00:1c.5 (ecap 0001 @100) @12c 00000006

Donc c'est bien à cet endroit qu'il faut masquer l'erreur pour être au plus prêt de la source (qu'on ne connaît toujours pas)
Par conséquent, tu avais raison, Naziel, sur le fait qu'il fallait aussi regarder cette capability (c'est un ensemble de registres)

Dernière modification par NicoApi73 (Le 11/08/2018, à 19:18)

Hors ligne

#166 Le 11/08/2018, à 19:24

NicoApi73

Re : entraide pour erreurs pcieport en masse

@xubu : j'ai regardé ton lien, c'est une autre erreur :

rtlwifi:rtl_op_ampdu_action():<0-0> IEEE80211_AMPDU_ERR!!!!:

Celle-ci a l'air d'être remontée par le driver du rtl8723be et non pas par le bridge pcie.

Est elle lié à pcieport..., je ne sais pas te le dire wink

Dernière modification par NicoApi73 (Le 11/08/2018, à 19:47)

Hors ligne

#167 Le 11/08/2018, à 19:27

xubu1957

Re : entraide pour erreurs pcieport en masse

@NicoApi73

C'est trop technique pour moi, je préfère signaler, tu fais le tri. wink


Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Résolu] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.                   Membre de Linux-Azur

En ligne

#168 Le 11/08/2018, à 19:32

NicoApi73

Re : entraide pour erreurs pcieport en masse

xubu1957 a écrit :

@NicoApi73

C'est trop technique pour moi, je préfère signaler, tu fais le tri. wink

Ma remarque n'était pas négative, C'était juste pour te dire que je l'ai regardé avec intérêt, que l'intérêt persiste, mais pour l'instant, je ne sais pas si c'est lié aux erreurs que j'ai. Par contre, Naziel a cette erreur sur sa machine wink

Hors ligne

#169 Le 11/08/2018, à 19:37

NicoApi73

Re : entraide pour erreurs pcieport en masse

En fait, les opérations que l'on fait actuellement sont faites à très bas niveau, entre le SW et le HW. Dans les composants il y a des registres pour le paramétrage et pour lire/écrire des informations. Là, on est sur les registres de paramètrage (et de reporting). Désolé, pour l'instant je ne sais pas trouver une analogie pour te l'expliquer plus simplement.

Quand tu fais changer des paramètres sur le WIFI par exemple, au final, il y a probablement des registres du module WIFI qui sont modifiés. Par contre tu travailles à un certain niveau d'abstraction qui masque tout ça.

Pour ce qui nous concerne, en passant un paramètre au noyau (en tout cas pour les paramètres qu'on utilise), plusieurs modules sont impactés. Donc, il faut descendre à un niveau plus bas pour mieux cibler ce qu'on veut faire. Ici, en l’occurrence c'est d'arrêter le flot d'erreurs au plus proche de la source (qui reste toujours inconnue)

Dernière modification par NicoApi73 (Le 11/08/2018, à 19:51)

Hors ligne

#170 Le 11/08/2018, à 20:48

NicoApi73

Re : entraide pour erreurs pcieport en masse

@Naziel :

Pourrais tu me donner le résultat que tu as pour ces 2 commandes STP

sudo setpci -v -d 8086:9c1a ECAP_AER+0x10.l
sudo setpci -v -d 8086:9c1a ECAP_AER+0x14.l

Pour la première, je m'attends à voir 00000000
Pour la seconde, probablement 00002000

Hors ligne

#171 Le 11/08/2018, à 21:36

Nuliel

Re : entraide pour erreurs pcieport en masse

Eh bien non, ça me retourne deux fois la même chose:

setpci: 0000:00:1c.5: Extended capability 0001 not found

(mais y a t'il de l'aer sur ma machine?)

Dernière modification par Nuliel (Le 11/08/2018, à 21:37)

Hors ligne

#172 Le 11/08/2018, à 21:43

NicoApi73

Re : entraide pour erreurs pcieport en masse

Je te trouverai le registre demain pour savoir si tu as ça : je ne suis plus à ça près big_smile

Hors ligne

#173 Le 11/08/2018, à 21:50

Nuliel

Re : entraide pour erreurs pcieport en masse

J'avoue que je n'arrive pas à comprendre grand chose, ça reste du chinois pour moi

Hors ligne

#174 Le 12/08/2018, à 00:18

NicoApi73

Re : entraide pour erreurs pcieport en masse

Précise ce que tu ne comprends pas (pas dans les détails), j'essaierai de te l'expliquer. Je travaille beaucoup avec le header pci_regs.h et la liste des registres et capabilities données par sudo setpci --dumpregs. Le jeu consiste à faire le lien entre les noms de l'un et les noms de l'autre. Il doit y avoir de la doc, probablement sur le kernel, qui permet de faire ce lien, mais les noms donnés sont jusqu'à présent suffisamment explicites

Hors ligne

#175 Le 12/08/2018, à 09:16

NicoApi73

Re : entraide pour erreurs pcieport en masse

Salut,

Je n'ai pas trouvé (pour l'instant) de registre listant ce que le port sait faire. Vu le retour que tu as, à priori, je dirai que tu n'as pas d'AER sur ce port et c'est pour ça que tu n'as pas l'erreur pcieport...

Hors ligne