linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: "Tulio Magno Quites Machado Filho" <tuliom@linux.vnet.ibm.com>
To: Florian Weimer <fweimer@redhat.com>,
	Michael Ellerman <mpe@ellerman.id.au>,
	linuxppc-dev@ozlabs.org
Cc: stewart@linux.vnet.ibm.com, mikey@neuling.org, cyrilbur@gmail.com
Subject: Re: [PATCH 3/4] powerpc/powernv: Enable TM without suspend if possible
Date: Thu, 19 Oct 2017 10:04:36 -0200	[thread overview]
Message-ID: <87efpzbay3.fsf@linux.vnet.ibm.com> (raw)
In-Reply-To: <920a68e7-1bb5-3ace-2aaf-1594d8845721@redhat.com>

Florian Weimer <fweimer@redhat.com> writes:

> On 10/12/2017 12:17 PM, Michael Ellerman wrote:
>> +	pr_info("Enabling TM (Transactional Memory) with Suspend Disabled\n");
>> +	cur_cpu_spec->cpu_features |= CPU_FTR_TM;
>> +	cur_cpu_spec->cpu_user_features2 |= PPC_FEATURE2_HTM_NO_SUSPEND;
>> +	tm_suspend_disabled = true;
>
> This doesn't look right because if suspend is not available, you need to 
> clear the original PPC_FEATURE2_HTM flag because the semantics are not 
> right, so that applications can use fallback code.  Otherwise, 
> applications may incorrectly select the HTM code and break if running on 
> a system which supports HTM, but without the suspend state.

Just clarifying: it won't break an application, but abort the transaction,
which can cause a performance hit.

> The new flag should say that HTM is supported, but without the suspend 
> state, and it should be always set if PPC_FEATURE2_HTM is set.

If we change the semantics of this bit, old applications that don't suspend
transactions won't run on these processors, even if they're safe to run.

If we adopt the current semantics, only applications that enter in suspend
state will have to be modified in order to not get a performance regression.

-- 
Tulio Magno

  reply	other threads:[~2017-10-19 12:04 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-12 10:17 [PATCH 1/4] powerpc/tm: Add commandline option to disable hardware transactional memory Michael Ellerman
2017-10-12 10:17 ` [PATCH 2/4] powerpc: Add PPC_FEATURE2_HTM_NO_SUSPEND Michael Ellerman
2017-10-12 10:17 ` [PATCH 3/4] powerpc/powernv: Enable TM without suspend if possible Michael Ellerman
2017-10-19 10:07   ` Florian Weimer
2017-10-19 12:04     ` Tulio Magno Quites Machado Filho [this message]
2017-10-19 12:45       ` Florian Weimer
2017-10-19 13:34     ` Tulio Magno Quites Machado Filho
2017-10-19 15:13       ` Adhemerval Zanella
2017-10-22  9:59         ` Michael Ellerman
2017-10-20  2:47       ` Michael Neuling
2017-10-22  9:48       ` Michael Ellerman
2017-10-22  9:54     ` Michael Ellerman
2017-10-12 10:17 ` [PATCH 4/4] powerpc/tm: P9 disable transactionally suspended sigcontexts Michael Ellerman
2017-10-12 11:58 ` [PATCH 5/4] KVM: PPC: Tie KVM_CAP_PPC_HTM to the user-visible TM feature Michael Ellerman
2017-10-24  8:08   ` [5/4] " Michael Ellerman
2017-10-20 11:45 ` [PATCH 1/4] powerpc/tm: Add commandline option to disable hardware transactional memory Breno Leitao
2017-10-20 12:58   ` David Laight
2017-10-21  1:00     ` Michael Neuling
2017-10-23  9:01       ` David Laight
2017-10-23  9:15         ` Michael Neuling
2017-10-21  0:58   ` Michael Neuling
2017-10-23 12:56     ` Breno Leitao
2017-10-24  8:12       ` Michael Ellerman
2017-10-24  8:08 ` [1/4] " Michael Ellerman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87efpzbay3.fsf@linux.vnet.ibm.com \
    --to=tuliom@linux.vnet.ibm.com \
    --cc=cyrilbur@gmail.com \
    --cc=fweimer@redhat.com \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=mikey@neuling.org \
    --cc=mpe@ellerman.id.au \
    --cc=stewart@linux.vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).