
Nice to know it's in a module! Thanks for the tip.Sakaki wrote:If there are any features missing from the kernel you feel would be generally useful, feel free to submit a PR against the conform_config.sh script of bcmrpi3-kernel-bis (and/or bcm2711-kernel-bis, for the RPi4), which are the weekly autobuilds that supply the kernels. Here's an example.spork_kitty wrote:Are there any plans to add nftables support? I checked out /boot/config and saw something about XTABLES. None of the family support appears to be there, either.
If that file is incorrect, my apologies. I didn't see /proc/config.gz either, to check what the running kernel is using. Which package do you build your kernels from? I can try building my own from it to enable nftables.
BTW the reason you can't see /proc/config.gz is that to save RAM, bcm{rpi3,2711}_defconfig specify this feature be built as a module. If you "sudo modprobe configs", /proc/config.gz should magically appear ^-^
Code: Select all
# modprobe configs
modprobe: FATAL: Module config not found in directory /lib/modules/4.19.49-v8-4395da031338-bis+
Have you seen this thread re UAS on the Pi4?NeddySeagoon wrote:Sakaki,
I had to revert the firmware change as dmesg filled up withOh, that's UAS in use. Its fine with the old firmware.Code: Select all
... [ 969.734489] scsi host0: uas_eh_device_reset_handler start [ 969.863916] usb 2-2: reset SuperSpeed Gen 1 USB device number 2 using xhci_hcd [ 969.891451] scsi host0: uas_eh_device_reset_handler success [ 1000.470943] sd 0:0:0:0: [sda] tag#6 uas_eh_abort_handler 0 uas-tag 1 inflight: IN [ 1000.470954] sd 0:0:0:0: [sda] tag#6 CDB: opcode=0x28 28 00 1b e2 38 91 00 01 00 00 [ 1000.486938] scsi host0: uas_eh_device_reset_handler start [ 1000.616014] usb 2-2: reset SuperSpeed Gen 1 USB device number 2 using xhci_hcd [ 1000.642181] scsi host0: uas_eh_device_reset_handler success ...


Derp; that was indeed the issue! Thanks for such a quick response.Sakaki wrote:spork_kitty,
if you have updated fully, your kernel will have been updated, to 4.19.66...
In which case, your old /lib/modules/4.19.48... directory will no longer exist. Reboot, and then try the modprobe again.
Code: Select all
# modprobe nf_tables
modprobe: FATAL: Module nf_tables not found in directory /lib/modules/4.19.66-v8-fc5826fb999e-bis+
# uname -a
Linux dootdoot 4.19.66-v8-fc5826fb999e-bis+ #2 SMP PREEMPT Fri Aug 16 13:29:15 GMT 2019 aarch64 GNU/Linux
# insmod /lib/modules/4.19.66-v8-7ee8d72eeb56-bis+/kernel/net/netfilter/nf_tables.ko
insmod: ERROR: could not insert module /lib/modules/4.19.66-v8-7ee8d72eeb56-bis+/kernel/net/netfilter/nf_tables.ko: Unknown symbol in module
# objdump -s -j .gnu.linkonce.this_module /lib/modules/4.19.66-v8-7ee8d72eeb56-bis+/kernel/net/netfilter/nf_tables.ko
/lib/modules/4.19.66-v8-7ee8d72eeb56-bis+/kernel/net/netfilter/nf_tables.ko: file format elf64-littleaarch64
Contents of section .gnu.linkonce.this_module:
0000 00000000 00000000 00000000 00000000 ................
0010 00000000 00000000 6e665f74 61626c65 ........nf_table
0020 73000000 00000000 00000000 00000000 s...............
0030 00000000 00000000 00000000 00000000 ................
0040 00000000 00000000 00000000 00000000 ................
0050 00000000 00000000 00000000 00000000 ................
0060 00000000 00000000 00000000 00000000 ................
0070 00000000 00000000 00000000 00000000 ................
0080 00000000 00000000 00000000 00000000 ................
0090 00000000 00000000 00000000 00000000 ................
00a0 00000000 00000000 00000000 00000000 ................
00b0 00000000 00000000 00000000 00000000 ................
00c0 00000000 00000000 00000000 00000000 ................
00d0 00000000 00000000 00000000 00000000 ................
00e0 00000000 00000000 00000000 00000000 ................
00f0 00000000 00000000 00000000 00000000 ................
0100 00000000 00000000 00000000 00000000 ................
0110 00000000 00000000 00000000 00000000 ................
0120 00000000 00000000 00000000 00000000 ................
0130 00000000 00000000 00000000 00000000 ................
0140 00000000 00000000 00000000 00000000 ................
0150 00000000 00000000 00000000 00000000 ................
0160 00000000 00000000 00000000 00000000 ................
0170 00000000 00000000 00000000 00000000 ................
0180 00000000 00000000 00000000 00000000 ................
0190 00000000 00000000 00000000 00000000 ................
01a0 00000000 00000000 00000000 00000000 ................
01b0 00000000 00000000 00000000 00000000 ................
01c0 00000000 00000000 00000000 00000000 ................
01d0 00000000 00000000 00000000 00000000 ................
01e0 00000000 00000000 00000000 00000000 ................
01f0 00000000 00000000 00000000 00000000 ................
0200 00000000 00000000 00000000 00000000 ................
0210 00000000 00000000 00000000 00000000 ................
0220 00000000 00000000 00000000 00000000 ................
0230 00000000 00000000 00000000 00000000 ................
0240 00000000 00000000 00000000 00000000 ................
0250 00000000 00000000 00000000 00000000 ................
0260 00000000 00000000 00000000 00000000 ................
0270 00000000 00000000 00000000 00000000 ................
0280 00000000 00000000 00000000 00000000 ................
0290 00000000 00000000 00000000 00000000 ................
02a0 00000000 00000000 00000000 00000000 ................
02b0 00000000 00000000 00000000 00000000 ................
02c0 00000000 00000000 00000000 00000000 ................
02d0 00000000 00000000 00000000 00000000 ................
02e0 00000000 00000000 00000000 00000000 ................
02f0 00000000 00000000 00000000 00000000 ................
0300 00000000 00000000 00000000 00000000 ................
0310 00000000 00000000 00000000 00000000 ................
0320 00000000 00000000 00000000 00000000 ................
0330 00000000 00000000 00000000 00000000 ................
modprobe nf_tables works for me on 4.19.66-v8-7ee8d72eeb56-bis+spork_kitty wrote: EDIT: I see that conform_config.sh has nftables support enabled via module. I have rebooted my Pi and confirmed that `uname` output matches the dir it searches for modules. `modprobe nf_tables` doesn't work:
Not sure what's going on.Code: Select all
# modprobe nf_tables modprobe: FATAL: Module nf_tables not found in directory /lib/modules/4.19.66-v8-fc5826fb999e-bis+ # uname -a Linux dootdoot 4.19.66-v8-fc5826fb999e-bis+ #2 SMP PREEMPT Fri Aug 16 13:29:15 GMT 2019 aarch64 GNU/Linux # insmod /lib/modules/4.19.66-v8-7ee8d72eeb56-bis+/kernel/net/netfilter/nf_tables.ko insmod: ERROR: could not insert module /lib/modules/4.19.66-v8-7ee8d72eeb56-bis+/kernel/net/netfilter/nf_tables.ko: Unknown symbol in module ...
Code: Select all
# emerge -v1 bcm2711-kernel-bis-bin bcmrpi3-kernel-bis-bin
Sakaki wrote:modprobe nf_tables works for me on 4.19.66-v8-7ee8d72eeb56-bis+spork_kitty wrote: EDIT: I see that conform_config.sh has nftables support enabled via module. I have rebooted my Pi and confirmed that `uname` output matches the dir it searches for modules. `modprobe nf_tables` doesn't work:
Not sure what's going on.Code: Select all
# modprobe nf_tables modprobe: FATAL: Module nf_tables not found in directory /lib/modules/4.19.66-v8-fc5826fb999e-bis+ # uname -a Linux dootdoot 4.19.66-v8-fc5826fb999e-bis+ #2 SMP PREEMPT Fri Aug 16 13:29:15 GMT 2019 aarch64 GNU/Linux # insmod /lib/modules/4.19.66-v8-7ee8d72eeb56-bis+/kernel/net/netfilter/nf_tables.ko insmod: ERROR: could not insert module /lib/modules/4.19.66-v8-7ee8d72eeb56-bis+/kernel/net/netfilter/nf_tables.ko: Unknown symbol in module ...
Something looks to have gone wrong with your kernel update. You are booted with 4.19.66-v8-fc5826fb999e-bis+ (uname -a) but have the more modern /lib/modules directory (4.19.66-v8-7ee8d72eeb56-bis+). Are you sure /boot is mounted OK? Do you have perhaps a split /boot and /root (/boot on microSD card say, and /root on a USB drive or similar)?
If you are sure your real /boot is mounted OK you can just:
To forcibly re-emerge the kernels. Then reboot and try again.Code: Select all
# emerge -v1 bcm2711-kernel-bis-bin bcmrpi3-kernel-bis-bin
Code: Select all
# mount | grep /boot
/dev/mmcblk0p1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro)
# df -h /boot
Filesystem Size Used Avail Use% Mounted on
/dev/mmcblk0p1 63M 44M 20M 70% /boot
Code: Select all
# df -h /boot
Filesystem Size Used Avail Use% Mounted on
/dev/mmcblk0p1 63M 62M 1.7M 98% /boot
# ls -Alh /boot
total 60M
drwxr-xr-x 5 root root 8.0K Jan 21 2017 .Trash-1000
-rwxr-xr-x 1 root root 423 Aug 24 04:55 COPYING.linux
-rwxr-xr-x 1 root root 1.5K Aug 22 11:21 LICENCE.broadcom
-rwxr-xr-x 1 root root 3.2M Aug 25 09:25 System-p4.map
-rwxr-xr-x 1 root root 2.9M Aug 24 04:55 System.map
-rwxr-xr-x 1 root root 512 Aug 25 09:25 armstub8-gic.bin
-rwxr-xr-x 1 root root 27K Aug 24 04:55 bcm2710-rpi-3-b-plus.dtb
-rwxr-xr-x 1 root root 26K Aug 24 04:55 bcm2710-rpi-3-b.dtb
-rwxr-xr-x 1 root root 25K Aug 24 04:55 bcm2710-rpi-cm3.dtb
-rwxr-xr-x 1 root root 40K Aug 25 09:25 bcm2711-rpi-4-b.dtb
-rwxr-xr-x 1 root root 20K Aug 24 04:55 bcm2837-rpi-3-b.dtb
-rwxr-xr-x 1 root root 52K Aug 22 11:21 bootcode.bin
-rwxr-xr-x 1 root root 106 Aug 23 06:23 cmdline.txt
-rwxr-xr-x 1 root root 153K Aug 24 04:55 config
-rwxr-xr-x 1 root root 174K Aug 25 09:25 config-p4
-rwxr-xr-x 1 root root 2.4K Jul 14 01:26 config.txt
-rwxr-xr-x 1 root root 6.6K Aug 22 11:21 fixup.dat
-rwxr-xr-x 1 root root 6.0K Aug 22 11:21 fixup4.dat
-rwxr-xr-x 1 root root 3.0K Aug 22 11:21 fixup4cd.dat
-rwxr-xr-x 1 root root 9.0K Aug 22 11:21 fixup4db.dat
-rwxr-xr-x 1 root root 9.0K Aug 22 11:21 fixup4x.dat
-rwxr-xr-x 1 root root 2.6K Aug 22 11:21 fixup_cd.dat
-rwxr-xr-x 1 root root 9.6K Aug 22 11:21 fixup_db.dat
-rwxr-xr-x 1 root root 9.6K Aug 22 11:21 fixup_x.dat
-rwxr-xr-x 1 root root 15M Aug 25 09:25 kernel8-p4.img
-rwxr-xr-x 1 root root 16M Aug 24 04:55 kernel8.img
drwxr-xr-x 2 root root 16K Aug 25 09:24 overlays
-rwxr-xr-x 1 root root 2.8M Aug 22 11:21 start.elf
-rwxr-xr-x 1 root root 2.7M Aug 22 11:21 start4.elf
-rwxr-xr-x 1 root root 748K Aug 22 11:21 start4cd.elf
-rwxr-xr-x 1 root root 4.6M Aug 22 11:21 start4db.elf
-rwxr-xr-x 1 root root 3.6M Aug 22 11:21 start4x.elf
-rwxr-xr-x 1 root root 670K Aug 22 11:21 start_cd.elf
-rwxr-xr-x 1 root root 4.7M Aug 22 11:21 start_db.elf
-rwxr-xr-x 1 root root 3.7M Aug 22 11:21 start_x.elf

Aha, no worries. Who could have predicted there'd be a need for more kernels? At least it wasn't pebcak this time.Sakaki wrote:spork_kitty,
depending on your target, you could remove some of the start*.elf files, the System*.map files and unused entries in overlays/.
However, I don't recommend that - it's only a short term fix as these files will get reinstalled when the relevant underlying packages upgrade (and eventually, you will run out of space). Unfortunately, when I put together the v1.0.0 gentoo-on-rpi3-64bit image way back in Jan 2017, I used a 63MiB bootfs as that was what Raspbian used back then. Turns out that was a mistake / hostage to fortune, and I should have chosen a larger partition (to provide room for the dual kernels of an RPi3/4 image, etc. in the future) Apologies ><
As such, I recommend to grow the boot partition and filesystem to 255MiB when upgrading to v1.5.0, shrinking (and moving forward) the root partition and filesystem to create the necessary space. (The v1.5.0 downloadable image ships with this resize already done.)
The gparted tool provides a nice GUI-driven way to achieve the above changes.
Code: Select all
# modprobe nf_tables_ipv4
modprobe: FATAL: Module nf_tables_ipv4 not found in directory /lib/modules/4.19.66-v8-7ee8d72eeb56-bis+
# uname -a
Linux dootdoot 4.19.66-v8-7ee8d72eeb56-bis+ #2 SMP PREEMPT Tue Aug 20 13:29:50 GMT 2019 aarch64 GNU/Linux
# zgrep CONFIG_NF_TABLES /proc/config.gz
CONFIG_NF_TABLES=m
# CONFIG_NF_TABLES_SET is not set
# CONFIG_NF_TABLES_INET is not set
# CONFIG_NF_TABLES_NETDEV is not set
# CONFIG_NF_TABLES_IPV4 is not set
# CONFIG_NF_TABLES_ARP is not set
# CONFIG_NF_TABLES_IPV6 is not set
# CONFIG_NF_TABLES_BRIDGE is not set
# lsmod
Module Size Used by
configs 53248 0
nf_nat 36864 0
nft_ct 20480 0
nf_conntrack 135168 2 nf_nat,nft_ct
nf_defrag_ipv6 20480 1 nf_conntrack
nf_defrag_ipv4 16384 1 nf_conntrack
nf_tables 118784 1 nft_ct
nfnetlink 20480 1 nf_tables
lz4 16384 4
lz4_compress 45056 1 lz4
hci_uart 40960 1
btbcm 16384 1 hci_uart
serdev 20480 1 hci_uart
bnep 24576 2
bluetooth 405504 24 hci_uart,btbcm,bnep
ecdh_generic 28672 1 bluetooth
ipv6 466944 32
brcmfmac 237568 0
brcmutil 16384 1 brcmfmac
sha256_generic 20480 0
bcm2835_codec 40960 0
bcm2835_v4l2 45056 0
v4l2_mem2mem 24576 1 bcm2835_codec
cfg80211 643072 1 brcmfmac
bcm2835_mmal_vchiq 28672 2 bcm2835_codec,bcm2835_v4l2
videobuf2_vmalloc 16384 1 bcm2835_v4l2
videobuf2_dma_contig 20480 1 bcm2835_codec
videobuf2_memops 16384 2 videobuf2_vmalloc,videobuf2_dma_contig
videobuf2_v4l2 24576 3 bcm2835_codec,bcm2835_v4l2,v4l2_mem2mem
rfkill 28672 5 bluetooth,cfg80211
videobuf2_common 45056 4 bcm2835_codec,videobuf2_v4l2,bcm2835_v4l2,v4l2_mem2mem
v4l2_common 16384 1 bcm2835_v4l2
videodev 229376 6 bcm2835_codec,v4l2_common,videobuf2_v4l2,bcm2835_v4l2,videobuf2_common,v4l2_mem2mem
snd_bcm2835 28672 0
uas 24576 0
media 36864 2 videodev,v4l2_mem2mem
snd_pcm 114688 1 snd_bcm2835
vc_sm_cma 32768 1 bcm2835_mmal_vchiq
snd_timer 36864 1 snd_pcm
snd 77824 3 snd_bcm2835,snd_timer,snd_pcm
vchiq 323584 3 vc_sm_cma,snd_bcm2835,bcm2835_mmal_vchiq
sdhci_iproc 16384 0
spi_bcm2835 20480 0
uio_pdrv_genirq 16384 0
uio 20480 1 uio_pdrv_genirq
Code: Select all
dtoverlay=gpio-fan,gpiopin=18,temp=65000You can use the V4L2 M2M endpoints to access the hardware codecs. Please see my response on your other thread (here).axl wrote:ANYWAY. New question. I'm pretty sure I know the answer to this already, but I would feel much better if the answer came out of someone else's mouth.
My assumption is that without USE=mmal (not available in 64 bits/aarch64), or sometime(s) marked as USE=raspberry-pi (also not available in 64 bits), there's no hardware accelerated video decoding.
Therefor... whatever you do, in 64 bits, you will not be able to make kodi work right. nor build omxplayer at all. ATM. At This Moment.
Anyone care to confirm this?

Code: Select all
emerge -c <list of packages in world that I don't want>
emerge --depclean -pDitto with all Neddy has said above.n1ese wrote:Sakaki, good day,
Using your Lite image, would it be overly difficult, other than time consuming, for one to build X11 with the VC4 driver? I don't want a complete desktop environment just an old school, lightweight, window manager. I have no need for LibreOffice or many of the other apps you include with your full image as well.
Thanks
Code: Select all
pi64 ~ # emerge -v xorg-server xterm xsetroot xclock openbox
Code: Select all
pi64 ~ # su - demouser
demouser@pi64 ~ $ nano -w ~/.xinitrc
Code: Select all
openbox &
xsetroot -solid CornflowerBlue &
xclock -geometry 100x100-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login
Code: Select all
demouser@pi64 ~ $ startx