[PATCH v4 0/4] p2sb: Fix unexpected P2SB device disappearance

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



When the BIOS does not hide the P2SB device, it is expected to be visible from
userspace. However, the P2SB device disappears since the commit 5913320eb0b3
("platform/x86: p2sb: Allow p2sb_bar() calls during PCI device probe") [1]. This
series addresses the problem. The first three patches are preliminary
refactoring for the fix. The last patch resolves the issue by caching the P2SB
device resources only if the BIOS hides the P2SB device.

[1] https://lore.kernel.org/lkml/ZzTI+biIUTvFT6NC@goliath/

Changes from v3:
* 4th patch: Added the missing ret=0 initialization in p2sb_cache_resources()
* Added Reviewed-by tags
* Link to v3: https://lore.kernel.org/platform-driver-x86/20241127060055.357498-1-shinichiro.kawasaki@xxxxxxx/

Changes from v2:
* Renamed the global flag from p2sb_hidden to p2sb_hidden_by_bios
* Moved P2SB hide and unhide code to p2sb_scan_and_cache()
* Introduced two helper functions which are called from p2sb_bar()
* Separated the preliminary refactoring work to 3 new patches
* Link to v2: https://lore.kernel.org/platform-driver-x86/20241125042326.304780-1-shinichiro.kawasaki@xxxxxxx/

Changes from v1:
* Put back P2SBC_HIDE flag reference code in the rescan_remove lock region
* Do not cache resources when the P2SB device is not hidden
* Added the Reported-by tag
* Link to v1: https://lore.kernel.org/platform-driver-x86/20241120064055.245969-1-shinichiro.kawasaki@xxxxxxx/

Shin'ichiro Kawasaki (4):
  p2sb: Factor out p2sb_read_from_cache()
  p2sb: Introduce the global flag p2sb_hidden_by_bios
  p2sb: Move P2SB hide and unhide code to p2sb_scan_and_cache()
  p2sb: Do not scan and remove the P2SB device when it is unhidden

 drivers/platform/x86/p2sb.c | 79 ++++++++++++++++++++++++++-----------
 1 file changed, 56 insertions(+), 23 deletions(-)

-- 
2.47.0





[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux