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


atishp@...
 



On Thu, Jan 27, 2022 at 12:57 AM Heinrich Schuchardt <heinrich.schuchardt@...> wrote:
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?


There was no need for any extension specific return value yet. I doubt if we will need one
in the future.
 
To reduce ambiguity, how about this change:

"Returns 0 if the given SBI extension ID (EID) is not available, or 1 if it is available unless 
defined as any other non-zero value by the implementation."

This aligns with what Andrew suggested and is compatible with all the existing implementations.

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

Heinrich

>
>
>         Jonathan
>
>         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
>             available"
>             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
>             lists.riscv.org <http://lists.riscv.org>
>             <atishp=rivosinc.com@...
>             <mailto:rivosinc.com@...>> 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
>              >>
>             https://github.com/riscv-non-isa/riscv-sbi-doc/releases/download/v1.0-rc1/riscv-sbi.pdf
>             <https://github.com/riscv-non-isa/riscv-sbi-doc/releases/download/v1.0-rc1/riscv-sbi.pdf>
>              >>
>              >> which was generated from the source available in the
>             following GitHub
>              >> repository:
>              >> https://github.com/riscv-non-isa/riscv-sbi-doc
>             <https://github.com/riscv-non-isa/riscv-sbi-doc>
>              >>
>              >> 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
>             incorporated
>              >> 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
>             review
>              >> specification, the platform HSC will recommend the updated
>              >> specifications be approved and ratified by the RISC-V
>             Technical
>              >> 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
>             meetings.
>              >>
>              >> Thanks to all the contributors for all their hard work.
>              >>
>              >> [1] tech-unixplatformspec@...
>             <mailto:tech-unixplatformspec@...>
>              >> [2]
>             https://github.com/riscv-non-isa/riscv-sbi-doc/issues
>             <https://github.com/riscv-non-isa/riscv-sbi-doc/issues>
>              >>
>              >> Regards,
>              >> Atish Patra
>              >>
>              >>
>              >>
>              >>
>              >>
>

Join {tech-unixplatformspec@lists.riscv.org to automatically receive all group messages.