147 questions
0
votes
1
answer
191
views
Debugging Zephyr RTOS MCUmgr SMP on ESP32: stack overflow and illegal instruction in Bluetooth thread
My application using Zephyr RTOS v4.1.0 on ESP32-WROVER-IE and ESP32-S3-WROOM-1 to implement MCUmgr over Bluetooth (SMP transport) based on the smp_svr sample builds successfully, but flashing results ...
2
votes
1
answer
1k
views
What is the difference between processor cores and SMP cores?
In figure 3.2 in the book Distributed Systems: fun and profit, it is mentioned:
Performance advantage of a cluster built with high-end server nodes (128 core SMP) over a cluster with the same number ...
1
vote
1
answer
1k
views
Why Linux distributes threads among NUMA nodes almost equally?
I'm running an application with multiple threads and it seems Linux is distributing threads among NUMA nodes almost equally. Say my application spawns 4 threads and my machine has 4 sockets. I observe ...
0
votes
0
answers
372
views
Send BLE raw packet through serial port
I was wondering if there is a way to have access through UART port to all BLE packets (all the packets that you can sniff using a sniffer and wireshark (LL, SMP, ATT, L2CAP protocols) with a BLE ...
1
vote
0
answers
531
views
"SMP is not supported on this platform"
I am currently trying to use an eBPF program on a Raspberry Pi 3 Model B V1.2, that has Ubuntu installed. For managing the compilation, system calls and all that, I use the BPF compiler collection.
...
0
votes
0
answers
417
views
Is memory reordering equivalent to instruction reordering? [duplicate]
I'm learning multi-thread programming.
But I'm confused with some words that "memory reordering" and "instruction reordering".
My question is that is "memory reordering" ...
1
vote
0
answers
538
views
How to invalidate cache on mmap'ed shared memory (multi processor machine)
I have two processes, sharing a memory area for fast communication. Both processes run the following (error check removed):
int fd = open("/run/afile", O_RDWR );
void *ptr = mmap(NULL, 4096, ...
1
vote
0
answers
1k
views
Can't find WSL kernel directory not in /usr/src and not in /lib/modules
I am not a developer, and don't have enough experience with Linux.
I am a data scientist and wants to know how to improve my performance using my CPUs better.
I have a linux VM with 2 physical CPUs, ...
1
vote
1
answer
2k
views
Confusion around spin_lock_irqsave: in what nested situation is interrupt state kept?
There are many Q&As about spinlocks, but it's still confusing to me. I think it's because the questions and answers assume different settings or not clearly explain the settings about if it's SMP ...
5
votes
1
answer
354
views
I have a cpu cache coherency-looking problem that I can't figure out how to fix. Two cpus see different contents of the same memory
I have a really weird problem I can't figure out, I haven't seen anything this unexplainable
in my 30+ years of programming. Clearly I'm doing something wrong, but can't figure out what,
and I can't ...
0
votes
1
answer
2k
views
CPU1 failed to come online
Could someone explain why we get the message below in kernel in SMP environment?
CPU1 failed to come online
Source kernel_msm-4.9/kernel/arch/arm/kernel/smp.c:
if (!cpu_online(cpu))
{
pr_crit("...
0
votes
2
answers
509
views
QEMU/vExpress issue regarding SMP and U-boot
Since quite a long time, there is still an issue with QEMU/vExpress and U-boot using more than one CPU core (vExpress refers to a ARM Cortex-A15 CPU). Before digging into Qemu/U-boot code, has anybody ...
0
votes
2
answers
206
views
How can I change the Erlang makefile so that it enables the SMP mode?
I want to develop an application which requires SMP. But in the Erlang makefile I am using, the options are set in non-smp mode. Hence, when I start the application, I get an error in the Shell ...
13
votes
3
answers
1k
views
Looking for cause of unexpected preemption in linux kernel module
I have a small linux kernel module that is a prototype for a device driver for hardware that doesn't exist yet. The code needs to do a short bit of computation as fast as possible from beginning to ...
0
votes
1
answer
178
views
Why Giant Lock must be taken before any non-sleepable locks
I am trying to understand the reason for 3rd point - and most importantly the must condition from the link below :
https://www.freebsd.org/cgi/man.cgi?locking(9)
Giant
Giant is a special mutex ...
2
votes
0
answers
525
views
Linux - Handle interrupts on another cpu
I'm trying to handle an interrupt with a group of cpus instead of the all available cpus in the system.
Basically, I want CPUs 32-63 to handle an interrupt while others interrupts are handled by CPUs ...
2
votes
1
answer
325
views
Entering Protected Mode: Triple-Fault
I am adding SMP to my kernel, in which the AP should boot. It starts in realmode and faults on entering protected mode. To be clear, it faults on the JMP 0x8:... after loading CR0. I am sure that the ...
0
votes
0
answers
39
views
Is there a way to emulate symmetric multiprocessing over TCP/IP?
I have a number-crunching multithreaded software which creates a thread per CPU. For example, if cat /proc/cpuinfo | grep proc | wc -l prints 24 than the software will create 24 threads.
I want to ...
2
votes
0
answers
458
views
Python real time parallel / distributed data processing
I have a Python application that processes in-memory-data. It provides <1 second response, by querying ~1 million records and then aggregating the result set.
What would be the best Python ...
1
vote
2
answers
1k
views
Linux support for AMP architecture?
When I search about linux kernel, I know that linux support for SMP architecture.
But I don't find any specification about the linux for AMP.
Does linux support for AMP?
Have any documents or ...
0
votes
1
answer
65
views
utilizing multiple cores in a multicore/multithread application
In Linux, I see two approaches for running multicore applications. Assume a program utilizes 2 cores. With the first approach, by using top, I see two processes and each each core is 100% utilized
...
1
vote
1
answer
273
views
How to Use DateTime of ODATA (SMP 9.0 and above) in Android
I am getting ODATA from SMP from that ODATA. When we are trying to fetch Datetime and setting into Java Date getting an Exception. How to Typecast ODATA DateTime to Java Date in Android (SMP 9.0 and ...
1
vote
2
answers
800
views
Linux - Locking between timer, tasklet, and kthread on SMP ARM
I have some data that are shared between a tasklet, a timer, and a kthread on a SMP ARM. What is the proper type of spin lock to use?
According to Cheat Sheet For Locking, it seems like a regular ...
2
votes
1
answer
4k
views
who does Napi scheduling
I had a doubt while reading about NAPI scheduling in Network drivers.
Typically, entire network processing code runs in softirq context. And with NAPI polling mechanism the driver will poll for ...
0
votes
1
answer
525
views
Could you tell me how to replace reset vector for secodary cpus in ARM architecture v7?
I know that arm reset vectors can be low(0x00000000) or high(0xffff0000).
But some SoC's codes in linux kernel saying the reset vectors can be changed.
For example, in mach-imx
static int __cpuinit ...