diff for duplicates of <1492066545.4624.52.camel@neuling.org> diff --git a/a/1.txt b/N1/1.txt index 53e066f..f16a622 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,8 +1,8 @@ On Wed, 2017-04-12 at 17:16 +0530, Gautham R. Shenoy wrote: > From: "Gautham R. Shenoy" <ego@linux.vnet.ibm.com> ->=20 +> > The idle-exit code assumes that if Timebase is not lost, then neither -> are the per-core hypervisor resources lost.=20 +> are the per-core hypervisor resources lost. Double negative! How about: @@ -12,10 +12,10 @@ per-core hypervisor resources are also restored. > This was true on POWER8 > where fast-sleep lost only TB but not per-core resources, and winkle > lost both. ->=20 +> > This assumption is not true for POWER9 however, since there can be > states which do not lose timebase but can lose per-core SPRs. ->=20 +> > Hence check if we need to restore the per-core hypervisor state even > if timebase is not lost. @@ -26,34 +26,32 @@ branch. Mikey ->=20 +> > Signed-off-by: Gautham R. Shenoy <ego@linux.vnet.ibm.com> > --- -> =C2=A0arch/powerpc/kernel/idle_book3s.S | 7 ++++--- -> =C2=A01 file changed, 4 insertions(+), 3 deletions(-) ->=20 +> arch/powerpc/kernel/idle_book3s.S | 7 ++++--- +> 1 file changed, 4 insertions(+), 3 deletions(-) +> > diff --git a/arch/powerpc/kernel/idle_book3s.S > b/arch/powerpc/kernel/idle_book3s.S > index 9b747e9..6a9bd28 100644 > --- a/arch/powerpc/kernel/idle_book3s.S > +++ b/arch/powerpc/kernel/idle_book3s.S > @@ -723,13 +723,14 @@ timebase_resync: -> =C2=A0 =C2=A0* Use cr3 which indicates that we are waking up with atleast= - partial -> =C2=A0 =C2=A0* hypervisor state loss to determine if TIMEBASE RESYNC is n= -eeded. -> =C2=A0 =C2=A0*/ +> * Use cr3 which indicates that we are waking up with atleast partial +> * hypervisor state loss to determine if TIMEBASE RESYNC is needed. +> */ > - ble cr3,clear_lock > + ble cr3,.Ltb_resynced -> =C2=A0 /* Time base re-sync */ -> =C2=A0 bl opal_resync_timebase; -> =C2=A0 /* -> - =C2=A0* If waking up from sleep, per core state is not lost, skip to -> - =C2=A0* clear_lock. -> + =C2=A0* If waking up from sleep (POWER8), per core state -> + =C2=A0* is not lost, skip to clear_lock. -> =C2=A0 =C2=A0*/ +> /* Time base re-sync */ +> bl opal_resync_timebase; +> /* +> - * If waking up from sleep, per core state is not lost, skip to +> - * clear_lock. +> + * If waking up from sleep (POWER8), per core state +> + * is not lost, skip to clear_lock. +> */ > +.Ltb_resynced: -> =C2=A0 blt cr4,clear_lock -> =C2=A0 -> =C2=A0 /* +> blt cr4,clear_lock +> +> /* diff --git a/a/content_digest b/N1/content_digest index 46143a1..571f69a 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -21,9 +21,9 @@ "b\0" "On Wed, 2017-04-12 at 17:16 +0530, Gautham R. Shenoy wrote:\n" "> From: \"Gautham R. Shenoy\" <ego@linux.vnet.ibm.com>\n" - ">=20\n" + "> \n" "> The idle-exit code assumes that if Timebase is not lost, then neither\n" - "> are the per-core hypervisor resources lost.=20\n" + "> are the per-core hypervisor resources lost. \n" "\n" "Double negative! How about:\n" "\n" @@ -33,10 +33,10 @@ "> This was true on POWER8\n" "> where fast-sleep lost only TB but not per-core resources, and winkle\n" "> lost both.\n" - ">=20\n" + "> \n" "> This assumption is not true for POWER9 however, since there can be\n" "> states which do not lose timebase but can lose per-core SPRs.\n" - ">=20\n" + "> \n" "> Hence check if we need to restore the per-core hypervisor state even\n" "> if timebase is not lost.\n" "\n" @@ -47,36 +47,34 @@ "\n" "Mikey\n" "\n" - ">=20\n" + "> \n" "> Signed-off-by: Gautham R. Shenoy <ego@linux.vnet.ibm.com>\n" "> ---\n" - "> =C2=A0arch/powerpc/kernel/idle_book3s.S | 7 ++++---\n" - "> =C2=A01 file changed, 4 insertions(+), 3 deletions(-)\n" - ">=20\n" + "> \302\240arch/powerpc/kernel/idle_book3s.S | 7 ++++---\n" + "> \302\2401 file changed, 4 insertions(+), 3 deletions(-)\n" + "> \n" "> diff --git a/arch/powerpc/kernel/idle_book3s.S\n" "> b/arch/powerpc/kernel/idle_book3s.S\n" "> index 9b747e9..6a9bd28 100644\n" "> --- a/arch/powerpc/kernel/idle_book3s.S\n" "> +++ b/arch/powerpc/kernel/idle_book3s.S\n" "> @@ -723,13 +723,14 @@ timebase_resync:\n" - "> =C2=A0\t=C2=A0* Use cr3 which indicates that we are waking up with atleast=\n" - " partial\n" - "> =C2=A0\t=C2=A0* hypervisor state loss to determine if TIMEBASE RESYNC is n=\n" - "eeded.\n" - "> =C2=A0\t=C2=A0*/\n" + "> \302\240\t\302\240* Use cr3 which indicates that we are waking up with atleast partial\n" + "> \302\240\t\302\240* hypervisor state loss to determine if TIMEBASE RESYNC is needed.\n" + "> \302\240\t\302\240*/\n" "> -\tble\tcr3,clear_lock\n" "> +\tble\tcr3,.Ltb_resynced\n" - "> =C2=A0\t/* Time base re-sync */\n" - "> =C2=A0\tbl\topal_resync_timebase;\n" - "> =C2=A0\t/*\n" - "> -\t=C2=A0* If waking up from sleep, per core state is not lost, skip to\n" - "> -\t=C2=A0* clear_lock.\n" - "> +\t=C2=A0* If waking up from sleep (POWER8), per core state\n" - "> +\t=C2=A0* is not lost, skip to clear_lock.\n" - "> =C2=A0\t=C2=A0*/\n" + "> \302\240\t/* Time base re-sync */\n" + "> \302\240\tbl\topal_resync_timebase;\n" + "> \302\240\t/*\n" + "> -\t\302\240* If waking up from sleep, per core state is not lost, skip to\n" + "> -\t\302\240* clear_lock.\n" + "> +\t\302\240* If waking up from sleep (POWER8), per core state\n" + "> +\t\302\240* is not lost, skip to clear_lock.\n" + "> \302\240\t\302\240*/\n" "> +.Ltb_resynced:\n" - "> =C2=A0\tblt\tcr4,clear_lock\n" - "> =C2=A0\n" - "> =C2=A0\t/*" + "> \302\240\tblt\tcr4,clear_lock\n" + "> \302\240\n" + "> \302\240\t/*" -246a17bb9bacce3e28494b157fb989f4f521c200aa776a8afc6f108b6243328e +3ee5c5826c662252b18264b6c9088d1c69a9a2db1a6cd61a0ef954029cd89e23
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.