I am exercising Linux timestamping functionality (TX part): https://docs.kernel.org/networking/timestamping.html It looks like there is no easy way to understand that the system will never provide me with TX timestamps at runtime. It means that I can enable TX timestamping via setsockopt without an error: even on a system which does not support TX timestamps at all. And then I can
Tag: linux-kernel
Incorrect values for #address-cells and #size-cells in Device Tree
I am trying to add a tlv320aic3110 codec to my project and I have been recommended adding these endpoints to the i2s and i2c attributes: The problem I’m having is that, when I build this device tree into a dtb file, I get a lot of warnings: The warnings say that the value of #address-cells is both 2 and -1,
Test filesystem stability / filesystem crash [closed]
Closed. This question needs details or clarity. It is not currently accepting answers. Want to improve this question? Add details and clarify the problem by editing this post. Closed 7 months ago. Improve this question Newbie here!! Is there any way to crash filesystem or overload a filesystem so that it will get crash? I want to check at what
Like nvidia-smi, can nvidia-occupancy(cuda occupancy) also collect values in real time?
I already collect timestream data once every 10 seconds using nvidia-smi. nvidia-occupancy would also like to collect data in this way. Is there any way to save nvidia-occupancy timeseries data using linux terminal? Currently, the values that can be easily obtained were only the maximum values. Answer Currently, there isn’t any tool to collect occupancy information the way nvidia-smi collects
Scheduling multiple tasklets in linux
I am new to tasklets in Linux. Here I am scheduling 3 tasklets in ISR. But what I observed is that only one tasklet in executed. fill_buf is tasklet_struct and Linux version is 5.10.63. Answer You are scheduling the same tasklet three times in a row, but a tasklet can only be scheduled again if it has already run (or
Why are linux system calls different across architectures
According to this system calls table, linux system calls are different across architecture, but IMO syscalls are higher level encapsulation which do not depent on any specific architechture. Why is it designed this way? In a specific case, riscv64 linux doesn’t have mkdir, instead it has mkdirat, but weirdly it doesn’t have rmdir or rmdirat, how could it implement /bin/rmdir
About memory allocation, does C malloc/calloc depends on Linux mmap/malloc or the opposite?
As far as I know, C has the following functions, e.g: malloc, calloc, realloc, to allocate memory. And the linux kernel also has the following functions, e.g: malloc, mmap, kmalloc, vmalloc… to allocate memory. I want to know which is the lowest function. If you say, “Linux kernel is the lowest function, your C program must allocate memory with Linux
Unable to compile kernel module: no .ko file output
I’ve built an android kernel (source code), now I’m trying to cross-compile a kernel module for it, v4l2loopback to be precise. I’ve used this toolchain to build the kernel (kernel version is 4.9). Here on github you can see that someone actually succeeded in compiling the module, and I’ve been trying to replicate their success myself. But in the last
How does the command ‘echo “6” > /proc/sys/kernel/printk’ work?
Please see an example in How can I show printk() message in console?, If the /proc/sys/kernel/prink was a normal file, the file would have changed to just “6”, a single number. But I know the proc file system is a file system in ram and I guess it works different. In what mechanism did the file changed that way? And
Get user’s group from linux kernel driver
I’m developing a simple pipe kernel driver as an excercise for university, and my task states that users from each user group should have access to their own separate pipe. But I can’t find how to get group of the user who opened my driver file. I have functon static int pipe_open(struct inode *i, struct file *f) which receives arguments