Skip to content

Fangzhu support dev - #334

Merged
ejgoldik merged 10 commits into
Fangzhou_deser_supportfrom
fangzhu_support_dev
Jan 8, 2026
Merged

Fangzhu support dev#334
ejgoldik merged 10 commits into
Fangzhou_deser_supportfrom
fangzhu_support_dev

Conversation

@ejgoldik

@ejgoldik ejgoldik commented Jan 8, 2026

Copy link
Copy Markdown
Contributor

No description provided.

ejgoldik and others added 10 commits January 8, 2026 08:08
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
- Also added missing max96712.h files

Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
@ejgoldik
ejgoldik merged commit b014aa1 into Fangzhou_deser_support Jan 8, 2026
1 of 6 checks passed
Comment thread kernel/realsense/d4xx.c

state->dser_dev = &dser_i2c->dev;
/* Initialize deserializer interface */
if (!strcmp(dser_node->name, "max9296")) {

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using dser_node->name after of_node_put() (use-after-free). Keep a copy of the name before calling of_node_put(), or avoid accessing dser_node after it's released.

Details

✨ AI Reasoning
​The change introduces reading dser_node->name after of_node_put(dser_node) was called earlier. of_parse_phandle/of_find_i2c_device_by_node usage pattern indicates the driver releases the device node reference with of_node_put(), making further dereference of the pointer unsafe. Dereferencing a node pointer after it has been put can lead to use-after-free and segmentation faults at runtime. This defect was introduced by the added block that branches on dser_node->name to pick a deserializer interface.

🔧 How do I fix it?
Add null checks before dereferencing pointers, validate array bounds before access, avoid using pointers after free/delete, don't write to string literals, and prefer smart pointers in modern C++.

More info - Comment @AikidoSec feedback: [FEEDBACK] to get better review comments in the future.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant