** Description changed:

  On an ASUS Vivobook X3500PC/K3500PC with BIOS X3500PC.302, the kernel
  reports ACPI BIOS errors while probing thermal sensor participants
  SEN1–SEN4.
  
  System
  Model: ASUSTeK Vivobook_ASUSLaptop X3500PC_K3500PC
  BIOS: X3500PC.302
  BIOS date: 2022-08-08
  Kernel: 7.0.0-28-generic #28~24.04.1-Ubuntu
  Architecture: x86_64
  Actual result
  
  For each sensor, the static thermal trip-point methods reference objects
  that cannot be resolved:
  
  SEN1._CRT -> S1CT
  SEN1._HOT -> S1HT
  SEN1._PSV -> S1PT
  SEN1._AC0 -> S1AT
  
  The same failure occurs for the corresponding S2*, S3*, and S4* objects.
  
  Example:
  
  ACPI BIOS Error (bug): Could not resolve symbol
  [\_SB.PC00.LPCB.EC0.SEN1._CRT.S1CT], AE_NOT_FOUND
  
  ACPI Error: Aborting method
  \_SB.PC00.LPCB.EC0.SEN1._CRT due to previous error
  
  The errors reproduce on the current boot.
  
- Expected result
+ Expected result:
  
  The firmware should either:
  
  provide valid backing objects for the _CRT, _HOT, _PSV, and _AC0 methods; or
  omit these methods when the corresponding static trip points are not 
implemented.
  
- The kernel should ideally avoid repeatedly evaluating known-broken
- static trip methods while preserving valid temperature readings.
+ During thermal-zone registration, Linux evaluates the advertised static
+ trip methods, which abort because their backing AML objects cannot be
+ resolved. The thermal zones and working _TMP readings remain available,
+ but the corresponding static trip points are omitted. If a kernel-side
+ workaround is considered, it should preserve _TMP and any programmable
+ trip support while avoiding these known-failing firmware evaluations for
+ the affected DMI/BIOS combination.
  
- Additional observations
+ Additional observations:
  
  The sensor participants are still registered as thermal zones:
  
  thermal_zone2  SEN1       50 m°C
  thermal_zone3  SEN2    76050 m°C
  thermal_zone4  SEN3       50 m°C
  thermal_zone5  SEN4    73050 m°C
  
  SEN2 and SEN4 return plausible temperatures. This indicates that _TMP is
  operational independently of the failing static trip-point methods.
  
  SEN1 and SEN3 return approximately 0.05°C; these may be inactive or
  unpopulated channels, but their intended hardware meaning has not been
  established.
  
  Blacklisting all four sensor participants would therefore discard
  apparently useful temperature telemetry from SEN2 and SEN4.
  
  A conservative workaround would preserve _TMP and any programmable trip
  interfaces while avoiding evaluation of the failing _CRT, _HOT, _PSV,
  and _ACx methods for these participants on this model and BIOS.
  
  I am available to test a patched Ubuntu kernel.

** Description changed:

- On an ASUS Vivobook X3500PC/K3500PC with BIOS X3500PC.302, the kernel
- reports ACPI BIOS errors while probing thermal sensor participants
- SEN1–SEN4.
+ On an ASUS Vivobook Pro 15 X3500PC/K3500PC with BIOS X3500PC.302, the
+ kernel reports ACPI `AE_NOT_FOUND` errors while probing the SEN1–SEN4
+ thermal sensor participants.
  
- System
- Model: ASUSTeK Vivobook_ASUSLaptop X3500PC_K3500PC
- BIOS: X3500PC.302
- BIOS date: 2022-08-08
- Kernel: 7.0.0-28-generic #28~24.04.1-Ubuntu
- Architecture: x86_64
- Actual result
+ ## System
  
- For each sensor, the static thermal trip-point methods reference objects
- that cannot be resolved:
+ * Model: ASUSTeK Vivobook_ASUSLaptop X3500PC_K3500PC
+ * BIOS: X3500PC.302
+ * BIOS date: 2022-08-08
+ * Kernel: 7.0.0-28-generic #28~24.04.1-Ubuntu
+ * Kernel package: linux-image-7.0.0-28-generic 7.0.0-28.28~24.04.1
+ * Architecture: x86_64
+ * Distribution: Linux Mint 22.3, based on Ubuntu 24.04
  
- SEN1._CRT -> S1CT
- SEN1._HOT -> S1HT
- SEN1._PSV -> S1PT
- SEN1._AC0 -> S1AT
+ The kernel package originates from the official Ubuntu repositories.
  
- The same failure occurs for the corresponding S2*, S3*, and S4* objects.
+ This problem has occurred since I started using Linux on this machine
+ and is not a regression introduced by kernel 7.0.
+ 
+ ## Actual result
+ 
+ During boot, Linux evaluates the static thermal trip-point methods
+ exposed by:
+ 
+ * `\_SB.PC00.LPCB.EC0.SEN1`
+ * `\_SB.PC00.LPCB.EC0.SEN2`
+ * `\_SB.PC00.LPCB.EC0.SEN3`
+ * `\_SB.PC00.LPCB.EC0.SEN4`
+ 
+ The following methods reference ACPI objects that cannot be resolved:
+ 
+ * `_CRT` → `SxCT`
+ * `_HOT` → `SxHT`
+ * `_PSV` → `SxPT`
+ * `_AC0` → `SxAT`
+ 
+ where `x` corresponds to sensors 1 through 4.
  
  Example:
  
+ ```text
  ACPI BIOS Error (bug): Could not resolve symbol
  [\_SB.PC00.LPCB.EC0.SEN1._CRT.S1CT], AE_NOT_FOUND
  
  ACPI Error: Aborting method
  \_SB.PC00.LPCB.EC0.SEN1._CRT due to previous error
+ ```
  
- The errors reproduce on the current boot.
+ The same failure pattern occurs for the corresponding trip-point objects
+ used by SEN2, SEN3 and SEN4.
  
- Expected result:
+ Disassembly and inspection of the ACPI tables show references to these
+ objects, including external declarations, but no corresponding
+ definitions providing their values. The methods therefore exist in the
+ firmware but abort when Linux evaluates them.
  
- The firmware should either:
+ ## Thermal-zone behaviour
  
- provide valid backing objects for the _CRT, _HOT, _PSV, and _AC0 methods; or
- omit these methods when the corresponding static trip points are not 
implemented.
+ The sensor participants are nevertheless registered as Linux thermal
+ zones. Example readings from the current boot were:
  
- During thermal-zone registration, Linux evaluates the advertised static
- trip methods, which abort because their backing AML objects cannot be
- resolved. The thermal zones and working _TMP readings remain available,
- but the corresponding static trip points are omitted. If a kernel-side
- workaround is considered, it should preserve _TMP and any programmable
- trip support while avoiding these known-failing firmware evaluations for
- the affected DMI/BIOS combination.
- 
- Additional observations:
- 
- The sensor participants are still registered as thermal zones:
- 
+ ```text
  thermal_zone2  SEN1       50 m°C
  thermal_zone3  SEN2    76050 m°C
  thermal_zone4  SEN3       50 m°C
  thermal_zone5  SEN4    73050 m°C
+ ```
  
- SEN2 and SEN4 return plausible temperatures. This indicates that _TMP is
- operational independently of the failing static trip-point methods.
+ SEN2 and SEN4 return plausible temperatures. This indicates that their
+ `_TMP` methods operate independently of the failing static trip-point
+ methods.
  
- SEN1 and SEN3 return approximately 0.05°C; these may be inactive or
- unpopulated channels, but their intended hardware meaning has not been
- established.
+ SEN1 and SEN3 return approximately `50 m°C`. These may represent
+ inactive or unpopulated sensor channels, but their intended hardware
+ meaning has not been established.
  
- Blacklisting all four sensor participants would therefore discard
- apparently useful temperature telemetry from SEN2 and SEN4.
+ The confirmed impact is:
  
- A conservative workaround would preserve _TMP and any programmable trip
- interfaces while avoiding evaluation of the failing _CRT, _HOT, _PSV,
- and _ACx methods for these participants on this model and BIOS.
+ * ACPI BIOS errors are logged during thermal-zone probing;
+ * the affected static `_CRT`, `_HOT`, `_PSV` and `_AC0` trip points cannot be 
registered;
+ * valid temperature readings from SEN2 and SEN4 remain available.
  
- I am available to test a patched Ubuntu kernel.
+ No shutdown, thermal-throttling, fan-control, suspend or general power-
+ management failure has been observed. CPU and other system temperatures
+ remain normal.
+ 
+ ## Expected result
+ 
+ The firmware should either:
+ 
+ 1. provide valid backing objects for the `_CRT`, `_HOT`, `_PSV` and `_AC0` 
methods; or
+ 2. omit those methods when the corresponding static trip points are not 
implemented.
+ 
+ This appears to be malformed or incomplete ACPI firmware in BIOS
+ X3500PC.302 rather than a recent Linux kernel regression.
+ 
+ Linux currently handles the failure without making the machine unusable
+ and preserves working `_TMP` temperature readings. If a kernel-side
+ workaround is considered, it should not blacklist SEN1–SEN4 entirely,
+ because that would discard apparently valid telemetry from SEN2 and
+ SEN4.
+ 
+ Any workaround should be narrowly limited to the affected model and
+ firmware and should preserve working temperature readings and any valid
+ programmable thermal interfaces.
+ 
+ I am available to test a patched Ubuntu kernel if required.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2161334

Title:
  ASUS X3500PC BIOS 302: SEN1–SEN4 static ACPI trip methods fail with
  AE_NOT_FOUND

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-hwe-7.0/+bug/2161334/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to