WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: Re: Tiny Core v17.0 upgrade issues  (Read 10073 times)

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 15605
Re: Tiny Core v17.0 upgrade issues
« Reply #150 on: May 26, 2026, 06:02:38 AM »
I'm not certain of this and may be misremembering.
I think the new kernel is built on the previous version of Tinycore.
If that's the case, it might be built with the previous version of GCC.
Newer versions of GCC typically build larger executables.

Maybe Juanito and/or Paul_123 can comment.

The new toolchain is built in a chroot environment against the new kernel headers on the previous version of tinycore and this toolchain is used to build the new kernel. Thus the version of gcc in tc-17.x was used to build the kernel.

Offline Paul_123

  • Administrator
  • Hero Member
  • *****
  • Posts: 1563
Re: Re: Tiny Core v17.0 upgrade issues
« Reply #151 on: May 26, 2026, 08:19:28 AM »
There were quite a few changes in the kernel config between 17.0 and 17.1 proposed kernel, in addition the kernel version.  That is why its size changed.

It should not make a difference what CPU a kernel is compiled under, as the kernel config dictates the compiler output, as long as its the same compiler version.   It is true that the x86 kernel is built on a 64bit cpu, but done in the tc 32bit environment.

Offline Stefann

  • Wiki Author
  • Full Member
  • *****
  • Posts: 208
Re: Re: Tiny Core v17.0 upgrade issues
« Reply #152 on: May 26, 2026, 11:45:57 AM »
There were quite a few changes in the kernel config between 17.0 and 17.1 proposed kernel, in addition the kernel version.  That is why its size changed.

It should not make a difference what CPU a kernel is compiled under, as the kernel config dictates the compiler output, as long as its the same compiler version.   It is true that the x86 kernel is built on a 64bit cpu, but done in the tc 32bit environment.
So.. that is strange. Because on TC17.0 I compiled a TC17.1 kernel that is 20kB bigger than the published TC17.1 kernel.
It’s probably handier to investigate this towards TC17.1 instead of TC17.0 as the TC team has that under active development.

I’m currently out.
I will do a “very clean” TC17.1  kernel make tomorrow.
Including Mrproper and oldconfig, and make sure to have all apps update before I compile.

I wil do that TC17.1 compile on TC17.0 system. That’s ok I hope.

Anything else I should check?
« Last Edit: May 26, 2026, 11:50:42 AM by Stefann »

Offline Stefann

  • Wiki Author
  • Full Member
  • *****
  • Posts: 208
Re: Tiny Core v17.0 upgrade issues
« Reply #153 on: Today at 07:06:10 AM »
update.......
system was still running after 4 full days. I stopped it manually
So: "self compiled kernel with integrated usb-serial driver" WORKS
I tested with "no reads from usb serial" in my main application and have 200x accelerated 2byte block reads in dedicated testprogram running in parallel:
mon day:  5 23 | hh:mm:ss: 08:52:36 | Still alive after 0k + 1 loops
....
mon day:  5 27 | hh:mm:ss: 06:22:00 | Still alive after 130912k + 800 loops

So... strange....
- vmlinuz from TC17.0 download location including usb-serial-6.18.2-tinycore.tcz crashed 2x in a row. After 14hr and after 12hr.
- self compiled vmlinuz with integrated usb-serial survives 4 days. 8x longer.... no crash but manually stopped

To explore further:
I started self compiled kernel WITHOUT integrated usb-serial together with  usb-serial-6.18.2-tinycore.tcz
We'll see........
If this is "bad" I expect it to fail in 14-ish hours.

=====
Update on filesize difference of bzImage between published file versus self made file.
I generated a full fresh "from scratch" image for TC17.2
All done on hp510 2core 1GHz 64bit cpu running on x86 TC17.0

What i did:   
 
Code: [Select]
Check that I run latest TC17.0 vmlinuz:
TC17.0 download location:
vmlinuz                                            10-Feb-2026 12:03             6087168

tc@hp510:/mnt/sda1/tce/boot$ ls -l *17
-rwxrw-r--    1 tc       staff      6087168 Feb 10 13:10 vmlinuz17

Download may-8 version of TC17.1 from http://tinycorelinux.net/17.x/x86/release/src/kernel/
linux-6.18.28-patched.tar.xz                       08-May-2026 15:47           159508120
config-6.18.28-tinycore                            08-May-2026 18:09              218173

On hp510 system:
tc@hp510:/krubo/work/TC$ tar xvf linux-6.18.28-patched.tar.xz
tc@hp510:/krubo/work/TC$ cd *28
tc@hp510:/krubo/work/TC/linux-6.18.28$ cp ../config-6.18.28-tinycore ./.config
tc@hp510:/krubo/work/TC/linux-6.18.28$ make mrproper
  CLEAN   .config
tc@hp510:/krubo/work/TC/linux-6.18.28$ cp ../config-6.18.28-tinycore ./.config
tc@hp510:/krubo/work/TC/linux-6.18.28$ make oldconfig
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/confdata.o
  HOSTCC  scripts/kconfig/expr.o
  LEX     scripts/kconfig/lexer.lex.c
  YACC    scripts/kconfig/parser.tab.[ch]
  HOSTCC  scripts/kconfig/lexer.lex.o
  HOSTCC  scripts/kconfig/menu.o
  HOSTCC  scripts/kconfig/parser.tab.o
  HOSTCC  scripts/kconfig/preprocess.o
  HOSTCC  scripts/kconfig/symbol.o
  HOSTCC  scripts/kconfig/util.o
  HOSTLD  scripts/kconfig/conf
#
# No change to .config
#
tc@hp510:/krubo/work/TC/linux-6.18.28$ make bzImage
tc@hp510:/krubo/work/TC/linux-6.18.28$ cd arch/x86/boot
tc@hp510:/krubo/work/TC/linux-6.18.28/arch/x86/boot$ ls -l bz*
-rw-r--r--    1 tc       staff      6312448 May 27 12:42 bzImage

bzImage on TC17.1 download location http://tinycorelinux.net/17.x/x86/release_candidates/tc17.1/
bzImage                                            08-May-2026 18:33             6111744

So....
My bzImage is 20k bigger than the published version while published image has may-8 timestamp and sources I used also have may-8 timestamp.

It's probably simply something "configuration" and nothing problematic

For now conclusion & way forward is:
- self compiled TC17.0 kernel works while published 17.0 kernel crashes on usb-serial read.
- I will dig a bit deeper into it but at some time "just start using the self compiled kernel". There is no real downside on that.
- Once TC17.1-beta gets released I will test published image again. Maybe the version update will have fixed things.

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12790
Re: Tiny Core v17.0 upgrade issues
« Reply #154 on: Today at 07:51:04 AM »
Hi Stefann
Just a few minor observations.
... What i did:   
 
Code: [Select]
----- Snip -----
tc@hp510:/krubo/work/TC/linux-6.18.28$ cp ../config-6.18.28-tinycore ./.config
tc@hp510:/krubo/work/TC/linux-6.18.28$ make mrproper
  CLEAN   .config
tc@hp510:/krubo/work/TC/linux-6.18.28$ cp ../config-6.18.28-tinycore ./.config
 ----- Snip -----
...
Now you see why you run  make mrproper  before copying the config file.

A quick lesson in paths and syntax.
./  Means the current directory.
../  Means the directory right above the current one.

If you want to run a program that's located in the directory you are in:
Code: [Select]
./ProgramNameThis tells the shell to look in the current directory instead of searching $PATH:
Code: [Select]
tc@E310:~$ echo $PATH
/home/tc/.local/bin:/usr/local/sbin:/usr/local/bin:/apps/bin:/usr/sbin:/usr/bin:/sbin:/bin:/etc/sysconfig/tcedir/ondemand

Code: [Select]
cd ./        # This does nothing
cd ../       # This moves you up one level in the directory

Code: [Select]
tc@hp510:/krubo/work/TC/linux-6.18.28$ cp ../config-6.18.28-tinycore ./.config        # The ./ is redundant
tc@hp510:/krubo/work/TC/linux-6.18.28$ cp ../config-6.18.28-tinycore .config          # This accomplishes the same thing

None of the above are a problem, I just wanted to offer some clarification.

This, on the other hand:
Quote
...
Code: [Select]
----- Snip -----
tc@hp510:/krubo/work/TC/linux-6.18.28/arch/x86/boot$ ls -l bz*
-rw-r--r--    1 tc       staff      6312448 May 27 12:42 bzImage

bzImage on TC17.1 download location http://tinycorelinux.net/17.x/x86/release_candidates/tc17.1/
bzImage                                            08-May-2026 18:33             6111744

So....
My bzImage is 20k bigger than the published version  ...

makes me question your math skills. ::)
Code: [Select]
tc@E310:~$ calc 6312448-6111744
200704

While I routinely do math in my head, I do tend to check my result
by using calc which is available on the command line.

Offline Stefann

  • Wiki Author
  • Full Member
  • *****
  • Posts: 208
Re: Tiny Core v17.0 upgrade issues
« Reply #155 on: Today at 08:16:45 AM »
@Rich
Ah... yes indeed... mrproper gets rid of the .config....

Yeah... I know the meaning of ./ and ../
I just wanted it to make it "Cristal clear" to show .config is really .config and not ./config

Having said that...
OUCH....
2nd time you catch me on a 10x error!
(and as I said earlier, I really appreciate your keen eye for details. If we ever understand this issue I'm pretty sure it's a damn detail)

200kB files difference is "really something".

Anyway....
We'll see how it goes I guess.

mmmmh... calc is a fun tool. Thanks

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12790
Re: Tiny Core v17.0 upgrade issues
« Reply #156 on: Today at 08:43:22 AM »
Hi Stefann
... mmmmh... calc is a fun tool. Thanks
Yes it is. Just bear in mind, it's a simple calculator:
Code: [Select]
tc@E310:~$ cat /usr/bin/calc
#!/bin/busybox ash
. /etc/init.d/tc-functions
useBusybox
if [ -z ${1} ]; then
  echo
  echo "         -=[ Simple Awk Calculator ]=-"
  echo "Put formula in quotes (single or double) examples:"
  echo "calc '3*4'"
  echo "calc 'sqrt(9)'"
  exit 0
fi
awk "BEGIN{ print $* }"