Re: stack smashing detected
CC linux-m68k On Mon, Jan 30, 2023 at 5:01 AM Stan Johnson wrote: > > Hello, > > I am seeing anywhere from zero to four of the following errors while > booting Linux on 68030 systems and using sysvinit startup scripts: > > *** stack smashing detected ***: terminated > Aborted > > I usually (but not always) see three of the errors while init is running > the rcS.d scripts, and one while running the rc2.d scripts. The stack > smashing messages appear only on the system console (nothing is logged > in an error log or dmesg). Despite the errors, the system continues > booting to multiuser mode without any obvious additional problems. I > haven't tested systemd, which is too slow to be useful on my m68k > systems (though I have a Debian SID with systemd that I can restore for > testing if necessary). > > I'm using the current Debian SID and Debian kernel, and I've confirmed > the errors on a Mac IIci and SE/30. I haven't seen the errors on any > 68040 system (I only tested on a Centris 650 and PowerBook 550c). I also > notice the errors on 68030 systems using custom kernels that I have > cross-compiled using GCC 12 or GCC 10 on a x86_64 system running Debian > SID; however, I do not see the errors as often if I cross-compile using > GCC 8.3.0 on a 686 system (running Debian 10.7 Buster) -- I saw the > errors a few weeks ago with an earlier kernel, but none today using > Linux 6.1.8 cross-compiled with GCC 8.3.0. > > I'll be happy to help debug or troubleshoot, though at this point, since > the "stack smashing detected" errors aren't reporting which processes > are being terminated/aborted, I'm not sure where to start. > > thanks for any suggestions > > -Stan Johnson user...@yahoo.com
Re: Work on adding TLS support to LLVM on m68k
Hi Finn! On 1/29/23 01:15, Finn Thain wrote: The developers of the TLS/NPTL support for m68k/coldfire were working for Freescale and Codesourcery at the time... https://lists.debian.org/debian-68k/2008/02/msg00212.html https://lists.debian.org/debian-68k/2007/11/msg00071.html Thanks, these links are very useful, especially the one describing the ABI. I have copied the ABI description into the Github issue, crediting the source: https://github.com/llvm/llvm-project/issues/60354 The toolchain mailing lists at sourceware.org might be a good place to seek technical information about the implementation. Or you could try sending a question to the old e-mail addresses of the people who sent the patches e.g. https://git.kernel.org/torvalds/c/9674cdc74d63 I have sent an email to both Joseph and Maxim, but I haven't got any reply yet. Adrian -- .''`. John Paul Adrian Glaubitz : :' : Debian Developer `. `' Physicist `-GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Re: stack smashing detected
Hi Stan, Am 30.01.2023 um 17:00 schrieb Stan Johnson: Hello, I am seeing anywhere from zero to four of the following errors while booting Linux on 68030 systems and using sysvinit startup scripts: *** stack smashing detected ***: terminated Aborted I usually (but not always) see three of the errors while init is running the rcS.d scripts, and one while running the rc2.d scripts. The stack smashing messages appear only on the system console (nothing is logged in an error log or dmesg). Despite the errors, the system continues booting to multiuser mode without any obvious additional problems. I haven't tested systemd, which is too slow to be useful on my m68k systems (though I have a Debian SID with systemd that I can restore for testing if necessary). I'm using the current Debian SID and Debian kernel, and I've confirmed the errors on a Mac IIci and SE/30. I haven't seen the errors on any 68040 system (I only tested on a Centris 650 and PowerBook 550c). I also notice the errors on 68030 systems using custom kernels that I have cross-compiled using GCC 12 or GCC 10 on a x86_64 system running Debian SID; however, I do not see the errors as often if I cross-compile using GCC 8.3.0 on a 686 system (running Debian 10.7 Buster) -- I saw the errors a few weeks ago with an earlier kernel, but none today using Linux 6.1.8 cross-compiled with GCC 8.3.0. I'll be happy to help debug or troubleshoot, though at this point, since the "stack smashing detected" errors aren't reporting which processes are being terminated/aborted, I'm not sure where to start. The man page of init states that init logs process and reason for termination in /var/run/utmp and /var/log/wtmp each time a child process terminates. You're looking for processed terminated by SIGABRT as far as I can see. There does not appear to be any tool to extract that information from utmp/wtmp files though - utmpdump only shows login process information for me, nothing on init processes. Another way may be logging the start of each of the rcS.d or rc2.d scripts until you know what scripts to look at in more detail, then adding 'set -v' at the start of those to log every command in the offending script. Once the offending binary is known (and the crash can be reproduced after system boot), gdb can be used to find the function that overwrote its local stack guard. That's a lot of work on a 030 Mac - have you tried to reproduce this on any kind of emulator? I suppose one difference between your 030 and 040 Macs might be the amount of RAM available. I wonder if this bug results from a combination of 030 MMU and memory pressure, or 030 MMU only. Cheers, Michael thanks for any suggestions -Stan Johnson user...@yahoo.com