Page 76 of 135

Porteus Kernel Builder

Posted: 24 Jan 2021, 05:49
by roadie
maia wrote:
23 Jan 2021, 21:03
maia,
That is really strange, as the initrd is responsible for loading rootcopy. I can't see any way that the kernel would affect that.
During boot the show the information the system is reading the rootcopy folder but in reality does not read it.

I must have done some improper configuration when I optimized .config for my system.
@maia,
I just compiled 5.10.9 using the single patch from: https://github.com/sirlucjan/kernel-patches
which is probably the patch you used? Anyway, it built well and loads rootcopy with no problems so your problem is elsewhere, possibly the config.

Code: Select all

porteus:[guest]:~$ uname -a
Linux porteus.example.net 5.10.9-porteus #1 SMP Sat Jan 23 21:10:28 Local time zone must be set--see zic  x86_64 AMD A10-9620P RADEON R5, 10 COMPUTE CORES 4C+6G AuthenticAMD GNU/Linux

Porteus Kernel Builder

Posted: 24 Jan 2021, 10:13
by maia
Exactly roadie, I used the sirlucjan patch.
I will calmly review my .config and try again with version 5.10.10. Thanks for the feedback. :)

Porteus Kernel Builder

Posted: 24 Jan 2021, 11:22
by maia
And the error was really my new .config file. I used a .config from two previous versions and it worked.

I keep disabling functions that I don't use to optimize the kernel and I end up removing something crucial.

:)

Linux 5.10.10 #1 SMP Sun Jan 24 07:41:47 -03 2021 x86_64 Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz GenuineIntel GNU/Linux

Porteus Kernel Builder

Posted: 24 Jan 2021, 16:38
by roadie
maia wrote:
24 Jan 2021, 11:22
And the error was really my new .config file. I used a .config from two previous versions and it worked.

I keep disabling functions that I don't use to optimize the kernel and I end up removing something crucial.

:)

Linux 5.10.10 #1 SMP Sun Jan 24 07:41:47 -03 2021 x86_64 Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz GenuineIntel GNU/Linux
You're not the only one, I played with my config last week trying to slim it down......when I booted the kernel, I got a black screen and nothing else.

Any idea what it was in your config that blocked aufs?

Porteus Kernel Builder

Posted: 24 Jan 2021, 17:11
by neko
@roadie, @maia
Please refer to Porteus Kernel Builder (Post by neko #81183)

Thanks.

Porteus Kernel Builder

Posted: 24 Jan 2021, 17:24
by maia
Hi Neko, before I tried the MK 21.01.20 version to compile kernel 5.10.10 and it worked apparently without problems, downloaded the kernel, applied the patches, compiled correctly. But during the boot he reported that there was no AUFS and it crashed.

Porteus Kernel Builder

Posted: 27 Jan 2021, 14:56
by neko
[Interim report]

1. ISO of AUFS patched kernel with old configuration (neko-*bit.config) causes boot error problem

Code: Select all

-> 000-kernel.xzm
-> 001-core.xzm
Killed
-> 001-z.core.xzm
It was fixed by changing AUFS mount paramater.

man aufs(5)
[ add | ins ]:index:BRANCH
Adds a new branch. The index begins with 0. Aufs creates whiteout-base(.wh..wh.aufs) and whplink-dir(.wh..wh.plnk) if necessary.

If there is the same named file on the lower branch (larger index), aufs will hide the lower file. You can only see the highest file. You will be confused if the added
branch has whiteouts (including diropq), they may or may not hide the lower entries. (cf. DIAGNOSTICS).

Even if a process have once mapped a file by mmap(2) with MAP_SHARED and the same named file exists on the lower branch, the process still refers the file on the
lower(hidden) branch after adding the branch. If you want to update the contents of a process address space after adding, you need to restart your process or open/mmap
the file again. (cf. Branch Syntax).
old initrd

Code: Select all

local x;

for x in `cat /tmp/modules`;
do
	NAME=`basename $x`;
	mkdir /memory/images/$NAME;
	mount -o loop $x /memory/images/$NAME 2>/dev/null
	if [ $? -eq 0 ];
	then
		echo "  $m  $NAME";
		mount -no remount,add:1:/memory/images/$NAME=rr aufs /union
	else
		echo $i"[1;36m""Cannot read $NAME - corrupted module?""[0m";
		rmdir /memory/images/$NAME
	fi
done
fixed index number (1) was changed to counting up.
addtional modules order was reversed.

new initrs

Code: Select all

local x;
local index;
index=1;

sort -r /tmp/modules > /tmp/mod
 
for x in `cat /tmp/mod`;
do
	NAME=`basename $x`;
	mkdir /memory/images/$NAME;
	mount -o loop $x /memory/images/$NAME 2>/dev/null
	if [ $? -eq 0 ];
	then
		echo "  $m  $NAME";
		mount -no remount,add:$index:/memory/images/$NAME=rr aufs /union
		index=`expr $index + 1`
	else
		echo $i"[1;36m""Cannot read $NAME - corrupted module?""[0m";
		rmdir /memory/images/$NAME
	fi
done
rm /tmp/mod
note: activate/deactivate
It is necessary to investigate whether there is a problem with activate/deactivate after boot.


2.aufs-util
I did 64bit aufs-uti build on 64bit.
But I couldn't do 32bit aufs-uti build on 64bit.
It needs more study.


Thanks.

Porteus Kernel Builder

Posted: 27 Jan 2021, 17:12
by babam
neko wrote:
27 Jan 2021, 14:56
note: activate/deactivate
It is necessary to investigate whether there is a problem with activate/deactivate after boot.
Is it working?

Porteus Kernel Builder

Posted: 27 Jan 2021, 17:41
by raja
Of late, new kernels fail to boot due to known AUFS problem. (absence of Junjiro Okajima). I feel, still his new offer stabilizes, we can do away with kernel updates . New kernel does not bring any immediate benefits.

I have gone back to Porteus-5.4.85. Also, Debian config increases file size due to support for almost any gadgets on offer.

Alternatively, can we decide to move over to 'overlay' fs? activate.deactivate commands may become executable over time when neko and others offer solutions.

Porteus Kernel Builder

Posted: 28 Jan 2021, 10:29
by neko
@babam

[activate]
"mount" option must be changed as follow.

mount -no remount,add:1:$MOD=rr aufs /
---->
mount -no remount,append:$MOD=rr aufs /

[deactivate]
Multi "deactivate"s should be in the order of "last activate first deactivate".

# activate a.xzm
# activate b.xzm
# activate c.xzm

Error--->
# deactivate a.xzm

Success--->
# deactivate c.xzm
# deactivate b.xzm
# deactivate a.xzm

[aufs-util]
You can refer /usr/share/man/man5/aufs.5 by man command.
It is included in "aufs-util" built (at building kernel 5.10.11 64bit).

aufs-util-5.10-20210111-x86_64.xzm (1.6 M)
https://www.mediafire.com/file/lerlvbsq ... x86_64.xzm
md5sum: db7562c174d3b1992d00934828a63549 aufs-util-5.10-20210111-x86_64.xzm


Thanks.

Porteus Kernel Builder

Posted: 28 Jan 2021, 12:19
by babam
neko wrote:
28 Jan 2021, 10:29

[deactivate]
Multi "deactivate"s should be in the order of "last activate first deactivate".

# activate a.xzm
# activate b.xzm
# activate c.xzm

Error--->
# deactivate a.xzm

Success--->
# deactivate c.xzm
# deactivate b.xzm
# deactivate a.xzm
That means if I want to deactivate a.xzm then I must first deactivate c.xzm and b.xzm and then re-activate b.xzm and c.xzm.

That makes it complicated.

Thanks.

Porteus Kernel Builder

Posted: 29 Jan 2021, 08:46
by neko
=== The ISO for testing AUFS function ===

This ISO is intended to study how to "deactivate".

Porteus-XFCE-v5.0rc2-k5.10.11.auf-x86_64.iso (359 M)
https://www.mediafire.com/file/l6aplvv0 ... x86_64.iso
md5sum: ce1802716f5c490ea0ac9fff45c95bbc Porteus-XFCE-v5.0rc2-k5.10.11.auf-x86_64.iso

This ISO was updated from Porteus-XFCE-v5.0rc2-x86_64.iso.
1. ISO/boot/syslinux/vmlinuz & ISO/porteus/base/000-kernel.xzm
were replaced with the kernel 5.10.11 that was

applied with AUFS patch (Ver. 5.10-20210111)
and
built with old config (neko-64bit.config)

2. ISO/boot/syslinux/initrd.xz
linuxrc in initrd.xz was updated as follow.

Code: Select all

# diff -r old/linuxrc new/linuxrc
256a257,283
> 
> # Add "changes on exit" device/file/folder:
> rm -fr /tmp/mod
> 
> if [ -e /tmp/changes-exit ]; then
>     mkdir /memory/images/changes
>     if [ -d $CHNEXIT ]; then
> 	mount -o bind $CHNEXIT/changes /memory/images/changes
>     elif [ -b /dev/mapper/crypt ]; then
> 	mount /dev/mapper/crypt /memory/images/changes
>     else
> 	mount -o loop $CHNEXIT /memory/images/changes
>     fi
> 
> #    echo "  $m  changes"; mount -no remount,add:1:/memory/images/changes=ro aufs /union
> #    echo $CHNEXIT/changes >>/tmp/modules
>     echo changes >> /tmp/mod
> 
> #    param changes-ro && rm /tmp/changes-exit
> fi
> 
> 
> 
> #index=1;
> 
> sort -r /tmp/modules >> /tmp/mod
> 
262c289,290
< 	echo "  $m  $NAME"; mount -no remount,add:1:/memory/images/"$NAME"=rr aufs /union
---
> 	echo "  $m  $NAME"; mount -no remount,append:/memory/images/"$NAME"=rr aufs /union
> #	index=`expr $index + 1`
266c294,297
< done < /tmp/modules
---
> #done < /tmp/modules
> 
> done < /tmp/mod
> 
271,279c302,310
<     mkdir /memory/images/changes
<     if [ -d $CHNEXIT ]; then
< 	mount -o bind $CHNEXIT/changes /memory/images/changes
<     elif [ -b /dev/mapper/crypt ]; then
< 	mount /dev/mapper/crypt /memory/images/changes
<     else
< 	mount -o loop $CHNEXIT /memory/images/changes
<     fi
<     echo "  $m  changes"; mount -no remount,add:1:/memory/images/changes=ro aufs /union
---
> #    mkdir /memory/images/changes
> #    if [ -d $CHNEXIT ]; then
> #	mount -o bind $CHNEXIT/changes /memory/images/changes
> #    elif [ -b /dev/mapper/crypt ]; then
> #	mount /dev/mapper/crypt /memory/images/changes
> #    else
> #	mount -o loop $CHNEXIT /memory/images/changes
> #    fi
> #    echo "  $m  changes"; mount -no remount,add:1:/memory/images/changes=ro aufs /union
#
3. ISO/porteus/base/001-core.xzm
/opt/porteus-scripts/xorg/aufs-insert in 001-core.xzm was updated as follow.

Code: Select all

# diff old/opt/porteus-scripts/xorg/aufs-insert new/aufs-insert
63c63
< mount -no remount,add:1:"$MOD"=rr aufs /
---
> mount -no remount,append:"$MOD"=rr aufs /
#

Thanks.

Porteus Kernel Builder

Posted: 29 Jan 2021, 09:11
by M. Eerie
Hi neko,

can the 5.10 branch be used in Nemesis moving (symlinking) /lib to /usr/lib?

Once more, thanks for all your efforts :)

Porteus Kernel Builder

Posted: 29 Jan 2021, 10:12
by neko
@M. Eerie
"can the 5.10 branch be used in Nemesis moving (symlinking) /lib to /usr/lib?"
--->
Yes, it can be used.

==== Slackware style 000-kernel.xzm (Porteus)

Code: Select all

# lsxzm Porteus-XFCE-v5.0rc2-k5.10.11.auf-x86_64.iso-000-kernel.xzm
/etc
/etc/modprobe.d
/etc/modprobe.d/b43_blacklist.conf
/etc/modprobe.d/broadcom_blacklist.conf
/lib
/lib/firmware
/lib/firmware/3com
/lib/firmware/3com/typhoon.bin
/lib/firmware/BCM2033-FW.bin
/lib/firmware/BCM2033-MD.hex
/lib/firmware/RTL8192E
/lib/firmware/RTL8192E/boot.img
/lib/firmware/RTL8192E/data.img
/lib/firmware/RTL8192E/main.img
/lib/firmware/acenic
/lib/firmware/acenic/tg1.bin
/lib/firmware/acenic/tg2.bin
/lib/firmware/adaptec
/lib/firmware/adaptec/starfire_rx.bin
/lib/firmware/adaptec/starfire_tx.bin
/lib/firmware/agere_ap_fw.bin
/lib/firmware/agere_sta_fw.bin
/lib/firmware/amdgpu
/lib/firmware/amdgpu/banks_k_2_smc.bin
/lib/firmware/amdgpu/bonaire_ce.bin
/lib/firmware/amdgpu/bonaire_k_smc.bin
/lib/firmware/amdgpu/bonaire_mc.bin
/lib/firmware/amdgpu/bonaire_me.bin
/lib/firmware/amdgpu/bonaire_mec.bin
/lib/firmware/amdgpu/bonaire_pfp.bin
/lib/firmware/amdgpu/bonaire_rlc.bin
/lib/firmware/amdgpu/bonaire_sdma.bin
/lib/firmware/amdgpu/bonaire_sdma1.bin
/lib/firmware/amdgpu/bonaire_smc.bin
/lib/firmware/amdgpu/bonaire_uvd.bin
/lib/firmware/amdgpu/bonaire_vce.bin
/lib/firmware/amdgpu/carrizo_ce.bin
/lib/firmware/amdgpu/carrizo_me.bin
/lib/firmware/amdgpu/carrizo_mec.bin
/lib/firmware/amdgpu/carrizo_mec2.bin
/lib/firmware/amdgpu/carrizo_pfp.bin
/lib/firmware/amdgpu/carrizo_rlc.bin
--
/lib/firmware/zd1211/zd1211b_ub
/lib/firmware/zd1211/zd1211b_uphr
/lib/firmware/zd1211/zd1211b_ur
/lib/modules
/lib/modules/5.10.11-porteus
/lib/modules/5.10.11-porteus/build
/lib/modules/5.10.11-porteus/kernel
/lib/modules/5.10.11-porteus/kernel/arch
/lib/modules/5.10.11-porteus/kernel/arch/x86
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/aesni-intel.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/blake2s-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/blowfish-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/camellia-aesni-avx-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/camellia-aesni-avx2.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/camellia-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/cast5-avx-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/cast6-avx-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/chacha-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/crc32-pclmul.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/crct10dif-pclmul.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/des3_ede-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/ghash-clmulni-intel.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/glue_helper.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/serpent-avx-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/serpent-avx2.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/serpent-sse2-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/sha1-ssse3.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/sha256-ssse3.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/sha512-ssse3.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/twofish-avx-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/twofish-x86_64-3way.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/twofish-x86_64.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/events
/lib/modules/5.10.11-porteus/kernel/arch/x86/events/amd
/lib/modules/5.10.11-porteus/kernel/arch/x86/events/amd/power.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/events/intel
/lib/modules/5.10.11-porteus/kernel/arch/x86/events/intel/intel-cstate.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/events/rapl.ko
/lib/modules/5.10.11-porteus/kernel/arch/x86/kernel
--
/lib/modules/5.10.11-porteus/kernel/virt
/lib/modules/5.10.11-porteus/kernel/virt/lib
/lib/modules/5.10.11-porteus/kernel/virt/lib/irqbypass.ko
/lib/modules/5.10.11-porteus/modules.alias
/lib/modules/5.10.11-porteus/modules.alias.bin
/lib/modules/5.10.11-porteus/modules.builtin
/lib/modules/5.10.11-porteus/modules.builtin.alias.bin
/lib/modules/5.10.11-porteus/modules.builtin.bin
/lib/modules/5.10.11-porteus/modules.builtin.modinfo
/lib/modules/5.10.11-porteus/modules.dep
/lib/modules/5.10.11-porteus/modules.dep.bin
/lib/modules/5.10.11-porteus/modules.devname
/lib/modules/5.10.11-porteus/modules.order
/lib/modules/5.10.11-porteus/modules.softdep
/lib/modules/5.10.11-porteus/modules.symbols
/lib/modules/5.10.11-porteus/modules.symbols.bin
/lib/modules/5.10.11-porteus/source
/sbin
/sbin/cryptsetup
==== Archlinux style 000-kernel.xzm (Nemesis, APorteus)

Code: Select all

# lsxzm UP.APorteus-v21.01.21-x86_64.iso-000-kernel.xzm
---------------------
/etc
/etc/modprobe.d
/etc/modprobe.d/b43_blacklist.conf
/lib
/sbin
/usr
/usr/bin
/usr/bin/cryptsetup
/usr/lib
/usr/lib/firmware
/usr/lib/firmware/3com
/usr/lib/firmware/3com/typhoon.bin
/usr/lib/firmware/BCM2033-FW.bin
/usr/lib/firmware/BCM2033-MD.hex
/usr/lib/firmware/RTL8192E
/usr/lib/firmware/RTL8192E/boot.img
/usr/lib/firmware/RTL8192E/data.img
/usr/lib/firmware/RTL8192E/main.img
/usr/lib/firmware/acenic
/usr/lib/firmware/acenic/tg1.bin
/usr/lib/firmware/acenic/tg2.bin
/usr/lib/firmware/adaptec
/usr/lib/firmware/adaptec/starfire_rx.bin
-----------
/usr/lib/firmware/zd1211
/usr/lib/firmware/zd1211/zd1211_ub
/usr/lib/firmware/zd1211/zd1211_uphr
/usr/lib/firmware/zd1211/zd1211_ur
/usr/lib/firmware/zd1211/zd1211b_ub
/usr/lib/firmware/zd1211/zd1211b_uphr
/usr/lib/firmware/zd1211/zd1211b_ur
/usr/lib/modules
/usr/lib/modules/5.10.11-porteus
/usr/lib/modules/5.10.11-porteus/build
/usr/lib/modules/5.10.11-porteus/kernel
/usr/lib/modules/5.10.11-porteus/kernel/arch
/usr/lib/modules/5.10.11-porteus/kernel/arch/x86
/usr/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto
/usr/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/aesni-intel.ko
/usr/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/blake2s-x86_64.ko
/usr/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/blowfish-x86_64.ko
/usr/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/camellia-aesni-avx-x86_64.ko
/usr/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/camellia-aesni-avx2.ko
/usr/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/camellia-x86_64.ko
/usr/lib/modules/5.10.11-porteus/kernel/arch/x86/crypto/cast5-avx-x86_64.ko
----
/usr/lib/modules/5.10.11-porteus/kernel/virt/lib
/usr/lib/modules/5.10.11-porteus/kernel/virt/lib/irqbypass.ko
/usr/lib/modules/5.10.11-porteus/modules.alias
/usr/lib/modules/5.10.11-porteus/modules.alias.bin
/usr/lib/modules/5.10.11-porteus/modules.builtin
/usr/lib/modules/5.10.11-porteus/modules.builtin.alias.bin
/usr/lib/modules/5.10.11-porteus/modules.builtin.bin
/usr/lib/modules/5.10.11-porteus/modules.builtin.modinfo
/usr/lib/modules/5.10.11-porteus/modules.dep
/usr/lib/modules/5.10.11-porteus/modules.dep.bin
/usr/lib/modules/5.10.11-porteus/modules.devname
/usr/lib/modules/5.10.11-porteus/modules.order
/usr/lib/modules/5.10.11-porteus/modules.softdep
/usr/lib/modules/5.10.11-porteus/modules.symbols
/usr/lib/modules/5.10.11-porteus/modules.symbols.bin
/usr/lib/modules/5.10.11-porteus/source
Thanks.

Porteus Kernel Builder

Posted: 29 Jan 2021, 10:52
by M. Eerie
neko wrote:
29 Jan 2021, 10:12
Yes, it can be used
Thank you neko. :)

Is there any mediafire link to the related 5.10.11 iso?