Tiny Core Base > Alpha Releases

Tiny Core 16.0 Alpha 1 Testing

<< < (10/16) > >>

Knoppix1337:
Ok, I seemed to narrow down the problem. It is busybox. I had an issue with this a couple years ago with Knoppix.

I unpacked/repacked rootfs.gz and introduced some delays and debug comments in the startup scripts, specifically /init

at first I inserted:
--- Code: ---#!/bin/sh

echo -n "holding at /init for 60sec..."
sleep 60
echo "done"
--- End code ---
and it would happily wait for 60 seconds and continue and soon lockup.

Ultimately I added a "counting dots" routine to "exercise" busybox
--- Code: ---#!/bin/sh

echo -n "holding at /init for 10sec"

i=0
while [ $i -le 100 ]; do
  sleep .1; echo -n "."
  i=$(($i+1))
done
--- End code ---
and it locks up before it's finished counting.

I tried it with the prink kernel, and it boots, so I made a test script to again exercise busybox:
--- Code: ---#!/bin/sh

echo -n "looping"

i=0
while [ $i -le 10000 ]; do
  sleep .1; echo -n "."
  i=$(($i+1))
done


--- End code ---
and eventually it locked up, once so far, but it also locked up while trying to compile some code, so for whatever reason I think the printk kernel only delays the inevitable.

I'm going to try compiling the latest busybox (and perhaps earlier versions) to try and narrow this down further, and then report my findings both here and upstream.

curaga:
If it tried to use non-supported instructions, you would see that (unhandled opcode error on screen). Thus I don't think it's busybox.

Rich:
Hi Knoppix1337

--- Quote from: Knoppix1337 on February 23, 2025, 04:46:29 AM ---Ok, I seemed to narrow down the problem. It is busybox.
 ----- Snip -----
I tried it with the prink kernel, and it boots, so I made a test script to again exercise busybox:

--- Code: ---#!/bin/sh

echo -n "looping"

i=0
while [ $i -le 10000 ]; do
  sleep .1; echo -n "."
  i=$(($i+1))
done


--- End code ---
...

--- End quote ---
I think that might be provable:
Install  bash.tcz  and  coreutils.tcz.

Change the first line of your script from:

--- Code: ---#!/bin/sh
--- End code ---
to:

--- Code: ---#!/bin/bash
--- End code ---

If you're running a GUI, click the  Exit  icon and select  Exit to Prompt.

Run:

--- Code: ---ps aux | grep bin/
--- End code ---
Kill any instances of udevd, syslogd, and klogd.

Then run:

--- Code: ---# Make sure the system can find bash.
hash -r
# Change the current shell from busybox ash to bash.
bash
# Launch your test script.
./TestScript
--- End code ---

If it still locks up, it's probably not busybox.
Based on what you said here, it may not be very repeatable:

--- Quote --- ... and eventually it locked up, once so far, ...
--- End quote ---
So you may need to let it run for an extended period of time.

MikeLockmoore:

--- Quote from: Rich on February 22, 2025, 10:40:53 AM ---Hi MikeLockmoore

--- Quote from: Juanito on February 22, 2025, 10:32:46 AM --- ... corepure64.gz = rootfs64.gz + modules64.gz ...
--- End quote ---
You can create corepure64.gz like this:

--- Code: ---cat rootfs64.gz modules64.gz > corepure64.gz
--- End code ---

--- End quote ---

Rich: I've done it the way you suggested.  Earlier I tried to do it with gunzip each, cat them together, then gzip the result.

Anyone: Maybe I'm too rusty and confused about things, but I don't think I'm getting a valid alpha release boot (note: I'm calling it "rc" below because I assume you are close to promoting 16 up to release candidate level soon).  Let me explain what I'm trying to do, then I'll look at any advice you have.

Step 1: Boot just the base TC 16 and graphical apps in FLWM built with FLTK 1.4.1 so I can see what they look like on my machine and how they behave.  I expect to be able to resize the GUI apps with Ctrl Plus/Minus keystrokes (is this a valid expectation, since they are built with FLTK 1.4.1?).  To do this, I have the vmlinuz from the TC 16 repo and the the two system files archives (rootfs64 and modules), merged into a "corepure16_16rc.gz" file as discussed above.

To boot this configuration, I have the vmlinux_16rc binary file and corepure64_16rc.gz binary file on my USB stick under the /boot folder (shows up as /mnt/sdb1/boot when I get it mounted).  From the isolinux menu, I select the 16 entry and edit it to look like:
LABEL tc_rc
MENU LABEL Boot TinyCore 16 RC                                                 
TEXT HELP                                                                     
Boot TinyCore  -- version 16 -- Release Candidate --
Boot media is removable. Use TAB to edit options for specific needs.
ENDTEXT
KERNEL /boot/vmlinuz64_16rc
INITRD /boot/corepure64_16rc.gz
APPEND loglevel=3 base norestore vga=791

But when I do this, I get no X GUI, just the command line.

Step 2: Be able to load some local extensions to my TC 16 config (so I can eventually use WiFi, firefox, and compile software while booted to TC 16).  I tried to use the same extensions in the CDE/ folder of my CD boot image on my USB boot memory stick.  The isolinux.cfg boot stanza is

LABEL tc_rc
MENU LABEL Boot TinyCore 16 RC                                                 
TEXT HELP                                                                     
Boot TinyCore  -- version 16 -- Release Candidate --
Boot media is removable. Use TAB to edit options for specific needs.
ENDTEXT
KERNEL /boot/vmlinuz64_16rc
INITRD /boot/corepure64_16rc.gz
APPEND loglevel=3 tce=sda2/tce16 restore=sda2/tce16 vga=791

When the sda2/tce16 folder has an onboot.lst file that includes FLTK-1.3.tcz and FLWM.tcz (and those files in the optional/ subfolder), I get a GUI desktop, but (I'm sure) the old version for FLTK 1.3 as built for TC 15.  If I delete the FLTK-1.3.tcz and FLTM.tcz from my onboot.lst file, I get a X GUI where the mouse cursor is only the XWindows "X" cursor (not the normal arrow pointer cursor).  The X cursor makes the wbar icons enlarge as I hover over them, but none of them respond to mouse clicks and I cannot get the system menu with right-mouse (trackpad in my case) click.

Thanks for your suggestions and helping this rusty TC user (and hopefully, again, a developer) out!
--
Mike


Rich:
Hi MikeLockmoore

--- Quote from: MikeLockmoore on February 23, 2025, 04:32:22 PM --- ... APPEND loglevel=3 base norestore vga=791

But when I do this, I get no X GUI, just the command line. ...
--- End quote ---
I see a couple of issues.
The  base  keyword tells it you don't want to load any extensions.
Since you are booting from a USB device, you might want to append:

--- Code: ---waitusb=5
--- End code ---

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version