How to avoid quotes ("...") in shortcut-ed printk Macros inside Linux Kernel...
I have created a set of shortcut Macros for Linux Kernel printk to prefix with the module name and to have a set of aliases for severity. #define _pp(severity, format, args...) \ printk(severity "%s: "...
View ArticlePairing acquire / release operations between user and kernel space
I am trying to ensure proper synchronization over a piece of memory shared between a user thread and another thread running in kernel mode on Linux.Does it make sense to pair a C11's...
View Articleprinting open files of current process
I need to find the open files of the current process in C Linux. So far all I could figure out was current -> task_struct... then there aren't a log of resources...eventually I'm supposed to get to...
View ArticleIn Linux, how can I get the filename from the "struct file" structure, while...
I'm trying to view the filename via kgdb, so I cannot call functions and macros to get it programatically. I need to find it by manually inspecting data structures.Like if I had a breakpoint here in...
View ArticleAre DMA DRQs the DMA virtual channels
I have few basic queries regarding DMA in Linux. In one of the DTS file for instance for S900 SoC, I see total number of DMA channels are 12 but when I checked in ls /sys/class/dmaI see total number of...
View ArticleWhy do most linked list looping macros in the kernel skip the first element?
I might be wrong but keep looking at the code in <linux/list.h> and I see that macros like list_for_each_entry_safe starting from the second element:#define list_for_each_entry_safe(pos, n, head,...
View ArticleHow to raise max file limit on Linux CentOS 7
This question is asked before but it is still not clear how this works to me. SonarQube fails to start with this messageERROR: [1] bootstrap checks failed [1]: max file descriptors [4096] for...
View ArticleSize() vs ls -la vs du -h which one is correct size?
I was compiling a custom kernel, and I wanted to test the size of the image file.These are the results:ls -la | grep vmlinux-rwxr-xr-x 1 root root 8167158 May 21 12:14 vmlinuxdu -h vmlinux3.8M...
View ArticleFailed to start Load Kernel Modules after compiling raspbian 4.1.y kernel due...
I tried installing into a rpi2 a raspbian 4.1.y kernel from here https://github.com/raspberrypi/linux/tree/rpi-4.1.y. Using the steps listed here...
View Articlewhy kernel Tainted after softlockup
ITNOAI am using Ubuntu 16.04.6 LTS and I am running my program that have one real time thread with 100% core usage, in this situation kernel says in syslog like belowkernel: watchdog: BUG: soft lockup...
View ArticleChange permission folder in Raspberry Pi to R permission
The image below contain the command that change the permission for folder:I want to change permission folder in Raspberry Pi to r permission it is folder for radio in /var/www. It failed and said...
View Articleinsmod: ERROR: could not insert module stick_driver.ko: Required key not...
i have checked my .c and makefile eveything seems to be correct but not able to execute INSMOD command with sudo permission.sudo insmod stick_driver.ko //command(insmod: ERROR: could not insert module...
View ArticleHow to register Linux Security Module in kernel 2.6?
I want to use the LSM framework with kernel ubuntu 2.6.36.When I compiled the kernel module, it wrote:WARNING: "register_security " undefined!After a lot of googlings, I found the reason is that the...
View ArticleWhich filesystem to use to expose readings/limits for temperature sensor
I currently have the trouble of some hardware overheating regularly. Looking through the Linux kernel, I found that the thermal sensors are currently fully supported, however the preconfigured limits...
View ArticleWhat does kernel thermal zone mean in dts file?
In the dts file of my kernel, I have:thermal-zones { cpu0_thermal: cpu0-thermal { thermal-sensors = <&tmuctrl_0>; polling-delay-passive = <1000>; polling-delay = <1000>; trips {...
View ArticleHow to modify an sk_buff and forward again from Linux kernel
I am trying to create a simple kernel module using Netfilter hook which will modify the source address of a any packet and transmit again just like a NAT. The new source address will be kept in...
View Articlewalk through kernel page table entries
I am trying to disable cache for Kernel space. To do so, I would like to modify flags in the page table entries (PTE) of the Kernel. I found examples for walks through PTE of user space:[url]Linux...
View ArticleChanging scheduler tick time
I want to change the scheduler tcik time(The amount of time CPU spends on each process). Initially I checked about jiffies, jiffies variable represents the no.of timer ticks from the boot. CONFIG_HZ in...
View ArticleSeparate debug symbol file(s) for Linux kernel
I know that when compiling a program with debug symbols (e.g. using gcc -g), I can separate the debug symbols into their own file using objcopy. Later, the file of debug symbols can be used to debug...
View ArticleWhat does 'left' field of strace select mean?
I'm using strace to investigate the select system call of a process and I'm trying to figure out what does 'left' mean. Find below the debug line extracted from the strace log.select(13, [6 7 8 11 12],...
View Article