IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

Crash sous Aarch64


Sujet :

C++

  1. #1
    Membre éclairé
    Avatar de alpha_one_x86
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 411
    Par défaut Crash sous Aarch64
    Bonjour,

    J'ai un crash (en pur et gdb aussi), voila ce que me dit valgrind:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ==22274== Invalid read of size 8
    ==22274==    at 0x591664: CatchChallenger::PreparedDBQueryLogin::initDatabaseQueryLogin(CatchChallenger::DatabaseBase::DatabaseType const&) (PreparedDBQuery.cpp:198)
    ==22274==  Address 0xffeffc661 is on thread 1's stack
    ==22274==  143 bytes below stack pointer
    Le code est la: https://github.com/alphaonex86/Catch...Query.cpp#L198
    Je ne comprends pas ce crash car sous x86 et ARMv7, tout est clean, inclut avec valgrind et Grsec+PaX.
    Je teste avec ubuntu64-16.04lts-mate-odroid-c2-20160525, qui embarque gcc 5.3, j'ai aussi tester avec la maj en gcc 5.4.

    Cordialement,

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 146
    Billets dans le blog
    4
    Par défaut
    C'est étonament que ça compile, normalement tu ne peux pas déclarer de variables dans un case de switch sans y mettre d'accolades {}
    Il s'agit d'une appli multithread ? Je dirais qu'un autre thread corrompt la stack de ton thread 1 mentionné ici, mais le problème n'a rien à voir avec ce thread à priori : bonne chance
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Membre éclairé
    Avatar de alpha_one_x86
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 411
    Par défaut
    Non, mono-thread, confirmé par gdb, aucun thread n'est créé

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 146
    Billets dans le blog
    4
    Par défaut
    Ah alors je vois pas, c'est d'autant plus chelou.
    Si tu le lances, le debugger n'arrive pas à intercepter l'exception avant qu'elle se produise et s'arrêter ? Il faudrait alors jeter un oeil à la mémoire, stack etc pour voir si quelque chose d'anormal s'y trouve.
    Si par hasard/chance ça survient toujours à la même adresse, ça peut faciliter les investigations.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  5. #5
    Membre éclairé
    Avatar de alpha_one_x86
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 411
    Par défaut
    Le bug est reproduisible et systématique.
    Gdb detecte bien le probléme, valgrind aussi et la corruption de stack.

    L'architecture arm64 étant nouvelle, et le code étant propre, je suspecte un bug dans gcc sur arm64.

Discussions similaires

  1. visual studio crashe sous l'éxception 0xc0000005
    Par sidisadmir dans le forum Visual Studio
    Réponses: 0
    Dernier message: 30/07/2015, 06h59
  2. [WD17] crash sous windows 7
    Par doji_lemaitre dans le forum WinDev
    Réponses: 3
    Dernier message: 02/02/2013, 11h44
  3. Remonter tomcat en cas de crash sous linux
    Par _skip dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 03/07/2009, 15h25
  4. Réponses: 3
    Dernier message: 08/11/2005, 19h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo