ygrek / mldonkey

cross-platform multi-network p2p daemon (previously at http://mldonkey.sourceforge.net/)
Other
247 stars 46 forks source link

Segment violation error running master build #85

Closed aclbros closed 2 months ago

aclbros commented 2 years ago

Hello,

I'm having this error running mlnet after compiling from master:

./configure --disable-multinet --disable-gd
./gmake
./mlnet

2022/10/07 16:44:41 [cO] Starting MLDonkey 3.1.7 ...
2022/10/07 16:44:41 [cO] Language ES, locale UTF-8, ulimit for open files 1024
2022/10/07 16:44:41 [cO] raised ulimit for open files from 1024 to 1048576
2022/10/07 16:44:41 [cO] MLDonkey is working in /home/jose/.mldonkey

2022/10/07 16:44:41 [cO] creating new MLDonkey base directory in /home/jose/.mldonkey

2022/10/07 16:44:41 [cO] loaded language resource file
2022/10/07 16:44:41 [DNS] Resolving [miniyo] ...
Violación de segmento

I'm running Debian 11 bullseye, and mldonkey was compiled with ocaml 4.02.0.

Thanks in advance.

ygrek commented 2 years ago

need more information https://mldonkey.sourceforge.net/Bugs

ygrek commented 2 years ago

(actually that page doesn't say but in addition to all the sysinfo etc please run it as gdb ./mlnet and then do thread apply all bt after it segfaults)

aclbros commented 1 year ago

Hello,

mlnet stops after segmentation fault, so I cannot run sysinfo and the rest of the commands.

This is the result from gdb:

> gdb ./mlnet

Reading symbols from ./mlnet...
(gdb) run
Starting program: /home/jose/mldonkey/mldonkey-3.1.7-2/mlnet
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
2022/10/08 13:28:49 [cO] Starting MLDonkey 3.1.7 ...
2022/10/08 13:28:49 [cO] Language ES, locale UTF-8, ulimit for open files 1024
2022/10/08 13:28:49 [cO] raised ulimit for open files from 1024 to 1048576
2022/10/08 13:28:49 [cO] MLDonkey is working in /home/jose/.mldonkey

2022/10/08 13:28:49 [cO] creating new MLDonkey base directory in /home/jose/.mldonkey

2022/10/08 13:28:49 [Gettext] Loading language resource mlnet_strings.es_ES.UTF-8
2022/10/08 13:28:49 [cO] loaded language resource file
2022/10/08 13:28:49 [DNS] Resolving [miniyo] ...

Program received signal SIGSEGV, Segmentation fault.
0x007f53d0 in CryptoPP::PentiumOptimized::Subtract (C=<error reading variable: Cannot access memory at address 0xcef3ba7c>, A=<error reading variable: Cannot access memory at address 0xcef3ba80>,
    B=<error reading variable: Cannot access memory at address 0xcef3ba84>, N=<error reading variable: Cannot access memory at address 0xcef3ba88>) at src/utils/lib/CryptoPP.cc:2740
2740            AddPrologue
(gdb) thread apply all bt

Thread 1 (Thread 0xb7a66680 (LWP 4343) "mlnet"):
#0  0x007f53d0 in CryptoPP::PentiumOptimized::Subtract (C=<error reading variable: Cannot access memory at address 0xcef3ba7c>, A=<error reading variable: Cannot access memory at address 0xcef3ba80>, B=<error reading variable: Cannot access memory at address 0xcef3ba84>, N=<error reading variable: Cannot access memory at address 0xcef3ba88>) at src/utils/lib/CryptoPP.cc:2740
Backtrace stopped: Cannot access memory at address 0xcef3ba78
(gdb) q
A debugging session is active.

        Inferior 1 [process 4343] will be killed.

Quit anyway? (y or n) y

Thank you.

ygrek commented 1 year ago

mlnet stops after segmentation fault, so I cannot run sysinfo and the rest of the commands.

right. what OS/hardware is this and can you show full output from ./configure please?

aclbros commented 1 year ago

Hello,

OS is Debian 11 bullseye (i386) in a Asus Eee Pc Netbook.

Output from lshw:

H/W path               Device     Class       Description
=========================================================
                                  system      1005HA (To Be Filled By O.E.M.)
/0                                bus         1005HA
/0/0                              memory      64KiB BIOS
/0/4                              processor   Intel(R) Atom(TM) CPU N270   @ 1.60GHz
/0/4/5                            memory      24KiB L1 cache
/0/4/6                            memory      512KiB L2 cache
/0/4/1.1                          processor   Logical CPU
/0/4/1.2                          processor   Logical CPU
/0/18                             memory      1GiB System Memory
/0/18/0                           memory      1GiB DIMM SDRAM Synchronous
/0/100                            bridge      Mobile 945GSE Express Memory Controller Hub
/0/100/2                          display     Mobile 945GSE Express Integrated Graphics Controller
/0/100/2.1                        display     Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller
/0/100/1b                         multimedia  NM10/ICH7 Family High Definition Audio Controller
/0/100/1c                         bridge      NM10/ICH7 Family PCI Express Port 1
/0/100/1c.1                       bridge      NM10/ICH7 Family PCI Express Port 2
/0/100/1c.1/0          wlp2s0     network     AR9285 Wireless Network Adapter (PCI-Express)
/0/100/1c.3                       bridge      NM10/ICH7 Family PCI Express Port 4
/0/100/1c.3/0          enp1s0     network     AR8132 Fast Ethernet
/0/100/1d                         bus         NM10/ICH7 Family USB UHCI Controller #1
/0/100/1d/1            usb2       bus         UHCI Host Controller
/0/100/1d.1                       bus         NM10/ICH7 Family USB UHCI Controller #2
/0/100/1d.1/1          usb3       bus         UHCI Host Controller
/0/100/1d.2                       bus         NM10/ICH7 Family USB UHCI Controller #3
/0/100/1d.2/1          usb4       bus         UHCI Host Controller
/0/100/1d.3                       bus         NM10/ICH7 Family USB UHCI Controller #4
/0/100/1d.3/1          usb5       bus         UHCI Host Controller
/0/100/1d.7                       bus         NM10/ICH7 Family USB2 EHCI Controller
/0/100/1d.7/1          usb1       bus         EHCI Host Controller
/0/100/1d.7/1/2                   multimedia  USB 2.0 Camera
/0/100/1e                         bridge      82801 Mobile PCI Bridge
/0/100/1f                         bridge      82801GBM (ICH7-M) LPC Interface Bridge
/0/100/1f.2            scsi0      storage     82801GBM/GHM (ICH7-M Family) SATA Controller [AHCI mode]
/0/100/1f.2/0.0.0      /dev/sda   disk        240GB KINGSTON SA400S3
/0/100/1f.2/0.0.0/1    /dev/sda1  volume      222GiB EXT4 volume
/0/100/1f.2/0.0.0/2    /dev/sda2  volume      975MiB Extended partition
/0/100/1f.2/0.0.0/2/5  /dev/sda5  volume      975MiB Linux swap volume
/0/1                              system      PnP device PNP0c01
/0/2                              system      PnP device PNP0b00
/0/3                              input       PnP device PNP0303
/0/5                              generic     PnP device SYN0a13
/0/6                              system      PnP device PNP0c02
/0/7                              system      PnP device PNP0c02
/0/8                              system      PnP device PNP0c02
/0/9                              system      PnP device PNP0c01

This is the output from ./configure: mldonkey_configure_output.txt

Thank you.

HinTak commented 1 year ago

It looks to be crashing at "CryptoPP::PentiumOptimized::Subtract", so you should post your /proc/cpuinfo , I think.

aclbros commented 1 year ago

Hello,

This is the output of cat /proc/cpuinfo:


processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 28
model name  : Intel(R) Atom(TM) CPU N270   @ 1.60GHz
stepping    : 2
microcode   : 0x212
cpu MHz     : 1599.927
cache size  : 512 KB
physical id : 0
siblings    : 2
core id     : 0
cpu cores   : 1
apicid      : 0
initial apicid  : 0
fdiv_bug    : no
f00f_bug    : no
coma_bug    : no
fpu     : yes
fpu_exception   : yes
cpuid level : 10
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon pebs bts cpuid aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 xtpr pdcm movbe lahf_lm dtherm
bugs        :
bogomips    : 3199.85
clflush size    : 64
cache_alignment : 64
address sizes   : 32 bits physical, 32 bits virtual
power management:

processor   : 1
vendor_id   : GenuineIntel
cpu family  : 6
model       : 28
model name  : Intel(R) Atom(TM) CPU N270   @ 1.60GHz
stepping    : 2
microcode   : 0x212
cpu MHz     : 1599.928
cache size  : 512 KB
physical id : 0
siblings    : 2
core id     : 0
cpu cores   : 1
apicid      : 1
initial apicid  : 1
fdiv_bug    : no
f00f_bug    : no
coma_bug    : no
fpu     : yes
fpu_exception   : yes
cpuid level : 10
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon pebs bts cpuid aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 xtpr pdcm movbe lahf_lm dtherm
bugs        :
bogomips    : 3199.85
clflush size    : 64
cache_alignment : 64
address sizes   : 32 bits physical, 32 bits virtual
power management:
´´´

Thank you.
HinTak commented 1 year ago

Atom is not Pentium so that might be the problem... it might be using pentium specific instructions not supported on Atom . That's my guess.

ygrek commented 2 months ago

that makes sense, the workaround is to ./configure --disable-donkeysui