Bitfield generator EBNF grammar
Hey guys, I've been attempting to put together some rust bindings for the seL4 fault handling mechanisms, and I'm afraid the bitfield generator is driving me a bit up a wall at this point. I'd like to find a concise grammar for the language so I can better understand how bitfield_gen.py works, but there doesn't seem to be any explicit BNF for it anywhere. Is there a paper I should be reading or a reference guide somewhere that would help? Thanks! -- June Tate-Gans Software Engineer Techlead, Kata OS / AmbiML, Google
Hello June, The Rust libraries I've been working on for the seL4 Foundation include a bitfield parser [1] and corresponding Rust code generator [2]. I'd be interested in learning more about these bindings you are working on. What kind of API are you envisioning? Best, Nick [1] https://gitlab.com/coliasgroup/rust-seL4/-/tree/main/crates/sel4/bitfield-pa... [2] https://gitlab.com/coliasgroup/rust-seL4/-/tree/main/crates/sel4/sys/build/b... On Tue, Mar 21, 2023 at 4:01 PM June Tate-Gans (ジューン) via Devel <devel@sel4.systems> wrote:
Hey guys,
I've been attempting to put together some rust bindings for the seL4 fault handling mechanisms, and I'm afraid the bitfield generator is driving me a bit up a wall at this point. I'd like to find a concise grammar for the language so I can better understand how bitfield_gen.py works, but there doesn't seem to be any explicit BNF for it anywhere.
Is there a paper I should be reading or a reference guide somewhere that would help?
Thanks!
-- June Tate-Gans Software Engineer Techlead, Kata OS / AmbiML, Google _______________________________________________ Devel mailing list -- devel@sel4.systems To unsubscribe send an email to devel-leave@sel4.systems
At the moment, we're attempting to keep parity with the existing libsel4 library by re-using the existing scripts to generate things where we can, modulo some changes to the bitfield_gen.py to generate rust code. You can see what we're building at < https://github.com/AmbiML/sparrow-cantrip-full/tree/main/apps/system/compone...
.
On Tue, Mar 21, 2023 at 4:57 PM Nick Spinale <nick@nickspinale.com> wrote:
Hello June,
The Rust libraries I've been working on for the seL4 Foundation include a bitfield parser [1] and corresponding Rust code generator [2].
I'd be interested in learning more about these bindings you are working on. What kind of API are you envisioning?
Best, Nick
[1] https://gitlab.com/coliasgroup/rust-seL4/-/tree/main/crates/sel4/bitfield-pa... [2] https://gitlab.com/coliasgroup/rust-seL4/-/tree/main/crates/sel4/sys/build/b...
On Tue, Mar 21, 2023 at 4:01 PM June Tate-Gans (ジューン) via Devel <devel@sel4.systems> wrote:
Hey guys,
I've been attempting to put together some rust bindings for the seL4 fault handling mechanisms, and I'm afraid the bitfield generator is driving me a bit up a wall at this point. I'd like to find a concise grammar for the language so I can better understand how bitfield_gen.py works, but there doesn't seem to be any explicit BNF for it anywhere.
Is there a paper I should be reading or a reference guide somewhere that would help?
Thanks!
-- June Tate-Gans Software Engineer Techlead, Kata OS / AmbiML, Google _______________________________________________ Devel mailing list -- devel@sel4.systems To unsubscribe send an email to devel-leave@sel4.systems
-- June Tate-Gans Software Engineer Techlead, Kata OS / AmbiML, Google
Bear in mind, this is not all our original work. We're borrowing from prior efforts in this area as well from work on the Robigalia rust crates as a starting point. On Wed, Mar 22, 2023 at 11:57 AM June Tate-Gans (ジューン) <jtgans@google.com> wrote:
At the moment, we're attempting to keep parity with the existing libsel4 library by re-using the existing scripts to generate things where we can, modulo some changes to the bitfield_gen.py to generate rust code. You can see what we're building at < https://github.com/AmbiML/sparrow-cantrip-full/tree/main/apps/system/compone...
.
On Tue, Mar 21, 2023 at 4:57 PM Nick Spinale <nick@nickspinale.com> wrote:
Hello June,
The Rust libraries I've been working on for the seL4 Foundation include a bitfield parser [1] and corresponding Rust code generator [2].
I'd be interested in learning more about these bindings you are working on. What kind of API are you envisioning?
Best, Nick
[1] https://gitlab.com/coliasgroup/rust-seL4/-/tree/main/crates/sel4/bitfield-pa... [2] https://gitlab.com/coliasgroup/rust-seL4/-/tree/main/crates/sel4/sys/build/b...
On Tue, Mar 21, 2023 at 4:01 PM June Tate-Gans (ジューン) via Devel <devel@sel4.systems> wrote:
Hey guys,
I've been attempting to put together some rust bindings for the seL4 fault handling mechanisms, and I'm afraid the bitfield generator is driving me a bit up a wall at this point. I'd like to find a concise grammar for the language so I can better understand how bitfield_gen.py works, but there doesn't seem to be any explicit BNF for it anywhere.
Is there a paper I should be reading or a reference guide somewhere that would help?
Thanks!
-- June Tate-Gans Software Engineer Techlead, Kata OS / AmbiML, Google _______________________________________________ Devel mailing list -- devel@sel4.systems To unsubscribe send an email to devel-leave@sel4.systems
-- June Tate-Gans Software Engineer Techlead, Kata OS / AmbiML, Google
-- June Tate-Gans Software Engineer Techlead, Kata OS / AmbiML, Google
This will be too late to help June, but putting this here so it can come up in archives/search. There is now a manual and grammar spec for the bitfield generator in the tools/ directory of the seL4 repository: https://github.com/seL4/seL4/blob/master/tools/bitfield_gen.md Cheers, Gerwin On 22 Mar 2023, at 08:56, Nick Spinale <nick@nickspinale.com> wrote: Hello June, The Rust libraries I've been working on for the seL4 Foundation include a bitfield parser [1] and corresponding Rust code generator [2]. I'd be interested in learning more about these bindings you are working on. What kind of API are you envisioning? Best, Nick [1] https://gitlab.com/coliasgroup/rust-seL4/-/tree/main/crates/sel4/bitfield-pa... [2] https://gitlab.com/coliasgroup/rust-seL4/-/tree/main/crates/sel4/sys/build/b... On Tue, Mar 21, 2023 at 4:01 PM June Tate-Gans (ジューン) via Devel <devel@sel4.systems> wrote: Hey guys, I've been attempting to put together some rust bindings for the seL4 fault handling mechanisms, and I'm afraid the bitfield generator is driving me a bit up a wall at this point. I'd like to find a concise grammar for the language so I can better understand how bitfield_gen.py works, but there doesn't seem to be any explicit BNF for it anywhere. Is there a paper I should be reading or a reference guide somewhere that would help? Thanks! -- June Tate-Gans Software Engineer Techlead, Kata OS / AmbiML, Google _______________________________________________ Devel mailing list -- devel@sel4.systems To unsubscribe send an email to devel-leave@sel4.systems _______________________________________________ Devel mailing list -- devel@sel4.systems To unsubscribe send an email to devel-leave@sel4.systems
Woot! Thanks! Fortunately, I managed to get things to work locally so this was a non-issue later. Reading the paper helped, but yeah, for the next person to dig into this, this should help significantly (and maybe help me down the line, too, if I forget all of this again). On Mon, Jun 5, 2023 at 7:04 PM Gerwin Klein <kleing@unsw.edu.au> wrote:
This will be too late to help June, but putting this here so it can come up in archives/search.
There is now a manual and grammar spec for the bitfield generator in the tools/ directory of the seL4 repository: https://github.com/seL4/seL4/blob/master/tools/bitfield_gen.md
Cheers, Gerwin
On 22 Mar 2023, at 08:56, Nick Spinale <nick@nickspinale.com> wrote:
Hello June,
The Rust libraries I've been working on for the seL4 Foundation include a bitfield parser [1] and corresponding Rust code generator [2].
I'd be interested in learning more about these bindings you are working on. What kind of API are you envisioning?
Best, Nick
[1]
https://gitlab.com/coliasgroup/rust-seL4/-/tree/main/crates/sel4/bitfield-pa... [2]
https://gitlab.com/coliasgroup/rust-seL4/-/tree/main/crates/sel4/sys/build/b...
On Tue, Mar 21, 2023 at 4:01 PM June Tate-Gans (ジューン) via Devel <devel@sel4.systems> wrote:
Hey guys,
I've been attempting to put together some rust bindings for the seL4 fault handling mechanisms, and I'm afraid the bitfield generator is driving me a bit up a wall at this point. I'd like to find a concise grammar for the language so I can better understand how bitfield_gen.py works, but there doesn't seem to be any explicit BNF for it anywhere.
Is there a paper I should be reading or a reference guide somewhere that would help?
Thanks!
-- June Tate-Gans Software Engineer Techlead, Kata OS / AmbiML, Google _______________________________________________ Devel mailing list -- devel@sel4.systems To unsubscribe send an email to devel-leave@sel4.systems
_______________________________________________ Devel mailing list -- devel@sel4.systems To unsubscribe send an email to devel-leave@sel4.systems
-- June Tate-Gans Software Engineer Techlead, Cantrip OS / AmbiML, Google
participants (3)
-
Gerwin Klein
-
June Tate-Gans (ジューン)
-
Nick Spinale