Re: [PATCH v3 1/5] [PATCH 1/5] gdb/aarch64: Add POR_EL0 register support for FEAT_S1POE

Thiago Jung Bauermann <[email protected]>
Newsgroups gmane.comp.gdb.patches
Message-ID <[email protected]>
Hello,

Srinath Parvathaneni <[email protected]> writes:

> Hi Luis/Thiago,
>
> After looking at the suggestions in the thread, I made a few changes to the
> POR_EL0 interface. The custom display for por_el0 has been updated, and I've
> also added support for pseudo registers for the individual permission fields.
>
> Could you please have a look at the output below? If this looks ok, I'll re-spin
> the series, address the remaining review comments and send it out for another
> review.

I like this output. I'd like to see what Luis thinks but IMHO it's a
nice improvement over the previous versions, and is a usable way of
working with the POR and its individual permissions.

> Also added a new group (por) for por_el0 register along with poe pseduo registers.

Good idea.

> Set 1:
> (gdb) info register por_el0
> por_el0        0x0000000000000077 [ P1=rwx P0=rwx ]
> (gdb) info register por
> por_el0        0x0000000000000077 [ P1=rwx P0=rwx ]
> por_el0_p0     0x7                rwx
> por_el0_p1     0x7                rwx
> por_el0_p2     0x0                ---
> por_el0_p3     0x0                ---
> por_el0_p4     0x0                ---
> por_el0_p5     0x0                ---
> por_el0_p6     0x0                ---
> por_el0_p7     0x0                ---
> por_el0_p8     0x0                ---
> por_el0_p9     0x0                ---
> por_el0_p10    0x0                ---
> por_el0_p11    0x0                ---
> por_el0_p12    0x0                ---
> por_el0_p13    0x0                ---
> por_el0_p14    0x0                ---
> por_el0_p15    0x0                ---
>
> Set 2:
> (gdb) set $por_el0=0xf7f7f7f7f7f7f7f7
> (gdb) info register por_el0
> por_el0        0xf7f7f7f7f7f7f7f7 [ P15=??? P14=rwx P13=??? P12=rwx
>                                                            P11=??? P10=rwx P9=??? P8=rwx
>                                                                  P7=??? P6=rwx P5=??? P4=rwx
>                                                                  P3=??? P2=rwx P1=??? P0=rwx ]
> (gdb) info register por
> por_el0        0xf7f7f7f7f7f7f7f7 [ P15=??? P14=rwx P13=??? P12=rwx
>                                                                  P11=??? P10=rwx P9=??? P8=rwx
>                                                                  P7=??? P6=rwx P5=??? P4=rwx
>                                                                  P3=??? P2=rwx P1=??? P0=rwx ]
> por_el0_p0     0x7                       rwx
> por_el0_p1     0xf                        ???
> por_el0_p2     0x7                       rwx
> por_el0_p3     0xf                        ???
> por_el0_p4     0x7                       rwx
> por_el0_p5     0xf                      ???
> por_el0_p6     0x7                      rwx
> por_el0_p7     0xf                      ???
> por_el0_p8     0x7                            rwx
> por_el0_p9     0xf                             ???
> por_el0_p10    0x7                           rwx
> por_el0_p11    0xf                            ???
> por_el0_p12    0x7                           rwx
> por_el0_p13    0xf                            ???
> por_el0_p14    0x7                           rwx
> por_el0_p15    0xf                            ???
>
> Set 3:
> (gdb) set $por_el0=0x0123456789abcdef
> (gdb) info register por_el0
> por_el0        0x0123456789abcdef [ P14=r-- P13=--x P12=r-x P11=-w-
>                                                   P10=rw- P9=-wx P8=rwx P7=???
>                                                    P6=??? P5=??? P4=??? P3=???
>                                                    P2=??? P1=??? P0=??? ]
> (gdb) info register por
> por_el0        0x0123456789abcdef [ P14=r-- P13=--x P12=r-x P11=-w-
>                                                   P10=rw- P9=-wx P8=rwx P7=???
>                                                   P6=??? P5=??? P4=??? P3=???
>                                                   P2=??? P1=??? P0=??? ]
> por_el0_p0     0xf                     ???
> por_el0_p1     0xe                    ???
> por_el0_p2     0xd                    ???
> por_el0_p3     0xc                    ???
> por_el0_p4     0xb                         ???
> por_el0_p5     0xa                         ???
> por_el0_p6     0x9                         ???
> por_el0_p7     0x8                         ???
> por_el0_p8     0x7                         rwx
> por_el0_p9     0x6                         -wx
> por_el0_p10    0x5                         rw-
> por_el0_p11    0x4                        -w-
> por_el0_p12    0x3                        r-x
> por_el0_p13    0x2                        --x
> por_el0_p14    0x1                        r--
> por_el0_p15    0x0                        ---
> (gdb)
>
> Set 4:
> (gdb) set $por_el0=0x7
> (gdb) info register por
> por_el0        0x0000000000000007 [ P0=rwx ]
> por_el0_p0     0x7                        rwx
> por_el0_p1     0x0                        ---
> por_el0_p2     0x0                       ---
> por_el0_p3     0x0                        ---
> por_el0_p4     0x0                        ---
> por_el0_p5     0x0                        ---
> por_el0_p6     0x0                        ---
> por_el0_p7     0x0                        ---
> por_el0_p8     0x0                        ---
> por_el0_p9     0x0                        ---
> por_el0_p10    0x0                        ---
> por_el0_p11    0x0                        ---
> por_el0_p12    0x0                        ---
> por_el0_p13    0x0                        ---
> por_el0_p14    0x0                        ---
> por_el0_p15    0x0                        ---
> (gdb) set $por_el0_p1=0x7
> (gdb) set $por_el0_p3=0x5
> (gdb) set $por_el0_p4=0x3
> (gdb) set $por_el0_p5=0x1
> (gdb) set $por_el0_p6=0xf
> (gdb) info register por
> por_el0        0x000000000f135077 [ P6=??? P5=r-- P4=r-x P3=rw-
>                                                   P1=rwx P0=rwx ]
> por_el0_p0     0x7                     rwx
> por_el0_p1     0x7                   rwx
> por_el0_p2     0x0                         ---
> por_el0_p3     0x5                        rw-
> por_el0_p4     0x3                        r-x
> por_el0_p5     0x1                        r--
> por_el0_p6     0xf                        ???
> por_el0_p7     0x0                        ---
> por_el0_p8     0x0                        ---
> por_el0_p9     0x0                        ---
> por_el0_p10    0x0                        ---
> por_el0_p11    0x0                        ---
> por_el0_p12    0x0                        ---
> por_el0_p13    0x0                        ---
> por_el0_p14    0x0                        ---
> por_el0_p15    0x0                        ---
> (gdb)
>
> Please let me know your comments, thanks.
>
> Regards,
> Sri.

-- 
Thiago
(he/him)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.