How to build 6.6.x kernel? (Solved)

Moderator: Forum moderators

Post Reply
porteux
Posts: 12
Joined: Tue Apr 04, 2023 9:55 pm
Been thanked: 6 times

How to build 6.6.x kernel? (Solved)

Post by porteux »

I've been struggling to make kernel 6.6.x work on my machine using PorteuX and Porteus. It works on some machines but it doesn't on others. So I decided to try Puppy kernel 6.6.0, from here: https://archive.org/download/Puppy_Linu ... 64.tar.bz2

Surprisingly it works! So then I tried to build it using your .config file (extracted from a runtime kernel) but I got the exact same error during boot, which is:

kernel panic - not syncing: Can't create rootfs
Image

So my question is what is the magic you guys are doing to build the kernel?

Thanks a lot! :)

Last edited by porteux on Fri Nov 10, 2023 2:41 pm, edited 1 time in total.
User avatar
rockedge
Site Admin
Posts: 6551
Joined: Mon Dec 02, 2019 1:38 am
Location: Connecticut,U.S.A.
Has thanked: 2754 times
Been thanked: 2627 times
Contact:

Re: How to build 6.6.x?

Post by rockedge »

How are the module and firmware SFS's set up? Or are you are compiling a monolithic type kernel?

I just built a general purpose huge kernel version 6.6 using the kernel-kit from woof-CE using a VoidPup64 merge2out version.

I have attached the file DOTconfig-6.6.0-x86_64.tar.gz which I used for the build. I can make this kernel available if any one is interested.

Will be attempting with the same kernel-kit setup to build a full real time 6.6-rt13 kernel with both AUFS and OverlayFS builtin, patched and configured for full real time preemption.

Attachments
DOTconfig-6.6.0-x86_64.tar.gz
(55.45 KiB) Downloaded 35 times
User avatar
peebee
Posts: 1636
Joined: Mon Jul 13, 2020 10:54 am
Location: Worcestershire, UK
Has thanked: 157 times
Been thanked: 714 times
Contact:

Re: How to build 6.6.x?

Post by peebee »

porteux wrote: Thu Nov 09, 2023 10:18 am

So my question is what is the magic you guys are doing to build the kernel?

Thanks a lot! :)

Hi @porteux

Our build.sh is available on Github:
https://github.com/puppylinux-woof-CE/w ... t/build.sh

There weren't any changes needed when moving from 6.5 builds to 6.6 builds.....

My 6.6.1 build is at:
https://sourceforge.net/projects/lxpup/ ... /interims/

Let us know if there is anything we can do to help solve the mystery - we can use Porteus kernels in Puppy installs so could do that test if you have a link to your kernel.

Builder of LxPups, SPups, UPup32s, VoidPups; LXDE, LXQt, Xfce addons; Chromium, Firefox etc. sfs; & Kernels

porteux
Posts: 12
Joined: Tue Apr 04, 2023 9:55 pm
Been thanked: 6 times

Re: How to build 6.6.x?

Post by porteux »

You guys are super kind and supportive! I appreciate that a lot! :)

@rockedge, thanks to your .config file I managed to find that what was causing the problem was not my .config file, but how I was patching AUFS. It's all working now, although I have no idea why it worked for 1 year and it decided to break just now :?

@peebee, nice to know that you were willing to test my kernel build just to help me! :thumbup2:

Thanks once again, guys!

User avatar
rockedge
Site Admin
Posts: 6551
Joined: Mon Dec 02, 2019 1:38 am
Location: Connecticut,U.S.A.
Has thanked: 2754 times
Been thanked: 2627 times
Contact:

Re: [SOLVED] How to build 6.6.x?

Post by rockedge »

although I have no idea why it worked for 1 year and it decided to break just now

I am amazed every time when a kernel build goes as planned. Part of the fun of doing it. I have the most problems when patching a kernel for full real time and AUFS together.

porteux
Posts: 12
Joined: Tue Apr 04, 2023 9:55 pm
Been thanked: 6 times

Re: [SOLVED] How to build 6.6.x?

Post by porteux »

I realized that by applying the AUFS patch the way you guys are doing prevent modules from being able to be mounted from inside the union -- no problem mounting them from outside the union though (like a physical storage unit).

Example: get a sfs/xzm module, copy to ~/Desktop and try to mount/activate it. It will fail with the following message: mount: /: mount point not mounted or bad option.

The way I was applying AUFS path to the kernel this issue wasn't happening, but then it doesn't work at all (kernel panic) with 6.6.x.

Should we ask Sir sfjro? :D

porteux
Posts: 12
Joined: Tue Apr 04, 2023 9:55 pm
Been thanked: 6 times

Re: [SOLVED] How to build 6.6.x?

Post by porteux »

OK, things are starting to make sense now.

The way Puppy is applying AUFS patches are somehow funny:

Code: Select all

for i in kbuild base standalone mmap; do #loopback tmpfs-idr vfs-ino
	patchfile=../aufs_sources/aufs${aufs_version}-$i.patch
	( echo ; echo "patch -N -p1 < ${patchfile##*/}" ) &>> ${BUILD_LOG}
	patch -N -p1 < ${patchfile} &>> ${BUILD_LOG}

By doing that you're applying only aufs*.patch, letting these ones out of the game:

Code: Select all

lockdep-debug.patch
tmpfs-idr.patch
vfs-ino.patch

So the initial problem I was having (the reason why I open this thread) is most likely due to something wrong with the code in one of these 3 patches, and they happen to enable mounting of the sfs/xzm modules that are in the union -- most likely other features are also missing when not applying these 3 patches.

I'm building the kernel at the moment to see if I can find more information. If you guys know anything, any information is welcome :)

User avatar
rockedge
Site Admin
Posts: 6551
Joined: Mon Dec 02, 2019 1:38 am
Location: Connecticut,U.S.A.
Has thanked: 2754 times
Been thanked: 2627 times
Contact:

Re: How to build 6.6.x kernel? (Solved)

Post by rockedge »

@porteux Interesting. I was pretty sure I was including those patches so I'll have to look closer.

I managed to compile a 6.6-rt13 full real time kernel but overlay only and no aufs to see how that went. I will attempt a build using @ozsouth 's 2018 kernel-kit which has worked for me building a full RT kernel with both AUFS and overlay

It is the AUFS and the RT patches that seem to not play well together and need some tweaking.

I will convert this kernel into a usermerge model for use with KLV variants.

Post Reply

Return to “Kernels”