capdl icon indicating copy to clipboard operation
capdl copied to clipboard

ARMv6 is no longer supported by seL4

Open axel-h opened this issue 2 years ago • 11 comments

With https://github.com/seL4/seL4/pull/580 the ARMv6 support has been removed. Thus there's no reason to accept "arm11" here any longer.

axel-h avatar Mar 09 '22 05:03 axel-h

Looks like arm11 is being referenced in a test somewhere still. Since we don't have many tests for this tool, we should probably update that (now) failing test instead of removing it.

lsf37 avatar Mar 09 '22 06:03 lsf37

Seem it's some more work, lots of referenced actually...

axel-h avatar Mar 09 '22 06:03 axel-h

I've done some dumb replacement now and the build should work again. The binary python-capdl-tool/tests/resources/arm-hello.bin still needs to be replaced with an aarch32 version

axel-h avatar Mar 10 '22 12:03 axel-h

I wonder, should we add ARM_HYP also or do we leave this as a future task that is only done if somebody really needs this?

axel-h avatar Mar 10 '22 12:03 axel-h

I wonder, should we add ARM_HYP also or do we leave this as a future task that is only done if somebody really needs this?

I'd leave ARM_HYP as future task, esp since we want to get away from treating hyp as a separate architecture (not sure it'll be possible, but it'd be nice). @corlewis do you have any thoughts on this?

The other thing we will need to look at/change is all upstream code in other repos that produces those capDL specs. They will likely still reference arm11. In fact, there might be a lot more out there that we know of. We might want to support arm11 as a (strange, admittedly) syntax alternative for aarch32.

lsf37 avatar Mar 10 '22 21:03 lsf37

Is this why the " / capDL-tool (ghc)" fails:

/bin/sh: 1: dot: not found

or am I missing something?

axel-h avatar Mar 10 '22 22:03 axel-h

Is this why the " / capDL-tool (ghc)" fails:

/bin/sh: 1: dot: not found

or am I missing something?

I think you're right, we might need to add graphviz to the install in the action. Strange that this hasn't triggered before.

lsf37 avatar Mar 10 '22 22:03 lsf37

With https://github.com/seL4/seL4/pull/580 the ARMv6 support has been removed. Thus there's no reason to accept "arm11" here any longer.

"arm11" is the capdl spec name that is used for aarch32 configurations. The biggest reason to keep accepting "arm11" is that it's what's always been used and it isn't causing any issues. The spec definition currently accepts one name for each architecture it understands which is quite simple.

kent-mcleod avatar Mar 10 '22 23:03 kent-mcleod

@kent-mcleod: Based on you comment, should I drop this PR and make a new one that just adds comment explaining what this still exists? That should be sufficient to demystify things for anybody stumbling over this.

axel-h avatar Mar 11 '22 09:03 axel-h

That would be the minimal solution. I'm Ok with that, and this is really not high priority, but it'd be nice fix this name at least eventually (it's kinda my fault, I introduced it in the very beginning of capDL when verification supported only Arm11 and nothing else).

I'd be perfectly fine with the tool understanding both and producing a deprecation warning for arm11 for a few releases before we remove it. Actually removing all references is a bit of an operation.

lsf37 avatar Mar 11 '22 10:03 lsf37

Ok, See https://github.com/seL4/capdl/pull/40

axel-h avatar Mar 11 '22 10:03 axel-h