In-Depth Analysis of Linux Kernel Linked Lists: The Secrets and Practical Guide to list.h

In-Depth Analysis of Linux Kernel Linked Lists: The Secrets and Practical Guide to list.h

In the world of the Linux kernel, data structures are like the foundation of a building, supporting the efficient operation of the entire system. Linked lists, as a flexible and commonly used data structure, play a crucial role in the kernel. Today, we will delve into the implementation of linked lists in the Linux kernel—list.h—and … Read more

Linux Power Management (14): Power Management from the Perspective of Device Drivers

Linux Power Management (14): Power Management from the Perspective of Device Drivers

Original:Wowotech Technology http://www.wowotech.net/pm_subsystem/pm_architecture.html 1. Introduction It is well known among Linux driver engineers who have been working for a while: In the past, implementing power management functions for a device was a straightforward task. Most devices were abstracted as platform devices, and the driver only needed to provide callback functions for suspend/resume/shutdown and register them … Read more

Dynamic Debugging in the Linux Kernel: A Powerful Tool for Runtime Debugging

Dynamic Debugging in the Linux Kernel: A Powerful Tool for Runtime Debugging

Introduction Previously, we discussed Linux Kernel Debugging: The Powerful printk (Part 2) Linux Kernel Debugging: The Powerful printk (Part 3) In those articles, we introduced pr_debug and dev_dbg. Below is the definition of dev_dbg: #if defined(CONFIG_DYNAMIC_DEBUG) || \ (defined(CONFIG_DYNAMIC_DEBUG_CORE) && defined(DYNAMIC_DEBUG_MODULE)) #define dev_dbg(dev, fmt, …) \ dynamic_dev_dbg(dev, dev_fmt(fmt), ##__VA_ARGS__) #elif defined(DEBUG) #define dev_dbg(dev, fmt, …) … Read more

Detailed Explanation of LCD Driver in Embedded Linux Kernel

Detailed Explanation of LCD Driver in Embedded Linux Kernel

1 Application Layer Calls to LCD Driver Methods Open the corresponding device node app: open(“/dev/fb0”, …) Major device number: 29, Minor device number: 0 ————————————————————– kernel: fb_open // fbmem.c struct fb_info *info; info = get_fb_info(fbidx); if (info->fbops->fb_open) { res = info->fbops->fb_open(info,1); // Hardware-related driver if (res) module_put(info->fbops->owner); } Obtain variable information (including resolution, etc.) app: … Read more

RISC-V Linux Kernel and Related Technology Updates

RISC-V Linux Kernel and Related Technology Updates

20220723: Issue 4 Kernel Updates v4: Fix RISC-V’s arch-topology reporting The arm64 topology code is largely applicable to RISC-V as well, so it has been made generic along with the removal of MPIDR related code, which appears to be redundant since ‘3102bc0e6ac7 (“arm64: topology: Stop using MPIDR for topology information”)’ replaced the code that actually … Read more

“Treating Bugs as Features is Absurd!” Linus Torvalds Criticizes Case-Insensitive Filesystems: A Major Mistake

"Treating Bugs as Features is Absurd!" Linus Torvalds Criticizes Case-Insensitive Filesystems: A Major Mistake

Shake Network Technology NewsClick on the right to follow for the latest technology news!In the open-source community, Linus Torvalds’ outbursts always seem to trigger a wave of “mini earthquakes”. Recently, this father of Linux has once again fired back — this time, targeting a long-standing issue in filesystem development: case insensitivity (i.e., not distinguishing between … Read more

Chinese Professor’s Actions Spark Outrage After Linux Kernel Blacklists University for Submitting Vulnerabilities

Chinese Professor's Actions Spark Outrage After Linux Kernel Blacklists University for Submitting Vulnerabilities

Author | Xu Xuanjuan“Even if you can provide evidence that those patches are effective, why are we actually wasting time doing extra work?” Linus Torvalds must be furious. Recently, Greg Kroah-Hartman, the maintainer of the Linux kernel stable branch, blacklisted the University of Minnesota (UMN), prohibiting it from submitting patches to the mainline Linux kernel. … Read more

Statistical Study of High-Frequency Attack Surfaces and Vulnerability Types in the Linux Kernel

Statistical Study of High-Frequency Attack Surfaces and Vulnerability Types in the Linux Kernel

Collected and organized all Linux kernel vulnerabilities from January 1, 2022, to February 18, 2023, with data sourced from NVD, totaling 314 vulnerabilities. The analysis of the Linux kernel attack surface is based on CWE types and the subsystems where the vulnerabilities are located. CWE Statistics According to publicly available CVE information, a total of … Read more

How to Control the Future: Allwinner F1C100s (Lichee Pi) Leads You into the Embedded World

How to Control the Future: Allwinner F1C100s (Lichee Pi) Leads You into the Embedded World

This article will cover the following topics: Introduction to F1C100s, U-Boot, Linux kernel customization, and application development using C or C++. We will also provide two examples: a simple example controlling an LED blinking and another creating a GUI program with a button. F1C100s Performance Parameters The F1C100s is a low-cost, low-power 32-bit processor commonly … Read more

Treating Bugs as Features is Absurd! Linus Torvalds Criticizes Case-Insensitive Filesystems: A Major Mistake

Treating Bugs as Features is Absurd! Linus Torvalds Criticizes Case-Insensitive Filesystems: A Major Mistake

In the open-source community, Linus Torvalds’ outbursts always seem to trigger a “small earthquake”.Recently, the father of Linux has once again fired back— this time, targeting a long-standing issue in filesystem development: case insensitivity (case-insensitive, meaning it does not distinguish between uppercase and lowercase characters). He not only criticized this design as a “huge mistake,” … Read more