lkml.org 
[lkml]   [2022]   [May]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH 3/8] s390/entry: shorten OUTSIDE macro
    On Thu, May 12, 2022 at 12:15 PM Heiko Carstens <hca@linux.ibm.com> wrote:
    >
    > On Thu, May 12, 2022 at 11:00:31AM -0700, Nick Desaulniers wrote:
    > > On Thu, May 12, 2022 at 10:22 AM Heiko Carstens <hca@linux.ibm.com> wrote:
    > > >
    > > > On Wed, May 11, 2022 at 02:05:27PM +0200, Heiko Carstens wrote:
    > > > > Since the minimum architecture level has been raised to z10 a shorter
    > > > > instruction sequence can be used to implement the OUTSIDE macro. This
    > > > > also reduces the number of used registers within that macro to one.
    > > > >
    > > > > Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
    > > > > ---
    > > > > arch/s390/kernel/entry.S | 8 +++-----
    > > > > 1 file changed, 3 insertions(+), 5 deletions(-)
    > > > >
    > > > > diff --git a/arch/s390/kernel/entry.S b/arch/s390/kernel/entry.S
    > > > > index a6b45eaa3450..e1664b45090f 100644
    > > > > --- a/arch/s390/kernel/entry.S
    > > > > +++ b/arch/s390/kernel/entry.S
    > > > > @@ -169,11 +169,9 @@ _LPP_OFFSET = __LC_LPP
    > > > > * @outside_label: jump here if @reg is outside of [@start..@end)
    > > > > */
    > > > > .macro OUTSIDE reg,start,end,outside_label
    > > > > - lgr %r14,\reg
    > > > > - larl %r13,\start
    > > > > - slgr %r14,%r13
    > > > > - lghi %r13,\end - \start
    > > > > - clgr %r14,%r13
    > > > > + larl %r14,\start
    > > > > + slgrk %r14,\reg,%r14
    > > > > + clgfi %r14,\end - \start
    > > >
    > > > Clever me.. slgrk was added with z196, and not z10.
    > > > So dropping this patch.
    > >
    > > How do the version numbers work for SystemZ? Is there a list/reference
    > > you could link me to? If it's too deep a rabbit hole, then nevermind,
    > > but I would like to learn a little more about the architecture.
    >
    > If it is only for the machine generations the following links might help:
    >
    > https://www.ibm.com/support/pages/ibm-mainframe-life-cycle-history
    > (see linked pdf for list of machine names)
    >
    > https://en.wikipedia.org/wiki/IBM_Z
    >
    > There might be better sources, but that's all I could find right now.

    Interesting! Thanks for the links.
    I'm guessing in our CI that we should probably pursue testing some of
    the newer revisions. Wasn't defconfig updated from z10 to z12 not too
    long ago?
    So probably
    CONFIG_MARCH_Z13
    CONFIG_MARCH_Z14
    CONFIG_MARCH_Z15
    CONFIG_MARCH_Z16

    All look like they're still "supported" (and I'm guessing
    CONFIG_MARCH_Z10 and CONFIG_MARCH_Z196 are not too much burden to
    continue to maintain kernel support for), with a higher emphasis
    perhaps on z15+z16?
    --
    Thanks,
    ~Nick Desaulniers

    \
     
     \ /
      Last update: 2022-05-12 21:26    [W:4.111 / U:0.384 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site