All of lore.kernel.org
 help / color / mirror / Atom feed
* [MODERATED] AMD SSBD extension document
@ 2018-05-18 15:26 Tom Lendacky
  2018-05-18 16:40 ` [MODERATED] " Alexei Starovoitov
  0 siblings, 1 reply; 3+ messages in thread
From: Tom Lendacky @ 2018-05-18 15:26 UTC (permalink / raw)
  To: speck


[-- Attachment #1.1: Type: text/plain, Size: 147 bytes --]

I'm including the documentation on the AMD SSBD extension support.
This is preliminary information, please share only as needed.

Thanks,
Tom

[-- Attachment #1.2: ssbd_confidential_v6.pdf --]
[-- Type: application/pdf, Size: 428639 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [MODERATED] Re: AMD SSBD extension document
  2018-05-18 15:26 [MODERATED] AMD SSBD extension document Tom Lendacky
@ 2018-05-18 16:40 ` Alexei Starovoitov
  2018-05-18 17:04   ` Linus Torvalds
  0 siblings, 1 reply; 3+ messages in thread
From: Alexei Starovoitov @ 2018-05-18 16:40 UTC (permalink / raw)
  To: speck

On Fri, May 18, 2018 at 10:26:46AM -0500, speck for Tom Lendacky wrote:
> I'm including the documentation on the AMD SSBD extension support.
> This is preliminary information, please share only as needed.

thanks a lot of the doc!

Could you share what cases of memory disambiguation are being disabled,
so we can better estimate the impact ?

Same question to Intel folks.

Like, does it disable store-to-load forwarding out of store queue as well?
Meaning that today push+pop is a single cycle operation and passing
more than 5 arguments to functions via stack is still fast.
Callee saving registers with a sequence of pushes and pops is fast too.
If that is being disabled my MSR, it would mean that any short function
that has small number of insns to execute will be penalized with
save/restore of registers. The functions with more than 5 args will see
the penalty too.
The ubiquitous register spill/fill is penalized as well?

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [MODERATED] Re: AMD SSBD extension document
  2018-05-18 16:40 ` [MODERATED] " Alexei Starovoitov
@ 2018-05-18 17:04   ` Linus Torvalds
  0 siblings, 0 replies; 3+ messages in thread
From: Linus Torvalds @ 2018-05-18 17:04 UTC (permalink / raw)
  To: speck



On Fri, 18 May 2018, speck for Alexei Starovoitov wrote:
> 
> Like, does it disable store-to-load forwarding out of store queue as well?

It really shouldn't, and based on the (limited) performance data I've seen 
I don't think it does.

Afaik it only disabled the speculative case of reading the data early when 
a previous store hasn't even entered the store buffer yet because the 
store address isn't known.

So it's actually the exact reverse of your worry - the bug is that CPU's 
will *not* snoop the store buffer (or snoop an even earlier wrong entry in 
the store buffer), because they'll try to do the read speculatively early.

               Linus

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-05-18 17:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-18 15:26 [MODERATED] AMD SSBD extension document Tom Lendacky
2018-05-18 16:40 ` [MODERATED] " Alexei Starovoitov
2018-05-18 17:04   ` Linus Torvalds

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.