dell / libsmbios

library for interacting with Dell SMBIOS tables
Other
192 stars 39 forks source link

smbios-token-ctl / Could not manipulate system token #144

Open rowlap opened 9 months ago

rowlap commented 9 months ago

smbios-token-ctl bails out with error:

# src/bin/smbios-token-ctl --version
2.4.3

# src/bin/smbios-token-ctl --dump-tokens-csv
ID,Type,Value,Name,Setting
ERROR: Could not manipulate system token.

With --trace output the final error section is

ENTER isActive(<libsmbios_c.Token ID 0x0005>, )
ENTER _errorOnNegativeFN(-1, <_FuncPtr object at 0x7fa756cf1750>, (<libsmbios_c.Token ID 0x0005>,), )
RAN CTYPES FUNCTION: token_obj_is_active
ENTER _obj_strerror(<libsmbios_c.Token ID 0x0005>, )
LEAVE _obj_strerror --> b'Low level SMI call failed.\n\xbe\xc6\x80V\x05'

EXCEPTION: b'Low level SMI call failed.\n\xbe\xc6\x80V\x05'
Traceback (most recent call last):
  File "/tmp/libsmbios-2.4.3/src/bin/../python/libsmbios_c/trace_decorator.py", line 103, in trace
    result = func(*args, **kw)
  File "/tmp/libsmbios-2.4.3/src/bin/../python/libsmbios_c/_common.py", line 65, in _errorOnNegativeFN
    _doExc(exception_fn, result, func, args, _("function returned negative error code") )
  File "/tmp/libsmbios-2.4.3/src/bin/../python/libsmbios_c/_common.py", line 25, in _doExc
    raise exception_fn(r, f, a)
libsmbios_c.smbios_token.TokenManipulationFailure: b'Low level SMI call failed.\n\xbe\xc6\x80V\x05'
LEAVE _errorOnNegativeFN --> 'EXCEPTION RAISED'

EXCEPTION: b'Low level SMI call failed.\n\xbe\xc6\x80V\x05'
Traceback (most recent call last):
  File "/tmp/libsmbios-2.4.3/src/bin/../python/libsmbios_c/trace_decorator.py", line 103, in trace
    result = func(*args, **kw)
  File "/tmp/libsmbios-2.4.3/src/bin/../python/libsmbios_c/smbios_token.py", line 50, in isActive
    return DLL.token_obj_is_active(self)
  File "/tmp/libsmbios-2.4.3/src/bin/../python/libsmbios_c/trace_decorator.py", line 103, in trace
    result = func(*args, **kw)
  File "/tmp/libsmbios-2.4.3/src/bin/../python/libsmbios_c/_common.py", line 65, in _errorOnNegativeFN
    _doExc(exception_fn, result, func, args, _("function returned negative error code") )
  File "/tmp/libsmbios-2.4.3/src/bin/../python/libsmbios_c/_common.py", line 25, in _doExc
    raise exception_fn(r, f, a)
libsmbios_c.smbios_token.TokenManipulationFailure: b'Low level SMI call failed.\n\xbe\xc6\x80V\x05'
LEAVE isActive --> 'EXCEPTION RAISED'

ERROR: Could not manipulate system token.

This error is seen on multiple devices and models (OptiPlex / Precision). The interesting thing is that cctk fails to enumerate BIOS settings on the same systems which fail with the above error.