• trap invalid opcode

    From Acn@1:103/705 to All on Tue Apr 27 02:48:04 2021
    Hi,

    I've moved my Synchronet installation of my BBS (Imzadi Box) from a i5-based Lenovo m92p Tiny to an old IGEL ThinClient, which uses a "VIA Nano U3100" CPU.

    Basically everything is working (as expected, as it is Linux), I copied the system + sbbs over and reapplied GRUB to make the SSD bootable again (I changed the partition scheme and the GRUB implementation as the IGEL does not use UEFI).

    The only problem I'm facing right now is that Synchronet cannot deliver Internet E-Mails via SMTP.

    It is posting this message to my syslog:

    Apr 27 11:26:39 box kernel: [159793.588139] traps: sbbs/sendMail[13754] trap invalid opcode ip:7faa23f5a9be sp:7faa0bff85a0 error:0 in libsbbs.so[7faa23af0000+50d000]

    This now happens every time sbbs is started, so I cannot bring up my BBS at the moment.

    I tried to re-compile SBBS (3.18b) by running "cleanall.sh" in /sbbs/repo/src and running
    make RELEASE=1 SYMLINK=1 SBBSUSER=bbs SBBSGRUP=bbs SBBSDIR=/sbbs USE_DOSEMU=1 TAG=sbbs318b
    in the directory with the GNUmakefile.
    The files seem to be recompiled and as the symlinks are still in place, should also be found again.

    But the error persists...

    Do you have any idea?

    Thank you!

    Regards,
    Anna
    --- SBBSecho 3.14-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From acn@1:103/705 to Acn on Tue Apr 27 17:57:20 2021
    Hi,

    Just to add as an information:
    The BBS is running again, but only because the messages are now considered as being "in transit":
    SEND Message #xxx from Imzadi Box to xxx@xxx.xxx - in transit

    Regards,
    Anna

    ---
    ï¿­ Synchronet ï¿­ Imzadi Box -*- box.imzadi.de
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Digital Man@1:103/705 to Acn on Tue Apr 27 11:13:48 2021
    Re: trap invalid opcode
    By: Acn to All on Tue Apr 27 2021 02:48 am

    Hi,

    I've moved my Synchronet installation of my BBS (Imzadi Box) from a i5-based Lenovo m92p Tiny to an old IGEL ThinClient, which uses a "VIA Nano U3100" CPU.

    Basically everything is working (as expected, as it is Linux), I copied the system + sbbs over and reapplied GRUB to make the SSD bootable again (I changed the partition scheme and the GRUB implementation as the IGEL does not use UEFI).

    The only problem I'm facing right now is that Synchronet cannot deliver Internet E-Mails via SMTP.

    It is posting this message to my syslog:

    Apr 27 11:26:39 box kernel: [159793.588139] traps: sbbs/sendMail[13754] trap invalid opcode ip:7faa23f5a9be sp:7faa0bff85a0 error:0 in libsbbs.so[7faa23af0000+50d000]

    This now happens every time sbbs is started, so I cannot bring up my BBS at the moment.

    I tried to re-compile SBBS (3.18b) by running "cleanall.sh" in /sbbs/repo/src and running
    make RELEASE=1 SYMLINK=1 SBBSUSER=bbs SBBSGRUP=bbs SBBSDIR=/sbbs USE_DOSEMU=1 TAG=sbbs318b
    in the directory with the GNUmakefile.
    The files seem to be recompiled and as the symlinks are still in place, should also be found again.

    But the error persists...

    Do you have any idea?

    Double check that your version information (logged and displayed from "System Information" menu in the terminal server) says that it was recompiled today.

    It does sound like the binaries are possibly being built for the wrong platform, so if a cleanall.sh doesn't do it, I then try a fresh clone and build of the repo (into a new directory) - just to be sure.
    --
    digital man

    Synchronet "Real Fact" #116:
    Synchronet v1a r5 (for MS-DOS) was released on February 19, 1992
    Norco, CA WX: 57.5øF, 59.0% humidity, 0 mph WSW wind, 0.00 inches rain/24hrs --- SBBSecho 3.14-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From acn@1:103/705 to Digital Man on Tue Apr 27 22:17:48 2021
    Hallo dm,

    Double check that your version information (logged and displayed from "System Information" menu in the terminal server) says that it was recompiled today.

    It says so:
    Synchronet BBS for Linux Version 3.18
    Revision B Apr 27 2021 11:15 SMBLIB 2.61 GCC 8.3.0
    Copyright 2020 Rob Swindell - http://www.synchro.net
    JavaScript-C 1.8.5 2011-03-31
    Linux 4.19.0-16-amd64 x86_64

    It does sound like the binaries are possibly being built for the wrong platform, so if a cleanall.sh doesn't do it, I then try a fresh clone and build of the repo (into a new directory) - just to be sure.

    Okay, I'll try that tomorrow.
    Do you have a tip on how to merge the "new" and the "old" repo directories into a working SBBS installation?

    Thank you!

    Regards,
    Anna

    ---
    ï¿­ Synchronet ï¿­ Imzadi Box -*- box.imzadi.de
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Digital Man@1:103/705 to acn on Tue Apr 27 16:39:18 2021
    Re: trap invalid opcode
    By: acn to Digital Man on Tue Apr 27 2021 10:17 pm

    Hallo dm,

    Double check that your version information (logged and displayed from "System Information" menu in the terminal server) says that it was recompiled today.

    It says so:
    Synchronet BBS for Linux Version 3.18
    Revision B Apr 27 2021 11:15 SMBLIB 2.61 GCC 8.3.0
    Copyright 2020 Rob Swindell - http://www.synchro.net
    JavaScript-C 1.8.5 2011-03-31
    Linux 4.19.0-16-amd64 x86_64

    Okay, then I'd start look at possibly upgrading the compiler (GCC) to the latest and greatest, as it sounds like it's not generating the right code for your processor.

    It does sound like the binaries are possibly being built for the wrong platform, so if a cleanall.sh doesn't do it, I then try a fresh clone and build of the repo (into a new directory) - just to be sure.

    Okay, I'll try that tomorrow.
    Do you have a tip on how to merge the "new" and the "old" repo directories into a working SBBS installation?

    You can clone the repo anywhere you like. It doesn't *have* to be /sbbs/repo. But if you don't have any changes in your repo, you could simply rename the "repo" dir to "oldrepo" and then clone again using the steps here:
    https://wiki.synchro.net/howto:git#clone

    But that'll upgrade you to v3.19a. Not sure if you're ready/wanting to do that yet.
    --
    digital man

    Synchronet/BBS Terminology Definition #79:
    Sysop = System Operator
    Norco, CA WX: 65.2øF, 47.0% humidity, 13 mph NNE wind, 0.00 inches rain/24hrs --- SBBSecho 3.14-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From deon@1:103/705 to Acn on Wed Apr 28 11:13:26 2021
    Re: trap invalid opcode
    By: Acn to All on Tue Apr 27 2021 02:48 am

    Hi Anna,

    Apr 27 11:26:39 box kernel: [159793.588139] traps: sbbs/sendMail[13754] trap invalid opcode ip:7faa23f5a9be sp:7faa0bff85a0 error:0 in libsbbs.so[7faa23af0000+50d000]

    I have the same problem, but normally a re-compile fixes it.

    Apr 24 11:32:13 d-1-4 kernel: [131379.887980] traps: sbbs/webServer[22612] trap invalid opcode ip:7f5d07108343 sp:7f5d019179e0 error:0
    Apr 24 11:10:11 d-1-4 kernel: [130058.013259] in libsbbs.so[7f93fddec000+52e000]

    I use SBBS in a docker container, so my docker image is built on my XEON server.

    I've moved SBBS onto an AMD G-T40E and it aborts when starting.

    I just redirect my docker build to build on the G-T40E and all is good - but takes longer (about an hour compared to 7mins) :(.

    Your welcome to try my docker image, I've been using SBBS under docker for over 12 months now and it makes for an easy update.

    ...ëîåï

    ... Renegade Tagline!! We're tired of Being Kidnapped!!! REBEL!!!!!

    ---
    þ Synchronet þ Alterant | an SBBS in Docker on Pi!
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From acn@1:103/705 to Digital Man on Wed Apr 28 09:46:24 2021
    Hi dm,

    You can clone the repo anywhere you like. It doesn't *have* to be /sbbs/repo. But if you don't have any changes in your repo, you could simply rename the "repo" dir to "oldrepo" and then clone again using the steps here: https://wiki.synchro.net/howto:git#clone

    But that'll upgrade you to v3.19a. Not sure if you're ready/wanting to do that yet.

    I cloned the repo according to the commands in the main GNUmakefile and switched to the 318b tag.

    I just made the mistake to use "make install RELEASE=1 SYMLINK=1 SBBSUSER=bbs SBBSGRUP=bbs SBBSDIR=/sbbs USE_DOSEMU=1 TAG=sbbs318b" afterwards, which indeed recompiled everything but overwrote eg. the ctrl directory with the default settings files.
    I guess, I have to re-read the wiki pages several times until I understand how all this compilation/installation/upgrade process works as it is not that easy, even given that I'm a Linux user for over 20 years now and studied computer sciences...

    But thank you for your help, it is now working again!!

    I guess that the problem with "cleanall.sh" is the following:
    It is only deleting the resulting binary files, but leaves the cache files etc. that "configure" created in place!
    This way, all the "findings" that configure ...well... "found" ... are still there and so maybe some CFLAGS etc. are not reconfigured.

    Maybe the deletion of "configure" created files could be added to the "make clean" targets?

    Regards,
    Anna

    ---
    ï¿­ Synchronet ï¿­ Imzadi Box -*- box.imzadi.de
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From acn@1:103/705 to deon on Wed Apr 28 09:49:14 2021
    Hi deon,

    Your welcome to try my docker image, I've been using SBBS under docker for over 12 months now and it makes for an easy update.

    Thank you for this idea, but I don't want to start with docker, as in my opinion it adds another layer of complexity that I don't want to have.
    Most docker-users will say that it makes stuff so much easier, but I would like to avoid it and stick to VMs, bare-metal hardware and the old school way of breaking things :)

    Regards,
    Anna

    ---
    ï¿­ Synchronet ï¿­ Imzadi Box -*- box.imzadi.de
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Digital Man@1:103/705 to acn on Wed Apr 28 12:43:58 2021
    Re: trap invalid opcode
    By: acn to Digital Man on Wed Apr 28 2021 09:46 am

    Hi dm,

    You can clone the repo anywhere you like. It doesn't *have* to be /sbbs/repo. But if you don't have any changes in your repo, you could simply rename the "repo" dir to "oldrepo" and then clone again using the steps here: https://wiki.synchro.net/howto:git#clone

    But that'll upgrade you to v3.19a. Not sure if you're ready/wanting to do that yet.

    I cloned the repo according to the commands in the main GNUmakefile and switched to the 318b tag.

    I just made the mistake to use "make install RELEASE=1 SYMLINK=1 SBBSUSER=bbs SBBSGRUP=bbs SBBSDIR=/sbbs USE_DOSEMU=1 TAG=sbbs318b" afterwards, which indeed recompiled everything but overwrote eg. the ctrl directory with the default settings files.

    Sounds like you used the install/GNUmakefile. I did not suggest you do that. The "main GNUmakefile" is src/sbbs3/GNUmakefile and it won't overwrite anything in your ctrl directory.

    But thank you for your help, it is now working again!!

    I guess that the problem with "cleanall.sh" is the following:
    It is only deleting the resulting binary files, but leaves the cache files etc. that "configure" created in place!
    This way, all the "findings" that configure ...well... "found" ... are still there and so maybe some CFLAGS etc. are not reconfigured.

    Maybe the deletion of "configure" created files could be added to the "make clean" targets?

    Yeah, that can be done. It's the 3rd party libs (e.g. libmozjs) that use configure, not sbbs.
    --
    digital man

    Rush quote #81:
    Catch the witness, catch the wit, catch the spirit, catch the spit
    Norco, CA WX: 81.2øF, 15.0% humidity, 1 mph S wind, 0.00 inches rain/24hrs
    --- SBBSecho 3.14-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Mike Powell@1:103/705 to ACN on Wed Apr 28 15:26:00 2021
    ... and the old school way of breaking things :)

    When it comes to breaking things, the tried and true methods are always the best. :)


    * SLMR 2.1a * "Buck McCoy?!? He was bigger than opium!"

    ---
    þ Synchronet þ CAPCITY2 * capcity2.synchro.net * Telnet/SSH:2022/Rlogin/HTTP
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From acn@1:103/705 to Digital Man on Thu Apr 29 09:04:56 2021
    Hi dm,

    Sounds like you used the install/GNUmakefile. I did not suggest you do that. The "main GNUmakefile" is src/sbbs3/GNUmakefile and it won't overwrite anything in your ctrl directory.

    Oh, okay. Good to know for the future.
    The problem is, that -for me!- the question which Makefile to use is not that obvious...

    The next question for me is then:
    When I update to the current "master git version", how would I build and "install" this new version without problems in the other directories?
    Thank you!

    Yeah, that can be done. It's the 3rd party libs (e.g. libmozjs) that use configure, not sbbs.

    Then, are some compiler settings created by the make process and stored in the sbbs3 directory which aren't cleaned by cleanall.sh?

    Thank you!

    Regards,
    Anna

    ---
    ï¿­ Synchronet ï¿­ Imzadi Box -*- box.imzadi.de
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Digital Man@1:103/705 to acn on Thu Apr 29 01:07:58 2021
    Re: trap invalid opcode
    By: acn to Digital Man on Thu Apr 29 2021 09:04 am

    Hi dm,

    Sounds like you used the install/GNUmakefile. I did not suggest you do that. The "main GNUmakefile" is src/sbbs3/GNUmakefile and it won't overwrite anything in your ctrl directory.

    Oh, okay. Good to know for the future.
    The problem is, that -for me!- the question which Makefile to use is not that obvious...

    The next question for me is then:
    When I update to the current "master git version", how would I build and "install" this new version without problems in the other directories?

    Follow the instructions here:
    https://wiki.synchro.net/install:dev

    Nowhere in the update instructions does it have you use install/GNUmakefile.

    Thank you!

    No problem.

    Yeah, that can be done. It's the 3rd party libs (e.g. libmozjs) that use configure, not sbbs.

    Then, are some compiler settings created by the make process and stored in the sbbs3 directory which aren't cleaned by cleanall.sh?

    No. But they could be in the 3rdp directory.
    --
    digital man

    Synchronet/BBS Terminology Definition #58:
    PET = Personal Electronic Transactor (Commodore computer)
    Norco, CA WX: 63.6øF, 40.0% humidity, 0 mph SSW wind, 0.00 inches rain/24hrs --- SBBSecho 3.14-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Digital Man@1:103/705 to acn on Thu Apr 29 11:17:14 2021
    Re: trap invalid opcode
    By: acn to Digital Man on Thu Apr 29 2021 12:10 pm

    Hi,

    Then, are some compiler settings created by the make process and stored in the sbbs3
    directory which aren't cleaned by cleanall.sh?
    No. But they could be in the 3rdp directory.

    But then the question remains:
    What was the difference between the "simple" re-compiling after using cleanall.sh and the re-compiling from a fresh git checkout.

    The difference is that cleanall.sh doesn't force a rebuild of the 3rdp libs.

    Is libsbbs.so using 3rd party parts where cleanall.sh is not really cleaning things?

    Correct.

    Do you consider changing cleanall.sh?

    Sure.
    --
    digital man

    Sling Blade quote #5:
    Karl Childers (to father): You ought not killed my little brother...
    Norco, CA WX: 88.0øF, 15.0% humidity, 0 mph S wind, 0.00 inches rain/24hrs
    --- SBBSecho 3.14-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)