High-Risk Vulnerability Alert: Linux Kernel DRM Vulnerability CVE-2025-39882

High-Risk Vulnerability Alert: Linux Kernel DRM Vulnerability CVE-2025-39882

Vulnerability Description: In the Linux kernel, the following vulnerability has been fixed in drm/mediatek: a potential use-after-free issue in the for_each_child_of_node() helper function, which releases each node reference it acquires while traversing child nodes. The explicit call to of_node_put() is only required when exiting the loop prematurely, removing the recently introduced unnecessary reference count decrement … Read more

Exploring RK3399 / Display Subsystem / From Modetest to DRM Driver

Exploring RK3399 / Display Subsystem / From Modetest to DRM Driver

Modetest is a testing program provided by libdrm that can query the characteristics of display devices, perform basic display tests, and set display modes. We can use this tool to learn about Linux DRM application programming. Additionally, to analyze the Rockchip DRM driver in depth, it is necessary to first understand how to use this … Read more

Exploring RK3399: Display Subsystem Basics

Exploring RK3399: Display Subsystem Basics

Many driver frameworks under Linux are quite complex, mostly accumulated over the years by many talented individuals both domestically and internationally. To learn driver development, it is essential to find your own positioning, grasp the overall picture first, and then appropriately fill in the details. Instead of always trying to delve deeply into the driver … Read more

Kernel Display Panel Code for OpenHarmony

Kernel Display Panel Code for OpenHarmony

Recently, while debugging the display issues in OpenHarmony, the cause was identified as the hardware being connected via HDMI to an RK628 adapter, which in turn connects to an LVDS display. The display panel implementation in OpenHarmony is relatively simple, directly using a DSI panel. Therefore, it is necessary to thoroughly organize the relevant drivers … Read more

This Anti-Piracy Tool Turns Legitimate Users into Victims

A few days ago, I came across a piece of news that almost made me impulsively uninstall all the gaming platforms on my computer. The upgraded anti-piracy Denuvo can now be used on DLCs! I believe many players have a reaction similar to mine: “What the hell, why is there another Denuvo? Can’t we just … Read more

Using the DrmCursor Layer in Rockchip

Using the DrmCursor Layer in Rockchip

Recently, RK has implemented a hardware cursor layer processed from the upper layer, with the repository located at https://github.com/JeffyCN/drm-cursor. Previously, hardware cursors like those on the RK3399 used the generic interface of libdrm, but on new platforms such as RK3568 and RK3588, it seems that the kernel does not set up a separate mouse layer. … Read more

Analysis of HDMI Hot Plug Process Based on DRM Framework

Analysis of HDMI Hot Plug Process Based on DRM Framework

D R M Based on DRM Framework HDMI Hot Plug Process Analysis PART.01 D R Introduction DRM stands for Direct Rendering Manager, which manages display output, buffer allocation, and frame buffering. The corresponding userspace library is libdrm, which provides a series of user-friendly control encapsulations, allowing users to easily control displays and request buffers. GDK8 … Read more

Basics of Imaging Display Drivers – MIPI and I2C

Basics of Imaging Display Drivers - MIPI and I2C

MIPI is a serial interface, and MIPI-DSI is the technology used for displays. LCD displays with MIPI interfaces serve as display outputs, enabling graphical user interfaces that allow ordinary users to skillfully operate computers and other devices. Therefore, MIPI is an important interface for human-computer interaction. In addition to the previously mentioned camera recording driver … Read more