Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1241230

Re: Missing operand for tlbie instruction on Power7

From Segher Boessenkool <segher@kernel.crashing.org>
Newsgroups linux.kernel
Subject Re: Missing operand for tlbie instruction on Power7
Date 2015-10-07 10:30 +0200
Message-ID <qgSgO-7JK-15@gated-at.bofh.it> (permalink)
References <qfaKS-7Fv-19@gated-at.bofh.it> <qgrgC-2u2-1@gated-at.bofh.it> <qgF9T-5H4-9@gated-at.bofh.it> <qgQ5k-4HJ-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Wed, Oct 07, 2015 at 05:00:49PM +1100, Michael Ellerman wrote:
> > It's also worth noting that the __flush_power7 uses tlbiel instead of tlbie.
> 
> Yeah that's a good point. It's not clear if the swsusp code wants to a local or
> a global invalidate.

If I read the code right, this is called on the boot CPU when all the
non-boot CPUs are still (potentially) down, so if you would do a global
invalidate the non-boot CPUs might not even notice, so those need to do
a (local) invalidate after being brought up anyway?  Or they probably
need it before being brought down at all?  You figure it out, it makes
my brain hurt :-)

> As an alternative, can you try adding a .machine push / .machine "power4" /
> .machine pop, around the tlbie. That should tell the assembler to drop back to
> power4 mode for that instruction, which should then do the right thing. There
> are some examples in that file.

That will get the assembler to not complain, but it will assemble the wrong
instruction: the power7 instruction has the same opcode (but different
semantics).  So if you assemble a "tlbie r4" in power4 mode, a newer CPU
will see it as a "tlbie r4,r0" and do the wrong thing.


Segher
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: Missing operand for tlbie instruction on Power7 Michael Ellerman <mpe@ellerman.id.au> - 2015-10-06 05:40 +0200
  Re: Missing operand for tlbie instruction on Power7 Laura Abbott <labbott@redhat.com> - 2015-10-06 20:30 +0200
    Re: Missing operand for tlbie instruction on Power7 Michael Ellerman <mpe@ellerman.id.au> - 2015-10-07 08:10 +0200
      Re: Missing operand for tlbie instruction on Power7 Segher Boessenkool <segher@kernel.crashing.org> - 2015-10-07 10:30 +0200
        Re: Missing operand for tlbie instruction on Power7 Michael Ellerman <mpe@ellerman.id.au> - 2015-10-07 11:20 +0200
          Re: Missing operand for tlbie instruction on Power7 Josh Boyer <jwboyer@fedoraproject.org> - 2015-10-07 16:40 +0200
            Re: Missing operand for tlbie instruction on Power7 Josh Boyer <jwboyer@fedoraproject.org> - 2015-10-08 02:20 +0200
              Re: Missing operand for tlbie instruction on Power7 Michael Ellerman <mpe@ellerman.id.au> - 2015-10-08 02:40 +0200
            Re: Missing operand for tlbie instruction on Power7 Michael Ellerman <mpe@ellerman.id.au> - 2015-10-08 02:20 +0200

csiph-web