Re: Public review of Supervisor Binary Interface (SBI) Specification

Heinrich Schuchardt

On 1/27/22 09:33, atishp@... wrote:
On Tue, Jan 18, 2022 at 2:46 PM Andrew Waterman <andrew@... <mailto:andrew@...>> wrote:
On Wed, Jan 12, 2022 at 12:50 PM Jonathan Behrens <behrensj@...
<mailto:behrensj@...>> wrote:
If that is the intention, the text should be changed to "Returns
0 if the given SBI extension ID (EID) is not available, or an
*implementation defined* non-zero value if it is available".
Although, if the extensions aren't defining any meaning to the
various possible non-zero values, I personally don't see why we
shouldn't change it to "returns one if it is available".
I think allowing implementation-defined nonzero rather than
requiring it be 1 is OK, but I agree with your proposed wording change.
Sounds good to me as well. I will make the change.
Why should the value be implementation specific and not extension specific?

I would prefer if the specification would provide extension specific unique return values instead of introducing ambiguity about possible return values.

This also allows us to define further return values per extension if needed in future. But currently all of these values can be defined as 1.

We just have to add this value 1 to each extension description.

Best regards


On Wed, Jan 12, 2022 at 3:32 PM Atish Kumar Patra
<atishp@... <mailto:atishp@...>> wrote:
On Wed, Jan 12, 2022 at 10:59 AM Jonathan Behrens
<behrensj@... <mailto:behrensj@...>> wrote:
> If I understand correctly, per the description of
`sbi_probe_extension`, each of the extensions are supposed
to specify an "extension-specific non-zero value" to return
if they are available. However, right now I don't think any
of them do. Is this something that should be fixed?
The description says "Returns 0 if the given SBI extension
ID (EID) is
not available, or an extension-specific non-zero value if it is
The specification says it should be non-zero as the value "0"
indicates non-availability of the extension. The exact
return value
should be an implementation detail.

> Jonathan
> On Wed, Jan 12, 2022 at 1:44 PM atishp via <>
<>> wrote:
>> I just realized that the below email was not delivered
to unix
>> platform mailing list and
>> linux-riscv mailing list because of the attachment.
Reseeding it again
>> without the
>> attachment. Apologies for the noise.
>> We are delighted to announce the start of the public
review period for
>> the Non-ISA Supervisor Binary Interface (SBI)
specification. The
>> SBI specification is considered as frozen now as per the
RISC-V International
>> policies.
>> The review period begins today, Monday Jan 10, and ends
on Monday
>> Jan 24 (inclusive).
>> The specification can be found here
>> which was generated from the source available in the
following GitHub
>> repository:
>> To respond to the public review, please either reply to
this email or
>> send comments to the platform mailing list[1] or add
issues to the
>> SBI GitHub repo[2]. We welcome all input and appreciate
your time and
>> effort in helping us by reviewing the specification.
>> During the public review period, corrections, comments, and
>> suggestions, will be gathered for review by the Platform
HSC members. Any
>> minor corrections and/or uncontroversial changes will be
>> into the specification. Any remaining issues or proposed
changes will
>> be addressed in the public review summary report. If
there are no
>> issues that require incompatible changes to the public
>> specification, the platform HSC will recommend the updated
>> specifications be approved and ratified by the RISC-V
>> Steering Committee and the RISC-V Board of Directors.
>> SBI specification is non-ISA specifications and will
evolve over time
>> with new extensions as long as they are backward
compatible. Any such
>> proposals for new extensions can be included in the
future releases
>> after proper discussions in the platform working group
>> Thanks to all the contributors for all their hard work.
>> [1] tech-unixplatformspec@...
>> [2]
>> Regards,
>> Atish Patra

Join to automatically receive all group messages.