Sample Header Ad - 728x90

Unix & Linux Stack Exchange

Q&A for users of Linux, FreeBSD and other Unix-like operating systems

Latest Questions

0 votes
0 answers
9 views
BUG: Bad page state in process swapper pfn:801bd while booting linux (5.15.68, arm64)
I'm tyring to boot linux on an SoC (arm64 based) and seeing trap in early stage. Here is the boot message. Booting Linux on physical CPU 0x0000000002 [0x411fd401] Linux version 5.15.68 (etri@AB21-T07) (aarch64-none-elf-gcc (GNU Toolchain for the Arm Architecture 11.2-2022.02 (arm-11.14)) 11.2.1 2022...
I'm tyring to boot linux on an SoC (arm64 based) and seeing trap in early stage. Here is the boot message. Booting Linux on physical CPU 0x0000000002 [0x411fd401] Linux version 5.15.68 (etri@AB21-T07) (aarch64-none-elf-gcc (GNU Toolchain for the Arm Architecture 11.2-2022.02 (arm-11.14)) 11.2.1 20220111, GNU ld (GNU Toolchain for the Arm Architecture 11.2-2022.02 (arm-11.14)) 2.37.20220122) #106 SMP PREEMPT Sun Jun 29 20:47:09 KST 2025 Machine model: ETRI ab21m earlycon: ns16550a0 at MMIO 0x0000000010220020 (options '115200n8') printk: bootconsole [ns16550a0] enabled Reserved memory: created CMA memory pool at 0x00000000f0000000, size 256 MiB OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool Reserved memory: created DMA memory pool at 0x00000000e0000000, size 128 MiB OF: reserved mem: initialized node axpursvd@e0000000, compatible id shared-dma-pool Zone ranges: DMA [mem 0x0000000080000000-0x00000000ffffffff] DMA32 empty Normal empty Movable zone start for each node Early memory node ranges node 0: [mem 0x0000000080000000-0x00000000dfffffff] node 0: [mem 0x00000000e0000000-0x00000000e7ffffff] node 0: [mem 0x00000000e8000000-0x00000000ffffffff] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff] percpu: Embedded 23 pages/cpu s57312 r8192 d28704 u94208 Detected PIPT I-cache on CPU0 CPU features: detected: GIC system register CPU interface CPU features: detected: Virtualization Host Extensions CPU features: detected: Hardware dirty bit management CPU features: detected: Spectre-v4 CPU features: detected: Spectre-BHB alternatives: patching kernel code Built 1 zonelists, mobility grouping on. Total pages: 517120 Kernel command line: earlycon root=/dev/ram init=/init nokaslr, cpuidle.off=1 Unknown kernel command line parameters "nokaslr,", will be passed to user space. Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear) Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear) entering mm_init.. mem auto-init: stack:off, heap alloc:off, heap free:off BUG: Bad page state in process swapper pfn:801bd ------------[ cut here ]------------ kernel BUG at arch/arm64/kernel/traps.c:498! Internal error: Oops - BUG: 0 [#1] PREEMPT SMP Modules linked in: CPU: 0 PID: 0 Comm: swapper Not tainted 5.15.68 #106 Hardware name: ETRI ab21m (DT) pstate: 000000c9 (nzcv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : do_undefinstr+0x180/0x1a4 lr : do_undefinstr+0x194/0x1a4 sp : ffffffc008693ad0 x29: ffffffc008693ad0 x28: ffffffc00869a100 x27: 000000000030f231 x26: fffffffe00007000 x25: 0000000080000000 x24: 0000000000000008 x23: 00000000800000c9 x22: ffffffc00813c810 x21: ffffffc008693c90 x20: 00000000ffffffff x19: ffffffc008693b40 x18: ffffffffffffffff x17: 2c73657479622036 x16: 373538343031202c x15: ffffffc008701fcd x14: 0000000000000000 x13: ffffffc0086a78f8 x12: 0000000000000072 x11: 0000000000000026 x10: ffffffc0086a78f8 x9 : ffffffc0086a78f8 x8 : 00000000ffffff7f x7 : ffffffc0086aa4f8 x6 : ffffffc0086aa4f8 x5 : ffffffc00869bca8 x4 : fffffffffefffffe x3 : 0000000000000000 x2 : 0000000000000002 x1 : ffffffc00869a100 x0 : 00000000800000c9 Call trace: do_undefinstr+0x180/0x1a4 el1_undef+0x28/0x44 el1h_64_sync_handler+0x80/0xc0 el1h_64_sync+0x74/0x78 __dump_page+0x0/0x410 bad_page+0xe8/0x120 __free_pages_ok+0x418/0x460 __free_pages_core+0xa8/0xc0 memblock_free_pages+0x10/0x18 memblock_free_all+0x1ac/0x258 mem_init+0x70/0x88 mm_init+0x2c/0x78 start_kernel+0x260/0x64c __primary_switched+0xa0/0xac Code: b94037f4 a9025bf5 17ffffca a9025bf5 (d4210000) ------------[ cut here ]------------ kernel BUG at arch/arm64/kernel/traps.c:498! I think my device tree have something wrong. This is the line related to memory, and I don't know what is wrong. Can any one notice anything suspicous? memory@80000000 { device_type = "memory"; /*reg = , trusted ram */ /*, non-trusted ram */ reg = ; }; reserved-memory { #address-cells = ; #size-cells = ; ranges; axpu_reserved_mem: axpursvd@e0000000 { compatible = "shared-dma-pool"; no-map; reg = ; }; linux,cma { compatible = "shared-dma-pool"; reusable; size = ; alloc-ranges = ; linux,cma-default; }; };
Chan Kim (459 rep)
Jun 30, 2025, 03:13 AM
3 votes
1 answers
5268 views
`aarch64-linux-musl-cross` has a broken link for `ld-musl-aarch64.so.1`
# The goal I want to run an ARM64 Go binary on x86_64 Kali Linux using QEMU user mode. # The problem I got `aarch64-linux-musl-cross`. ``` ~$ wget https://musl.cc/aarch64-linux-musl-cross.tgz ~$ tar -xvf aarch64-linux-musl-cross.tgz ``` I then used `~/aarch64-linux-musl-cross/bin/aarch64-linux-musl-...
# The goal I want to run an ARM64 Go binary on x86_64 Kali Linux using QEMU user mode. # The problem I got aarch64-linux-musl-cross.
~$ wget https://musl.cc/aarch64-linux-musl-cross.tgz 
~$ tar -xvf aarch64-linux-musl-cross.tgz
I then used ~/aarch64-linux-musl-cross/bin/aarch64-linux-musl-gcc to compile a simple hello world Go program. It compiled exactly as I wanted it to.
~/go_projects/bin$ file hello
hello: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-musl-aarch64.so.1, Go BuildID=-37pQ_4dEsp4pnAgj4QV/0unDR_0nE-A-DsF1SfKd/-8CRGAArG5J0XNspP2M-/u6ChmkaiRo9qoxEE15eo, not stripped
But, for some reason, the interpreter ~/aarch64-linux-musl-cross/aarch64-linux-musl/lib/ld-musl-aarch64.so.1 is a broken link to /lib/libc.so. I have a file /usr/aarch64-linux-gnu/lib/libc.so but it's just a text file.
~$ file /usr/aarch64-linux-gnu/lib/libc.so
/usr/aarch64-linux-gnu/lib/libc.so: ASCII text
~$ cat /usr/aarch64-linux-gnu/lib/libc.so
/* GNU ld script
   Use the shared library, but some functions are only in
   the static library, so try that secondarily.  */
OUTPUT_FORMAT(elf64-littleaarch64)
GROUP ( /usr/aarch64-linux-gnu/lib/libc.so.6 /usr/aarch64-linux-gnu/lib/libc_nonshared.a  AS_NEEDED ( /usr/aarch64-linux-gnu/lib/ld-linux-aarch64.so.1 ) )
What is the link ld-musl-aarch64.so.1 supposed to point to?
Revoltechs (135 rep)
Nov 18, 2020, 05:01 AM • Last activity: Jun 16, 2025, 09:06 PM
1 votes
1 answers
2275 views
Command not found when In chroot
Im currently Porting Arch Linux to My phone and I am trying to set up the rootfs properly - have it installed to an external scdard and am using busybox to chroot into it with busybox chroot /data/ local/mnt sh I can see pacman exists when I search for it: /usr/bin # type -a pacman returns /sbin/pac...
Im currently Porting Arch Linux to My phone and I am trying to set up the rootfs properly - have it installed to an external scdard and am using busybox to chroot into it with busybox chroot /data/ local/mnt sh I can see pacman exists when I search for it: /usr/bin # type -a pacman returns /sbin/pacman but whenever I try to install the base system with: pacman -S base-devel 1lightdm xorg-xinit xfce4 networkmanager --needed I get sh: pacman: not found
Bilal Ahmed (11 rep)
Mar 13, 2022, 10:57 PM • Last activity: Jun 16, 2025, 01:01 AM
2 votes
1 answers
2558 views
Crosscompile go(lang) app with docker for alpine linux (musl) aarch64 with native libs so CGO enabled
## Background I'm writing an open-source GTK go app subsonic API client which: - targets on first place mobile friendly Linux like [postmarketOS][1] (alpine linux), [Mobian][2] (debian) - in future will be also extended to desktop Linux, Windows and Mac OS but not Android or iOS as they already have...
## Background I'm writing an open-source GTK go app subsonic API client which: - targets on first place mobile friendly Linux like postmarketOS (alpine linux), Mobian (debian) - in future will be also extended to desktop Linux, Windows and Mac OS but not Android or iOS as they already have one. - needs to be available at least on aarch64 and x86_64 - depends on native libs like portaudio, libasound, libopus - so it needs CGO to be enabled I haven't published app yet as I self-host my git and I have to do some additional config. It won't be available until late october 2021. App successfully compiles (on host) and runs on my main PC which is x86_64 fedora. App successfully compiles (on docker) and runs on aarch64 **glibc** distros like Mobian This is Dockerfile:
`
FROM golang:1.17-bullseye
LABEL os=linux
LABEL arch=arm64
ENV GOOS=linux
ENV GOARCH=arm64
ENV CGO_ENABLED=1
ENV CC=aarch64-linux-gnu-gcc
ENV PATH="/go/bin/${GOOS}_${GOARCH}:${PATH}"
ENV PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig
# install build & runtime dependencies
RUN dpkg --add-architecture arm64 
RUN apt update && apt upgrade -y 
RUN apt install -y --no-install-recommends \
        protobuf-compiler \
        upx \
        gcc-aarch64-linux-gnu \
        libc6-dev-arm64-cross \
        pkg-config \
        libasound2-dev:arm64 \
    	libgtk-3-dev:arm64 \
    	libcairo2-dev:arm64 \
    	libglib2.0-dev:arm64 \
    	libgdk-pixbuf2.0-dev:arm64 \
        libsamplerate0:arm64 \
        libsamplerate0-dev:arm64 \
        libopusfile0:arm64 \
        libopusfile-dev:arm64 \
        libopus0:arm64 \
        libopus-dev:arm64 \
        libportaudio2:arm64 \
        portaudio19-dev:arm64 
# install build dependencies (code generators)
RUN go get github.com/hajimehoshi/oto \
    && go get github.com/faiface/beep \
    && go get github.com/faiface/beep/flac \
    && go get github.com/faiface/beep/speaker \
    && go get github.com/faiface/beep/mp3 \
    && go get github.com/faiface/beep/vorbis \
    && go get github.com/faiface/beep/wav\
    && go get github.com/gotk3/gotk3 \
    && go get github.com/delucks/go-subsonic \
    && go get github.com/hashicorp/go-retryablehttp \
    && go get github.com/zalando/go-keyring \
    && go get github.com/emirpasic/gods/lists/ \
    && go get github.com/emirpasic/gods/lists/arraylist \
` ## Problems 1. I can't run Mobian working binary on postmarketOS as alpine linux uses musl instead. file output is: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, (...) for GNU/Linux 3.7.0. not stripped. 2. I haven't manged to use musl toolchain in docker debian as it is 32 binary executable and image is 64 bit. 3. I couldn't find anything about multiarch in alpine so probably I can't use docker image goalng:1.17-alpine on x86_64 (I'd have also to find native libs packaged) I wish it's just problem with my config, if it's possible I'd love solution with docker as I'd like to use CI/CD in future. ## Resources, ideas, workarounds - I have raspberry pi with debian installed with some services. I could use with native musl toolchain and debian aarch64 docker container but it's not handy in production pipeline. Also, I haven't tried this. ## Good to read 1. Crosscompile CGO projects (also with docker) 2. Crosscompile with cross-platform musl toolchains 3. Related stackoverflow thread about alpine linux and go binaries
BigB (21 rep)
Aug 27, 2021, 09:27 PM • Last activity: May 10, 2025, 10:03 PM
1 votes
0 answers
47 views
ARM64 commands take seconds to finish
I'm on an ARM board running Linux. The hardware is a vehicle domain control board which has 6 core ARM Cortex-A78AE and some machine learning cores. I don't want to reboot it because It might be a hardware or driver bug? which might be the reason that causes my performance loss issue. ```none root@h...
I'm on an ARM board running Linux. The hardware is a vehicle domain control board which has 6 core ARM Cortex-A78AE and some machine learning cores. I don't want to reboot it because It might be a hardware or driver bug? which might be the reason that causes my performance loss issue.
root@hobot:~# uname -a
Linux hobot 6.1.94-rt33 #1 SMP PREEMPT_RT Fri Nov  8 15:11:35 CST 2024 aarch64 GNU/Linux
I don't know what happend with my OS today, I just suddenly found out that shell commands takes too long to finish. but everything was fine a little while ago. like: enter image description here As you can see, ls takes about over 5 seconds and it takes 100% CPU in core 4th. I tried strace with ls. It get stuck in nothing. enter image description here What should I monitor to find out what happened?
Xingx1 (11 rep)
Feb 23, 2025, 06:22 AM • Last activity: Feb 23, 2025, 07:45 AM
0 votes
1 answers
620 views
Is it possible to build an up-to-date version of the g++ (14/13) on Raspberry Pi running Debian 12 arm64?
I am puzzled. There is seemingly no newer Debian image for Raspberry Pi than the current stable version 12 (`bookworm`). I have downloaded and installed it just when it went out without issues, I remember. [Link to all tested images here][1]. My Pi's HW is _4 (8GB)_. Just to be clear, I am all Ok wi...
I am puzzled. There is seemingly no newer Debian image for Raspberry Pi than the current stable version 12 (bookworm). I have downloaded and installed it just when it went out without issues, I remember. Link to all tested images here . My Pi's HW is _4 (8GB)_. Just to be clear, I am all Ok with Debian's aim to be rock-stable. Just one thing, if I may poke. *** I wonder if it is possible to build an up-to-date version of the g++ (14) on my arm64 Raspberry Pi running Debian 12? (Today, I somewhat needed it, but found out, an older g++-12 available _only_, it caused me only minor trouble this time.) And if yes, how would I proceed exactly? I have no clue. *** Here is what g++ versions I found available on Linux Mint 22 (based on Ubuntu Noble), i.e. version 10+:
$ apt-cache policy g++-1[0-9] | grep -A 2 '^g++-1'

g++-10:
  Installed: (none)
  Candidate: 10.5.0-4ubuntu2
--
g++-11:
  Installed: (none)
  Candidate: 11.4.0-9ubuntu1
--
g++-12:
  Installed: 12.3.0-17ubuntu1
  Candidate: 12.3.0-17ubuntu1
--
g++-13:
  Installed: 13.3.0-6ubuntu2~24.04
  Candidate: 13.3.0-6ubuntu2~24.04
--
g++-14:
  Installed: 14.2.0-4ubuntu2~24.04
  Candidate: 14.2.0-4ubuntu2~24.04
For reference, here are currently available versions on Pi's Debian 12, i.e. versions 10+, as above:
$ apt-cache policy g++-1[0-9] | grep -A 2 '^g++-1'

g++-10:
  Installed: (none)
  Candidate: (none)
--
g++-11:
  Installed: (none)
  Candidate: 11.3.0-12
--
g++-12:
  Installed: 12.2.0-14
  Candidate: 12.2.0-14
--
g++-13:
  Installed: (none)
  Candidate: (none)
*** Nope, no sign of g++-14, not even g++-13 available (yet). So, my question above stands. Thank you in advance.
Vlastimil Burián (30505 rep)
Dec 19, 2024, 08:17 PM • Last activity: Dec 19, 2024, 11:22 PM
1 votes
1 answers
165 views
How to create bootable Debian SD Card for an Allwinner SBC using a USB SD Card adapter?
I got Raspbian running on an old Raspberry Pi 2B to install Debian for the Olimex Lime 2. However, I read this warning on the Debian Wiki[\[1\]][1]: >These images are meant for the SD card slot on the device and will not work when SD card is inserted into USB based SD card readers. Once the installe...
I got Raspbian running on an old Raspberry Pi 2B to install Debian for the Olimex Lime 2. However, I read this warning on the Debian Wiki[\[1\]][1] : >These images are meant for the SD card slot on the device and will not work when SD card is inserted into USB based SD card readers. Once the installer is started, it runs completely in the system's RAM and does not need to load anything from the SD card anymore, so you can delete all existing partitions and use the full card for installing Debian. It is recommended to use the "guided partitioning" option in the installer to create a proper partition layout on the SD card. I do not think that any of my devices have have built-in readers for SD cards except the Olimex itself. How can I create a bootable SD card for the Lime 2 using a USB adapter? Is it possible to do so? Or must I utilize a laptop with a built in SD card reader to make the image?
user2231142 (111 rep)
Oct 18, 2024, 10:52 PM • Last activity: Oct 19, 2024, 07:21 AM
0 votes
0 answers
128 views
Qemu - attempting to emulate Windows 10 with multiple cores
So I'm trying to get Qemu to use more cores on my Raspberry Pi 4b due to the poor performance on emulating Windows 10, but it seems to be using one of the cores, but not any others. I did use the -smp option, but that didn't work. I've tried solutions on the internet, but nothing is working. The sam...
So I'm trying to get Qemu to use more cores on my Raspberry Pi 4b due to the poor performance on emulating Windows 10, but it seems to be using one of the cores, but not any others. I did use the -smp option, but that didn't work. I've tried solutions on the internet, but nothing is working. The same thing is happening to Windows 7 too when I attempt to emulate it. What am I missing? Is there some config I'm missing, or is it just impossible for the Raspberry Pi to do anything like that? I am on the latest version of QEMU by the way (Referencing Answer here ) Command to run emulator:
qemu-system-x86_64 -M pc -m 4G -cpu qemu64 -smp sockets=1,cores=4,threads=4 -vga cirrus -device qemu-xhci -device usb-kbd -device usb-tablet -nic user,model=virtio-net-pci -vnc 0.0.0.0:2,websocket -drive file=meep.vhd,if=virtio,cache=writeback
LilData777 (101 rep)
Sep 5, 2024, 10:07 PM
0 votes
1 answers
267 views
How is my x86_64 machine is running an arm64 binary?
My machine's architecture is x86_64 and I've cross-compiled arm64 assembly (from [here](https://peterdn.com/post/2020/08/22/hello-world-in-arm64-assembly/)) into an executable. However the binary is still runnable on my machine... how? Here are the outputs to the following commands: ``` $ uname -r 6...
My machine's architecture is x86_64 and I've cross-compiled arm64 assembly (from [here](https://peterdn.com/post/2020/08/22/hello-world-in-arm64-assembly/)) into an executable. However the binary is still runnable on my machine... how? Here are the outputs to the following commands:
$ uname -r 
6.2.12-100.fc36.x86_64

$ file hello
hello: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), statically linked, stripped

$ ./hello
Hello, ARM64

$ qemu-aarch64-static hello
Hello, ARM64

$ qemu-x86_64-static hello
qemu-x86_64-static: hello: Invalid ELF image for this architecture

$ readelf -a hello 
ELF Header:
  Magic:   7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 
  Class:                             ELF64
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           AArch64
  Version:                           0x1
  Entry point address:               0x4000b0
  Start of program headers:          64 (bytes into file)
  Start of section headers:          264 (bytes into file)
  Flags:                             0x0
  Size of this header:               64 (bytes)
  Size of program headers:           56 (bytes)
  Number of program headers:         2
  Size of section headers:           64 (bytes)
  Number of section headers:         4
  Section header string table index: 3

Section Headers:
  [Nr] Name              Type             Address           Offset
       Size              EntSize          Flags  Link  Info  Align
  [ 0]                   NULL             0000000000000000  00000000
       0000000000000000  0000000000000000           0     0     0
  [ 1] .text             PROGBITS         00000000004000b0  000000b0
       0000000000000030  0000000000000000  AX       0     0     8
  [ 2] .data             PROGBITS         00000000004100e0  000000e0
       000000000000000d  0000000000000000  WA       0     0     1
  [ 3] .shstrtab         STRTAB           0000000000000000  000000ed
       0000000000000017  0000000000000000           0     0     1
Key to Flags:
  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),
  L (link order), O (extra OS processing required), G (group), T (TLS),
  C (compressed), x (unknown), o (OS specific), E (exclude),
  D (mbind), p (processor specific)

There are no section groups in this file.

Program Headers:
  Type           Offset             VirtAddr           PhysAddr
                 FileSiz            MemSiz              Flags  Align
  LOAD           0x0000000000000000 0x0000000000400000 0x0000000000400000
                 0x00000000000000e0 0x00000000000000e0  R E    0x10000
  LOAD           0x00000000000000e0 0x00000000004100e0 0x00000000004100e0
                 0x000000000000000d 0x000000000000000d  RW     0x10000

 Section to Segment mapping:
  Segment Sections...
   00     .text 
   01     .data 

There is no dynamic section in this file.

There are no relocations in this file.

The decoding of unwind sections for machine type AArch64 is not currently supported.

No version information found in this file.
arm.u (3 rep)
Jul 25, 2024, 11:41 PM • Last activity: Jul 27, 2024, 03:22 PM
1 votes
1 answers
2269 views
Unable to Get Kernel Crash Dump on Kernel Panic
I'm using kexec-tools to get a crash dump of kernel on kernel panic. However, when I trigger the panic using sysrq-trigger, the system freezes. I have to power off and then power on to restore the system. There is no automatic reboot and no crash dump is available in /var/crash. The following are th...
I'm using kexec-tools to get a crash dump of kernel on kernel panic. However, when I trigger the panic using sysrq-trigger, the system freezes. I have to power off and then power on to restore the system. There is no automatic reboot and no crash dump is available in /var/crash. The following are the configurations and details: - Linux Distro - Debian Buster arm64 - Linux Kernel - 4.19.35 - kexec-tools v2.0.22 (Built from source) - All Kernel Configs specifed here for arm64 enabled: https://www.kernel.org/doc/Documentation/kdump/kdump.txt Both the main kernel and crash kernel are exactly the same. (Although using uncompressed Image as crash kernel) /proc/cmdline = crashkernel=512M nokaslr # Along with other arguments The crash kernel space gets reserved (verified by dmesg) Loading crashkernel to kick-in on a kernel panic: $ sudo kexec -p ./Image --append=" root=/dev/sda1 console=same_as_main_kernel earlycon=same_as_main_kernel rootwait rw 1 max_cpus=1 reset_devices The root fs is same as that used for main kernel. Trigerring Kernel Panic: $ echo c | sudo tee /proc/sysrq-triggger The serial console freezes with standard kernel panic stacktrace. One of the logs specific to Kdump is: [14645.1099571] CPU: 2 PID: 20518 Comm: tee Kdump: loaded Not tainted 4.19.35-g9e41bb234b42 #2 The system however does not reboot. One thing to note is that I can boot into the crash kernel if I want to explicitly: $ sudo kexec -l ./Image --append=" root=/dev/sda1 console=same_as_main_kernel earlycon=same_as_main_kernel rootwait rw 1 max_cpus=1 reset_devices $ sudo kexec -e This boots into the specified kernel. How can I resolve/debug this issue further in which the crash kernel does not seem to kick-in in the event of a kernel panic.
Harsh (165 rep)
Oct 4, 2021, 02:52 PM • Last activity: Jun 30, 2024, 07:08 AM
2 votes
1 answers
1278 views
Memory node of device tree in /proc doesn't match dtb
I'm trying to modify the memory node in a device tree for a zynqmp zcu102 board. However, something seems to be overriding this node somehow. I'm booting using a FIT image and u-boot. I've confirmed the FIT image has the correct DTB by its shasum and that the kernel is using the right DTB by adding...
I'm trying to modify the memory node in a device tree for a zynqmp zcu102 board. However, something seems to be overriding this node somehow. I'm booting using a FIT image and u-boot. I've confirmed the FIT image has the correct DTB by its shasum and that the kernel is using the right DTB by adding a fake node which shows up in /proc/device-tree. However, for some reason the memory node as shown in /proc/device-tree doesn't match the DTB. Here's the relevant section of my device tree:
memory {
    device_type = "memory";
    reg = ;
};
fakenode{
    foo = "bar";
};
Here is what I see in those nodes in /proc/device-tree:
root@zynqmp:/proc/device-tree# hexdump memory/reg
0000000 0000 0000 0000 0000 0000 0000 0080 0000
0000010 0000 0800 0000 0000 0000 0000 0080 0000
0000020
root@zynqmp:/proc/device-tree# hexdump memory/name -C
00000000  6d 65 6d 6f 72 79 00                              |memory.|
00000007
root@zynqmp:/proc/device-tree# hexdump fakenode/name -C
00000000  66 61 6b 65 6e 6f 64 65  00                       |fakenode.|
00000009
root@zynqmp:/proc/device-tree# hexdump fakenode/foo -C
00000000  62 61 72 00                                       |bar.|
00000004
Is there some way that u-boot or the linux config can override the memory node during boot? I'm at a loss right now what to do next. UPDATE: I've found that linux is inheriting the /memory node in u-boot's own device tree. I'm not sure if this is documented anywhere, I discovered it experimentally. Is there a way to decouple these?
rocky (154 rep)
Jul 7, 2020, 06:11 PM • Last activity: Jun 5, 2024, 12:09 PM
1 votes
0 answers
101 views
QEMU, Debian VM doesn't boot after shutdown on M1
On M1, I 'm trying to run a Debian 12 VM. After the installation process, whether configured using a `deb_preseed.cfg` (within the Automated Install) or through the GUI configuration, it fails to run (cannot find the boot) **only when** the QEMU engine is quitted (powered off). The boot installation...
On M1, I 'm trying to run a Debian 12 VM. After the installation process, whether configured using a deb_preseed.cfg (within the Automated Install) or through the GUI configuration, it fails to run (cannot find the boot) **only when** the QEMU engine is quitted (powered off). The boot installation:
qemu-system-aarch64 -m 2048 -M virt -cpu host -monitor stdio \
    -accel hvf \
    -device virtio-gpu-pci -device usb-ehci -device usb-kbd \
    -drive if=none,file=debian.qcow2,cache=writethrough,id=hd0 \
    -device virtio-blk-device,drive=hd0 \
    -device virtio-net,netdev=net0 -netdev user,id=net0,hostfwd=tcp::2222-:22 \
    -bios qemu-efi-aarch64_debian/QEMU_EFI.fd \
    -cdrom debian-12.5.0-arm64-DVD-1.iso
In order to run the VM, I m just remove the option -cdrom as on Ubuntu case. I 've also try a lot of variants of -drive if=none,file=debian.qcow2,cache=writethrough,id=hd0, even without usage of virtio-blk-device, however it still remains. Furthermore, when I 'm trying to import on qemu-system-aarch64 the options below, it repeats the installation process again and again.
-kernel vmlinuz \
    -initrd initrd.gz \
    -append "auto=true priority=critical preseed/url=http://10.0.2.2:8080/deb_preseed.cfg "
**Note**: *I should mention that as long as the DebianVM remains powered on, I still have access to the VM even after a VM's reboot sudo reboot. However, only when the machine is powered off, the UEFI cannot find the boot and repeatedly attempts to* Start the PXE/HTTP over IPv4/v6. - There isn't a Debian's Boot option, in UEFI-Boot Manager - The same configuration on Ubuntu runs properly. - I 've already tried different than ubuntu's UEFI, the [QEMU_EFI.fd](https://packages.debian.org/bookworm/all/qemu-efi-aarch64/download) - I m using the vmlinuz and initrd.gz from [ftp.debian.org](https://ftp.debian.org/debian/dists/Debian12.5/main/installer-arm64/current/images/cdrom/)
szr (11 rep)
May 30, 2024, 08:31 PM
0 votes
0 answers
132 views
How to enable Bluetooth on the Raspberry Pi 3B with Void Linux?
I have a **RPI 3B with Void Linux**, I've searched a lot on Google how to enable Bluetooth, but I can't find solutions.... Here are the things I have already done: Followed to the letter the indications https://docs.voidlinux.org/config/bluetooth.html I have already added the line `dtparam=krnbt=on`...
I have a **RPI 3B with Void Linux**, I've searched a lot on Google how to enable Bluetooth, but I can't find solutions.... Here are the things I have already done: Followed to the letter the indications https://docs.voidlinux.org/config/bluetooth.html I have already added the line dtparam=krnbt=on In /boot/config.txt Rfkill shows the following:
$ rfkill
ID TYPE DEVICE SOFT HARD
 0 bluetooth hci0 unlocked unlocked unlocked
 1 wlan phy0 unlocked phy0 unlocked unlocked
Dmesg shows:
sudo dmesg | grep -i bluetooth
Password: 
[ 4.036991] Bluetooth: Core ver 2.22
[4.037094] NET: PF_BLUETOOTH protocol family registered
[4.037099] Bluetooth: HCI device and connection manager initialized
[4.037119] Bluetooth: HCI Socket Layer Initialized
[4.037126] Bluetooth: L2CAP Socket Layer Initialized
[4.037140] Bluetooth: SCO Socket Layer Initialized
[5.262545] Bluetooth: HCI UART driver ver 2.3
[5.262572] Bluetooth: HCI UART protocol H4 registered
[5.263061] Bluetooth: HCI UART Three-wire (H5) protocol registered
[5.263329] Bluetooth: HCI UART Broadcom protocol registered
[7.520967] Bluetooth: hci0: 0xfc18 tx timeout command
[ 15.585064] Bluetooth: hci0: BCM: failed to write baudrate update (-110)
[ 15.585227] Bluetooth: hci0: Failure to set baudrate
[16.259899] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[16.259921] Bluetooth: BNEP filters: Multicast Protocol
[16.259941] Bluetooth: BNEP Socket Layer Initialized
[ 17.600974] Bluetooth: hci0: 0x0c03 tx timeout command
[ 25.824953] Bluetooth: hci0: BCM: Reset failed (-110)
I have installed Blueman-manager too, and it shows this when I tried to open in terminal:
$ sudo blueman-manager
Contraseña: 
blueman-manager 23.07.59 ERROR    Manager:147 on_dbus_name_appeared: Default adapter not found, trying first available.
blueman-manager 23.07.59 ERROR    Manager:151 on_dbus_name_appeared: No adapter(s) found, exiting
List of my enabled services:
ls /var/service
agetty-tty1  agetty-tty5     bluetoothd  dhcpcd        ntpd   udevd
agetty-tty2  agetty-tty6     cronie      elogind       rngd   wpa_supplicant
agetty-tty3  agetty-ttyAMA0  cupsd       fake-hwclock  saned  zramen
agetty-tty4  alsa            dbus        lxdm          sshd
cdmline.txt:
snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_compat_alsa=0 root=PARTUUID=3b479547-02 rw rootwait console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 smsc95xx.turbo_mode=N dwc_otg.lpm_enable=0 loglevel=4 elevator=noop
And I have added the group bluetooth to my user... What can I do more? Any help will be appreciated! PD: If you ask me, WiFi is working perfectly...
Jamil Gomez (58 rep)
Apr 22, 2024, 12:41 AM
0 votes
1 answers
2142 views
E: Unable to locate package google-chrome-stable
I am running ``` $ cat /etc/*-release PRETTY_NAME="Debian GNU/Linux 12 (bookworm)" NAME="Debian GNU/Linux" VERSION_ID="12" VERSION="12 (bookworm)" VERSION_CODENAME=bookworm ID=debian HOME_URL="https://www.debian.org/" SUPPORT_URL="https://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.o...
I am running
$ cat /etc/*-release
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/ "
SUPPORT_URL="https://www.debian.org/support "
BUG_REPORT_URL="https://bugs.debian.org/ "
on a Chromebook.
$ which bash file mkdir rm which
/usr/bin/bash
/usr/bin/file
/usr/bin/mkdir
/usr/bin/rm
/usr/bin/which

$ sudo apt-get update -y && sudo apt-get upgrade -y;
35 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 14.1 MB of archives.
After this operation, 191 kB of additional disk space will be used.
Get:1 https://deb.debian.org/debian  bookworm/main arm64 base-files arm64 12.4+deb12u5 [70.8 kB]
...
Get:35 https://deb.debian.org/debian  bookworm/main arm64 usbutils arm64 1:014-1+deb12u1 [70.2 kB]
$ sudo gpg --no-default-keyring         --keyring /etc/apt/keyrings/google-chrome.gpg         --import /tmp/google.pub
gpg: keybox '/etc/apt/keyrings/google-chrome.gpg' created
gpg: directory '/root/.gnupg' created
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key A040830F7FAC5991: public key "Google, Inc. Linux Package Signing Key " imported
gpg: key 7721F63BD38B4796: public key "Google Inc. (Linux Packages Signing Authority) " imported
gpg: Total number processed: 2
gpg:               imported: 2
$ sudo echo 'deb [arch=arm64 signed-by=/etc/apt/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/  stable main'
 | sudo tee /etc/apt/sources.list.d/google-chrome.list
deb [arch=arm64 signed-by=/etc/apt/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/  stable main
$ sudo apt-get update -y; sudo apt-get install -y google-chrome-stable
Get:1 http://dl.google.com/linux/chrome/deb  stable InRelease [1,825 B]
Hit:2 https://deb.debian.org/debian  bookworm InRelease                           
Hit:3 https://deb.debian.org/debian  bookworm-updates InRelease
Hit:4 https://deb.debian.org/debian-security  bookworm-security InRelease
Ign:5 https://storage.googleapis.com/cros-packages/123  bookworm InRelease
Hit:6 https://storage.googleapis.com/cros-packages/123  bookworm Release
Fetched 1,825 B in 3s (525 B/s)
Reading package lists... Done
N: Skipping acquire of configured file 'main/binary-arm64/Packages' as repository 'http://dl.google.com/linux/chrome/deb  stable InRelease' doesn't support architecture 'arm64'
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package google-chrome-stable
user3523406 (315 rep)
Apr 17, 2024, 03:01 AM • Last activity: Apr 17, 2024, 11:03 AM
0 votes
1 answers
106 views
dpkg -i my-kernel_5.10.9-2lEIW6BD_arm64.deb fails with "unable to make backup link of './boot/Image' before installing new version: Operation not..."
I've made my own kernel package for a custom iMX8M board, which passes lintian without warnings or errors. The top three layers of the package tree are: ``` /tmp/my-kernel_5.10.9-2lEIW6BD_arm64 |-- DEBIAN | |-- control | `-- preinst |-- boot | |-- Image | `-- dtbs | `-- imx8mq-smarc.dtb |-- lib | `-...
I've made my own kernel package for a custom iMX8M board, which passes lintian without warnings or errors. The top three layers of the package tree are:
/tmp/my-kernel_5.10.9-2lEIW6BD_arm64
|-- DEBIAN
|   |-- control
|   `-- preinst
|-- boot
|   |-- Image
|   `-- dtbs
|       `-- imx8mq-smarc.dtb
|-- lib
|   `-- modules
`-- usr
    `-- share
        `-- doc
preinst makes sure that /boot is mounted:
fadedbee@box ~ $ sudo cat /tmp/my-kernel_5.10.9-2lEIW6BD_arm64/DEBIAN/preinst 
#!/bin/bash
set -e
if grep -qs '/dev/mmcblk1p1 /boot' /proc/mounts; then
  echo "/boot is mounted."
else
  echo "/boot is not yet mounted, mounting..."
  mount /dev/mmcblk1p1 /boot
fi
exit 0
It mounts /boot, if not already mounted and relies on the dpkg to put all of the files in place. It currently fails.
root@arm:~# dpkg -i /tmp/my-kernel_5.10.9-2lEIW6BD_arm64.deb 
(Reading database ... 45956 files and directories currently installed.)
Preparing to unpack .../my-kernel_5.10.9-2lEIW6BD_arm64.deb ...
/boot is not yet mounted, mounting...
Unpacking my-kernel (5.10.9) ...
dpkg: error processing archive /tmp/my-kernel_5.10.9-2lEIW6BD_arm64.deb (--install):
 unable to make backup link of './boot/Image' before installing new version: Operation not permitted
Errors were encountered while processing:
 /tmp/my-kernel_5.10.9-2lEIW6BD_arm64.deb
The permissions on /boot/Image are as expected:
root@arm:~# ls -lsa /boot/Image
28680 -rwxr-xr-x 1 root root 29366784 Mar 25 11:48 /boot/Image
The /boot partition is vfat and mounted R/W:
root@arm:~# mount | grep boot
/dev/mmcblk1p1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
Why might this operation be failing? Is there a work-around? --- Update: I've checked what's inside a "normal" debian kernel package. It also relies on normal behaviour to install the kernel image in /boot.
root@debian:/tmp/tmp# tree -L 3
.
├── boot
│   ├── config-6.1.0-18-amd64
│   ├── System.map-6.1.0-18-amd64
│   └── vmlinuz-6.1.0-18-amd64
├── lib
│   └── modules
│       └── 6.1.0-18-amd64
└── usr
    └── share
        ├── bug
        ├── doc
        └── lintian

10 directories, 3 files
fadedbee (1113 rep)
Mar 26, 2024, 11:19 AM • Last activity: Mar 27, 2024, 09:15 AM
0 votes
1 answers
907 views
CMake build can't find Qt6 library in /usr/local
I have an Orange Pi 5, an arm64 SBC running *Joshua Riek's Ubuntu 22.04.4 for RK3588* ([link to project][1]). I'm trying to build [Duckstation][2], a PS1 emulator, which depends on Qt 6.6.2. The latest arm64 Qt version I have available through apt is version 6.2.4. I'm building Qt 6.6.2 from source,...
I have an Orange Pi 5, an arm64 SBC running *Joshua Riek's Ubuntu 22.04.4 for RK3588* (link to project ). I'm trying to build Duckstation , a PS1 emulator, which depends on Qt 6.6.2. The latest arm64 Qt version I have available through apt is version 6.2.4. I'm building Qt 6.6.2 from source, but I'm having issues linking the built library to the Duckstation cmake build. ### Building Qt 6.6.2 from git The Qt installer application is not available for arm64, so I followed Qt's documentation on how to build Qt6 from git, found here . The steps I have taken are as follows: 1. Clone the Qt6 repository and switch to 6.6.2 branch
$ git clone git://code.qt.io/qt/qt5.git qt6
$ cd qt6
$ git switch 6.6.2
2. Initialize the submodules with init-repository script
$ perl init-repository
3. Create a build directory and configure
$ mkdir build && cd build
$ ../configure
I left the -prefix attribute out, by default it will be set to /usr/local/Qt-6.6.2 4. Build the whole Qt6 library and install
$ cmake --build . --parallel $(nproc)
$ sudo cmake --install .
Building the full library takes over an hour on this platform. After installing, the contents of the directory /usr/local/Qt-6.6.2 look like this: enter image description here ### Building Duckstation Following the build instructions on Duckstation's readme, here are the build steps 1. Clone the repository
$ git clone https://github.com/stenzek/duckstation.git  duckstation
$ cd duckstation
2. Create a build directory and configure
$ mkdir build
$ cmake -Bbuild -DCMAKE_BUILD_TYPE=Release
When trying to configure the build, I'm getting an error locating the Qt 6.6.2: enter image description here **How do I link the built library to the CMake build?** I have tried creating an ldconfig file /etc/ld.so.conf.d/Qt-6.6.2.conf which contains
/usr/local/Qt-6.6.2/bin
/usr/local/Qt-6.6.2/lib
After creating the file, I ran sudo ldconfig. If it's not a linking issue, am I installing the Qt6 to a wrong location, or missing some critical configuration step in the build? As a sidenote: I'm able to build Duckstation successfully by patching the required Qt version to 6.2.4 and by modifying the sources a bit, but I'd like to be able to build the main branches, for handling updates more easily etc.
eeliale (11 rep)
Mar 15, 2024, 01:09 PM • Last activity: Mar 15, 2024, 05:37 PM
2 votes
1 answers
1349 views
Some binaries are extremely slow with qemu-user-static inside docker
I'm currently working with the [armbian build system](https://github.com/armbian/build) and it is using chroot inside docker to cross build armbian images (for aarch64 in my case on an amd64 host). However, for some reason, when the build script is executing `apt-key add -` takes literally hours on...
I'm currently working with the [armbian build system](https://github.com/armbian/build) and it is using chroot inside docker to cross build armbian images (for aarch64 in my case on an amd64 host). However, for some reason, when the build script is executing apt-key add - takes literally hours on my machine while constantly using 100% of a single CPU core. Apt key is called like this: chroot bash -c 'cat armbian.key | apt-key add -', resulting in a process like /usr/bin/qemu-aarch64-static /bin/bash -c cat armbian.key | apt-key add - inside the container. Inside apt-key (which is a shell script) a few binaries are called which is what actually takes that long, such as: - multiple calls to /usr/bin/apt-config, e.g. /usr/bin/apt-config shell ARCHIVE_KEYRING_URI APT::Key::Archiv. - a call to /usr/bin/gpg-conf (/usr/bin/gpgconf --kill all to be exact) - possibly more, but I might have missed some (was looking at ps aux occasionally while waiting) I'm really clueless, why these calls, that are supposed to take seconds at most, take hours to terminate when executed via docker -> chroot -> qemu. I really don't understand what makes this so slow. I would be very thankful for any pointers on how to debug this further. **EDIT:** I should mention that the steps in question are significantly faster when executed directly on an ubuntu 22.04 VM (in which case the armbian build script doesn't use docker, because Ubuntu 22.04 is supported natively). **EDIT:** I managed to reproduce the issue like this:
docker run --name armbian-test -d --rm ghcr.io/armbian/docker-armbian-build:armbian-ubuntu-jammy-latest bash -c 'while sleep 1; do true; done'
docker exec armbian-test bash -c 'apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends bash git psmisc uuid-runtime bc binfmt-support bison libc6-dev make dpkg-dev gcc ca-certificates ccache cpio debootstrap device-tree-compiler dialog dirmngr dosfstools dwarves flex gawk gnupg gpg imagemagick jq kmod libbison-dev libelf-dev libfdt-dev libfile-fcntllock-perl libmpc-dev libfl-dev liblz4-tool libncurses-dev libssl-dev libusb-1.0-0-dev linux-base locales lsof ncurses-base ncurses-term ntpdate patchutils pkg-config pv qemu-user-static rsync swig u-boot-tools udev uuid-dev zlib1g-dev file tree expect colorized-logs unzip zip pigz xz-utils pbzip2 lzop zstd parted gdisk fdisk aria2 curl wget axel parallel python3-dev python3-distutils python3-setuptools python3-pip python2 python2-dev gcc-x86-64-linux-gnu gcc-aarch64-linux-gnu gcc-arm-linux-gnueabihf gcc-arm-linux-gnueabi gcc-riscv64-linux-gnu debian-archive-keyring libc6-amd64-cross g++-aarch64-linux-gnu g++ btrfs-progs cryptsetup openssh-client f2fs-tools nilfs-tools xfsprogs zerofree qemu-utils qemu-utils libudev-dev libusb-1.0-0-dev dh-autoreconf build-essential gcc-arm-linux-gnueabi gcc-or1k-elf time'
docker exec armbian-test debootstrap --variant=minbase --arch=arm64 bullseye /debootstrap
docker exec armbian-test time chroot /debootstrap /bin/bash -c '/usr/bin/apt-config shell ARCHIVE_KEYRING_URI APT::Key::Archiv'
theCalcaholic (188 rep)
Oct 17, 2023, 03:22 PM • Last activity: Feb 17, 2024, 01:10 AM
0 votes
0 answers
1000 views
I Failed to execute AARCH64 Linux kernel on the QEMU
I'm trying to execute AARCH64 Linux kernel on the QEMU. But,there was an error and the error log is: ``` rom: requested regions overlap (rom bootloader. free=0x00000000422c0a00, addr=0x0000000040000000) qemu-system-aarch64: rom check and register reset failed ``` My development environment is: ``` h...
I'm trying to execute AARCH64 Linux kernel on the QEMU. But,there was an error and the error log is:
rom: requested regions overlap (rom bootloader. free=0x00000000422c0a00, addr=0x0000000040000000)
qemu-system-aarch64: rom check and register reset failed
My development environment is:
host: x86_64 Ubuntu 18.04
linux kernel source version: v5.19
busybox version: 1_36_stable
I cannot find what I should check first. So, I need help. What I did to achieve my goal is as following: 1. Linux kernel build for AARCH64 - apply defconfig
make ARCH=arm64 defconfig -j$(nproc) CROSS_COMPILE=aarch64-linux-gnu-
- set 'CONFIG_BLK_DEV_RAM' config by using menuconfig to use RAM disk - build kernel
make ARCH=arm64 -j$(nproc) CROSS_COMPILE=aarch64-linux-gnu-
2. Build 'busybox' to make initramfs.gz - apply defconfig
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- defconfig
- set 'CONFIG_STATIC' config by using menuconfig to build the libraries as static library form. - build busybox
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j$(nproc)
- install busybox
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- install
- make initramfs.gz
cd _install
mkdir -p dev etc/init.d home/root lib mnt proc root sys tmp usr/lib var
cp -v /usr/aarch64-linux-gnu/lib/* ./lib/

cat > etc/init.d/rcS  /etc/resolv.conf
EOF

chmod +x etc/init.d/rcS
find . | cpio -o --format=newc > ../initramfs
cd ..
gzip -vc initramfs > initramfs.gz
- install qemu
sudo apt install qemu-system-arm qemu-efi-aarch64
- execute qemu
qemu-system-aarch64 \
-machine virt \
-cpu cortex-a57 \
-smp 4 \
-m 2048 \
-kernel arch/arm64/boot/Image \
-initrd busybox/initramfs.gz \
-append "rdinit=/sbin/init root=/dev/ram rootfstype=ramfs rw nokaslr" \
-nographic
If you have any idea about this problem, please help me. Thanks!
nickeys (21 rep)
Jan 31, 2024, 04:22 AM • Last activity: Jan 31, 2024, 04:52 AM
0 votes
1 answers
293 views
Failing to install cvxpy.py on Ubuntu 22.04.3 LTS, on Zynq UltraScale+ MPSoC based SOM ARM Cortex-A53 4 core processor
I was barely able after much effort to get this to install 9 or so months ago, now it doesn't install on the same platform with a new update/upgrade. Here's the software version info: ubuntu@BDv4-10031:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.3...
I was barely able after much effort to get this to install 9 or so months ago, now it doesn't install on the same platform with a new update/upgrade. Here's the software version info: ubuntu@BDv4-10031:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.3 LTS Release: 22.04 Codename: jammy ubuntu@BDv4-10031:~$ After installing the long list of imports and dependencies and successfully navigating those in the successful past: sudo apt-get -y install cmake libglpk-dev sudo pip3 install meson pytest jupyter pandas numpy pvlib matplotlib scikit-learn sudo pip3 install tensorflow gym cvxpy cvxpyanalyzer vpython sudo pip3 install scip scipy cylp cbc ecos glpk copt cvxopt clarabel glop cplex xpress sudo updatedb # cd to the directory /site-packages/cvxpy/ pytest And I did try this without sudo pip3, makes no difference, the problem is package versioning. I got this in retrying after cvxpy install failed: ubuntu@BDv4-10031:~$ sudo pip3 install cvxpy Collecting cvxpy Using cached cvxpy-1.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB) Collecting ecos>=2 Using cached ecos-2.0.12.tar.gz (142 kB) Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Requirement already satisfied: numpy>=1.15 in /usr/local/lib/python3.10/dist-packages (from cvxpy) (1.26.2) Collecting osqp>=0.6.2 Using cached osqp-0.6.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (294 kB) Collecting scipy>=1.1.0 Using cached scipy-1.11.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (32.9 MB) Requirement already satisfied: pybind11 in /usr/lib/python3/dist-packages (from cvxpy) (2.9.1) Collecting clarabel>=0.5.0 Using cached clarabel-0.6.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB) Collecting scs>=3.0 Using cached scs-3.2.4.tar.gz (1.5 MB) Installing build dependencies ... done Getting requirements to build wheel ... done Installing backend dependencies ... done Preparing metadata (pyproject.toml) ... error error: subprocess-exited-with-error �� Preparing metadata (pyproject.toml) did not run successfully. ��� exit code: 1 ������> [2 lines of output] ('\x1b[31m',)meson-python: error: Could not find ninja version 1.8.2 or newer. [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. error: metadata-generation-failed �� Encountered error while generating package metadata. ������> See above for output. note: This is an issue with the package mentioned above, not pip. hint: See above for details. ---------- Then I tried to install the missing meson: ubuntu@BDv4-10031:~$ sudo pip3 install meson-python-1.8.2 ERROR: Could not find a version that satisfies the requirement meson-python-1.8.2 (from versions: none) ERROR: No matching distribution found for meson-python-1.8.2 ubuntu@BDv4-10031:~$ sudo apt install meson ninja-build Reading package lists... Done Building dependency tree... Done Reading state information... Done The following packages were automatically installed and are no longer required: libflashrom1 libftdi1-2 Use 'sudo apt autoremove' to remove them. The following NEW packages will be installed: meson ninja-build 0 upgraded, 2 newly installed, 0 to remove and 6 not upgraded. Need to get 624 kB of archives. After this operation, 3675 kB of additional disk space will be used. Get:1 http://ports.ubuntu.com/ubuntu-ports jammy/universe arm64 ninja-build arm64 1.10.1-1 [105 kB] Get:2 http://ports.ubuntu.com/ubuntu-ports jammy/universe arm64 meson all 0.61.2-1 [519 kB] Fetched 624 kB in 1s (474 kB/s) Selecting previously unselected package ninja-build. (Reading database ... 275117 files and directories currently installed.) Preparing to unpack .../ninja-build_1.10.1-1_arm64.deb ... Unpacking ninja-build (1.10.1-1) ... Selecting previously unselected package meson. Preparing to unpack .../meson_0.61.2-1_all.deb ... Unpacking meson (0.61.2-1) ... Setting up ninja-build (1.10.1-1) ... Setting up meson (0.61.2-1) ... Processing triggers for man-db (2.10.2-1) ... Scanning processes... Scanning processor microcode... Scanning linux images... Running kernel seems to be up-to-date. Failed to check for processor microcode upgrades. No services need to be restarted. No containers need to be restarted. No user sessions are running outdated binaries. No VM guests are running outdated hypervisor (qemu) binaries on this host. ---------- Now retried installing cvxpy.py: ubuntu@BDv4-10031:~$ sudo pip3 install cvxpy Collecting cvxpy Using cached cvxpy-1.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB) Requirement already satisfied: pybind11 in /usr/lib/python3/dist-packages (from cvxpy) (2.9.1) Collecting scipy>=1.1.0 Using cached scipy-1.11.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (32.9 MB) Collecting scs>=3.0 Using cached scs-3.2.4.tar.gz (1.5 MB) Installing build dependencies ... done Getting requirements to build wheel ... done Installing backend dependencies ... done Preparing metadata (pyproject.toml) ... error error: subprocess-exited-with-error �� Preparing metadata (pyproject.toml) did not run successfully. ��� exit code: 1 ������> [3 lines of output] ('\x1b[31m',)meson-python: error: Could not find meson version 0.63.3 or newer, found 0.61.2 ('\x1b[31m',)meson-python: error: . [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. error: metadata-generation-failed �� Encountered error while generating package metadata. ������> See above for output. note: This is an issue with the package mentioned above, not pip. hint: See above for details. ubuntu@BDv4-10031:~$ sudo pip3 uninstall meson Found existing installation: meson 1.3.0 Uninstalling meson-1.3.0: Would remove: /usr/local/bin/meson /usr/local/lib/python3.10/dist-packages/meson-1.3.0.dist-info/* /usr/local/lib/python3.10/dist-packages/mesonbuild/* /usr/local/share/man/man1/meson.1 /usr/local/share/polkit-1/actions/com.mesonbuild.install.policy Proceed (Y/n)? y Successfully uninstalled meson-1.3.0 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv ---------- Tried uninstalling meson and reinstalling cvxpi, same error. My worry is that the KV260 platform with its dependence on petalinux for getting FPGA IP blocks to run, is being deprecated in the new, sleek petalinux-free KR260 platform and when things get harder to install on Ubuntu, it raises my platform end-of-life fears.
Charlie (11 rep)
Dec 14, 2023, 11:21 PM • Last activity: Dec 15, 2023, 07:51 PM
0 votes
1 answers
665 views
How do I find the GPU device ID on Apple Silicon?
I use a MacBook Pro and Mac Studio with M1 and M2 chips, respectively. I'm trying to use a terminal command that has this parameter `--device=/dev/****`, which refers to the GPU device ID. How do I find the GPU device ID? To me, it seems that in Apple Silicon-based Macs, the integrated GPU doesn't h...
I use a MacBook Pro and Mac Studio with M1 and M2 chips, respectively. I'm trying to use a terminal command that has this parameter --device=/dev/****, which refers to the GPU device ID. How do I find the GPU device ID? To me, it seems that in Apple Silicon-based Macs, the integrated GPU doesn't have the same kind of device IDs as discrete GPUs found in more traditional PC setups. Thus, if I'm trying to use a tool or command designed for systems with NVIDIA, AMD, or similar GPUs that expect a device ID, it might not work as intended on my Mac. Can anybody make any suggestions? Is there any hope of me being successfully able to run a command in terminal that expects a GPU device ID?
Pyy (173 rep)
Aug 16, 2023, 09:55 AM • Last activity: Nov 30, 2023, 07:18 PM
Showing page 1 of 20 total questions