@animatek #Pipewire has pretty much made the audio routing better than other operating systems. I use my Mac to do mostly music but when I’m on my work PC, I use Bitwig with Pipewire backend. I have Debian running on that.
With Pipewire I’m able to do stuff that I need Loopback on Mac, i.e. route audio somewhat freely between apps.
3rd party plugins that I actually use work too. For U-he stuff I have native Linux versions and FabFilter goodies I use through #yabridge.
Generally Windows plugins that are programmed with love in the first place (like FF stuff) works super solid with Yabridge, sometimes even more stable than real Windows. For super proprietary stuff like XLN Audio stuff I keep them only on my Mac.
Pipewire has sort of fixed things that I had to complain in the past with Linux audio.
I sort of like constructing tracks on my Linux PC given the more limited set of plugins. It keeps the focus on track construction, not on swapping plugins :-) I tend to finish the tracks on my Mac.
You should probably consider more realtime oriented kernel for the installation. I personally use https://liquorix.net/.
PS. I would not touch Ubuntustudio style distro’s because they tend to tune things sort of “old world” ways and sometimes even counter-productive. You are better off with e.g. standard Debian or Ubuntu installation. In addition to more real-time oriented kernel, you might want to add threadirqs
to /etc/default/grub
and install and systemctl enable rtirq
with its default settings , This will give priority to your USB audio interface. I’m not sure if you even need at modern times to do anything to /etc/security/limits.conf
given that by default Pipewire daemons do run already with real-time priorities and Bitwig has a Pipewire backend option.
To summarize, a stock distribution, real-time’ish kernel, rtirq and Pipewire would be me go-to list. At least I experience no glitches. And then the desktop is not tuned too heavily to a single purpose (audio), and configuration sort of stands better time as it is not too specific in its adjustments. Not that different from Windows or macOS in the end. In both you also need to few tweaks here and there to get a good result…
Have been passive at #LKML because I’m stuck with this page table sync bug in #Keystone: https://github.com/keystone-enclave/keystone/issues/378.
Snippet where it trips:
sfence.vma
csrw satp, a0 // switch to virtual addresssing
sfence.vma
mtval
is at the 2nd sfence.vma
when misaligned store happens.
This never happens on QEMU and I presume that not on all hardware but I’ve tested this only with CVA6 (running on Genesys2 FPGA board). On QEMU everything just works.
At least, shouldn’t the sfence.vma
be sort “useless” as it should continue where stvec
is set, right? I guess here one thing to try out would be to simply remove the second sfence.vma
?
I’m really just learning RISC-V sync opcodes and do not know e.g. when I should use also fence.i
. Just trying different things without tbh knowing exactly what I’m doing yet…
In head.S
there is also .align 2
after csrw
and I have to admit that I don’t know exactly why… This bug is haunting me…
I mostly use #neovim but I also have paid version of #sublimetext. #GUI editor has its place e.g. when you brainstorm stuff with a group and similar contexts.
For me Sublime Text is less proprietary than #vscode because I get a way with a fixed sum of money. I would find it more proprietary deal to be connected 247 to #microsoft.
Microsoft cannot really ad itself even today to supporting users privacy given that for any #Windows installation you really should run tools such as WPD.
IMHO privacy is the worst currency to pay assets with…
Now I get why there’s been so much #ACPI discussion recently in my feed. IMHO, the whole topic is not even worth of essay because you would need to compare it something that also enables universal management interface for heterogenous data center environment. ACPI is ugly but it is also universal. I’d like to see something less ugly implementing the same role.
When it comes to bloat I would rather focus on desktop applications implemented with #JavaScript and #HTML eating all your computing resources. It is ugly and bloated in a whole new level. Web desktop truly sucks
.,, and biggest contribution #vscode has made to the software ecosystem is turning even the freaking text editor as malware.
@stefanha Thanks! This gave me some pointers. So what comes after machine type is specific to that machine.
The problem here is that bootrom is the first stage bootloader i.e. the whole power on starts from that code and it defines root of trust. I’ll need to study Spike documentation on how to do equivalent thing as with virt
.
This helped anyway so that I don’t waste time on something useless. Thank you!
OK, something probably pretty basic with #QEMU I need to ask.
I have this command-line, which is generated by #Keystone #RISCV #TEE build:
/home/jarkkojs/work/keystone/qemu/build/riscv64-softmmu/qemu-system-riscv64 \
$DEBUG \
-m 2G \
-nographic \
-machine virt,rom=/home/jarkkojs/work/keystone/build/bootrom.build/bootrom.bin \
-bios /home/jarkkojs/work/keystone/build/sm.build/platform/generic/firmware/fw_payload.bin \
\
-netdev user,id=net0,net=192.168.100.1/24,dhcpstart=192.168.100.128,hostfwd=tcp::${HOST_PORT}-:22 \
-device virtio-net-device,netdev=net0 \
-device virtio-rng-pci \
-smp $SMP
QEMU has support for #Spike, which is #CVA6 emulation.
So when I do to the above command-line simply s/virt,/spike,/g
, I get this error:
$ build/scripts/run-qemu.sh
**** Running QEMU SSH on port 3617 ****
qemu-system-riscv64: Property 'spike-machine.rom' not found
How do I end up to this error message? Why does it seek a filename like that? Without rom=
I can run Spike emulation but I need that bootrom for the application.