Re: [PATCH] dt-bindings: mailbox: arm,mhu: Make secure interrupt optional
From: Jassi Brar
Date: Fri Jul 29 2022 - 11:18:28 EST
On Fri, Jul 29, 2022 at 6:10 AM Sudeep Holla <sudeep.holla@xxxxxxx> wrote:
> On Thu, Jul 28, 2022 at 04:07:45PM -0500, Jassi Brar wrote:
> > >
> > I could learn why specifying secure irq isn't desirable?
> > No non-secure client node would ask for that secure irq/channel, which
> > will simply lay unused.
>
> Did you mean would or wouldn't ?
>
I mean what's written.
> Anyways I can insert a module that requests this channel and bring down
> the system as accessing anything configure secure from non-secure side
> on Juno results in system hang/error.
>
Why go to those lengths? These are already simpler options available ;-)
1) while (1) ; // preferably in some atomic context
2) *((int *) 0) = 0; // you might want to iterate over offset for
guaranteed results
3) Slightly more work, but you also have the opportunity to erase your
storage device
> > index f6c55877fbd94..004b1566be74d 100644
> > --- a/arch/arm64/boot/dts/arm/juno-base.dtsi
> > +++ b/arch/arm64/boot/dts/arm/juno-base.dtsi
> > @@ -26,7 +26,8 @@ mailbox: mhu@2b1f0000 {
> > compatible = "arm,mhu", "arm,primecell";
> > reg = <0x0 0x2b1f0000 0x0 0x1000>;
> > interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
> > - <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
> > + <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
> > + <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
> > interrupt-names = "mhu_lpri_rx",
> > "mhu_hpri_rx";
> > #mbox-cells = <1>;
> >
> > If this works for you, I could submit a proper patch.
>
> No this doesn't work IMO.
>
If you _really_ tested and faced an error, please share it.
> Yes standalone everything looks fine, but you can
> insert a module requesting this channel and bring down the system.
>
If anyone other than a super-user is able to do that, then you have a
serious security problem at hand.
If you do that as a super-user, have fun.
cheers.