[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Migliorare Debian e il software libero: trovare bug con valgrind e scrivere le patch



On 28/11/20 01:51, Sabrewolf wrote:

Il 24/11/20 21:32, Davide Prina ha scritto:
Ho installato il pacchetto piglit

Se l'obiettivo è il debugging e il software è open source sarebbe meglio
compilare i sorgenti con le opzioni che abilitano debug e profiling ed
eseguire i binari con gdb. I pacchetti precompilati quasi sempre sono
"strippati", cioè senza i simboli di debug.

puoi anche aggiungere questa riga in /etc/apt/sources.list:
deb https://deb.debian.org/debian-debug/ testing-debug main

e installarti i simboli di debug che ti servono e risolvi il problema senza dover ricompilare.

Lo scopo non è il debugging, ma è cercare di migliorare i software presenti in Debian, vedendo se possibile rintracciare problematiche, che potrebbero essere inerenti al proprio sistema o all'uso che si fa di determinati software.

Per esempio le due segnalazioni che avevo indicato nella mail precedente hanno permesso di trovare due bug che sono stati risolti entrambi, penso anche grazie alle mie segnalazioni, con possibile patch allegata.

Poi:
* la prima era davvero banale e con valgrint ho potuto vedere il punto di allocazione e il punto che causava l'uso della variabile non inizializzata; * la seconda era un po' più ostica, anche perché pensavo ad un problema dovuto ai valori di inizializzazione dell'esempio che poi venivano passati ad un numero abbastanza elevato di funzioni di diverse librerie. Invece il problema risiedeva totalmente nella libreria indicata ed era dovuto ad una patch Debian messa per far funzionare quella libreria con Hurd.

Le variabili di memoria non inizializzate in c/c++ non sono un bug se
non causano comportamenti del programma imprevisti o vulnerabilità
sfruttabili.

Le variabili non inizializzate in C/C++ sono un bug e un problema se vengono usate non inizializzate.

Per esempio nella segnalazione di clinfo veniva usata una variabile non inizializzata e questa faceva stampare dei caratteri a caso (almeno rispetto alla mia configurazione) che, nella maggior parte dei casi, faceva andare in crash piglit quando usava clinfo per raccogliere le info del proprio sistema.

Ciao
Davide
--
Database: http://www.postgresql.org
GNU/Linux User: 302090: http://counter.li.org
Non autorizzo la memorizzazione del mio indirizzo su outlook



Reply to: