[gPXE-devel] [PATCH] [scriptlet] Add "scriptlet" NonVolatile Option (NVO) support.
Glenn Brown
glenn at myri.com
Tue Jun 29 18:31:04 EDT 2010
Marty,
I look forward to the scripting discussion.
I have used sha0's "loopif 1". It looks like very good insurance
against encountering a BIOS that hangs after failed boots. I plan to
built the loopif patch into our default ROMs.
I'm developing a pretty good understanding of the "settings"
infrastructure. My motivation was that I wanted to hide the smbios
settings in the text UI when the user does "config net0.nvo" and I
wanted to disable editing of read-only fields, such as "manufacturer"
which comes from smbios, and I wanted to hide unset read-only settings
from smbios. However, I ran into some interesting obstacles:
1) The "setting" structure and SETTINGS table are metadata about which
settings exist within gPXE, but omit any information about which
of the settings is associated with each 'settings' structure.
2) There is currently no standard way to know in advance if you
can store or fetch a particular setting in a given context,
other than trying to store or fetch and looking at the return value.
(1) meant I could not modify the settings UI to list just
context-relevant variables. (2) meant I could not disable editing or
hide read-only settings... although ultimately the nvo mechanism allows
all settings to be written.
This leads me to a question: who fully understands the 'tag' field usage
in the settings structure? I ask because I'm hopeful that I might
leverage this field to address (1) and (2) above with very little
overhead. Without a clear understanding of 'tag' field semantics,
however, such changes would be risky hacks.
Thanks,
--Glenn
More information about the gPXE-devel
mailing list