Project

General

Profile

Actions

Bug #10771

open

Fix support for module_platform_driver_probe()

Added by Evgeny Novikov over 3 years ago. Updated over 3 years ago.

Status:
New
Priority:
High
Assignee:
Category:
Environment models
Target version:
-
Start date:
03/26/2021
Due date:
% Done:

0%

Estimated time:
Detected in build:
git
Platform:
Published in build:

Description

Recent changes in EMG or/and its specifications resulted in false alarms due to partial support for module_platform_driver_probe(). Now EMG invokes platform_driver.remove, but it does not invoke platform_driver.probe (before it invokes none of them). Obviously, this is incorrect. There are following examples (they are for Linux 5.12-rc3, but I think that for earlier versions of the Linux kernel the situation will be the same):
  • drivers/video/fbdev/atmel_lcdfb.ko, drivers:clk2
  • drivers/mtd/nand/raw/fsmc_nand.ko, drivers:clk2
  • drivers/usb/gadget/udc/r8a66597-udc.ko, drivers:clk2

I think that there are other modules and requirement specifications that suffer from this issue, but one needs to spend much efforts to reveal them.

BTW, it seems that accurate CPAchecker SMG understands that platform_driver.probe is invoked via a function pointer, so, it is okay for it.

Actions #1

Updated by Evgeny Novikov over 3 years ago

  • Priority changed from Immediate to High
  • Target version deleted (3.1)

Indeed, that is not a regression, since for Linux 5.5 everything works well. We just need a new specifications set for new version of the Linux kernel that does not have such a high priority.

Actions

Also available in: Atom PDF