By default, Bugzilla does not search the list of RESOLVED bugs.
You can force it to do so by putting the upper-case word ALL in front of your search query, e.g.: ALL tdelibs
We recommend searching for bugs this way, as you may discover that your bug has already been resolved and fixed in a later release.

Bug 2602

Summary: Terminology and documentation of TDEpowersave and suspend modes
Product: TDE Reporter: ThoMaus <thomas.maus>
Component: tdebaseAssignee: Michele Calgaro <michele.calgaro>
Status: RESOLVED FIXED    
Severity: normal CC: bugwatch, michele.calgaro, slavek.banko, thomas.maus
Priority: P5    
Version: R14.1.x [Trinity]   
Hardware: Other   
OS: Linux   
Compiler Version: TDE Version String:
Application Version: Application Name:
Bug Depends on:    
Bug Blocks: 2247    

Description ThoMaus 2016-02-27 04:28:24 CST
Terminology within and between TDEpowersave and Logout menu could be more consistent and clearer. Examples:

* "Suspend to RAM" / "Suspend to memory" for ACPI G1/S3 within TDEpowersave
* the effect of "Freeze" and "Standby" are not explained (neither as tooltip nor in the documentation)

Documentation seems outdated and incomplete.



Proposal:
General strategy:
The terms chosen should be concise and descriptive. Some correlation with ACPI and kernel states achieved should given, to help the user tie together terms used in documentation, configuration tools at other levels of the software stack and help forums in the Internet.

That approach would leave us with the like of:
1. "Freeze or 'Power on Suspend' (ACPI G1/S3 mode)"
2. "Standby ?????" (ACPU G0/S0 "awaymode" or G1/S2 ???) <-- to be clarified!
3. "Suspend to RAM (ACPI G1/S3 mode)"
4. "Suspend to RAM+Disk (hybrid of ACPI G1/S3+S4 mode)"
5. "Suspend to Disk (ACPI G1/S4 mode)"

The texts in parenthesis are candidates for tooltips and documentation only.

I can tend for documentation in English and German, given some guidance about project standards to follow, and indication of the files to tackle.
Comment 1 Slávek Banko 2016-03-25 09:31:37 CDT
There is clear goal: Unify naming between Logout menu and TDEPowersave. Add to this - in the Trinity Control Center in Hardware Device Manager is in the System Root / Linux System also list of available power states where is also stated Freeze, Suspend and Hibernate.

We must therefore find a consensus in naming power states. I believe that the names should be simple. Technical specifications - such as corresponding ACPI states - should belong into the documentation.

For names we can either come from the description in the kernel documentation. However, the state known as "hybrid suspend" is not shown here because this is not "kernel native" power state (https://www.kernel.org/doc/Documentation/power/states.txt):

  S0 - freeze - Suspend-To-Idle
  S1 - standby - Standby / Power-On Suspend
  S3 - mem - Suspend-to-RAM
  S4 - disk - Suspend-to-disk

Or we can come from the names which are already established - such as suspend and hibernate:

  Soft Suspend
  Standby
  Suspend
  Hybrid Suspend
  Hibernate

Personally, I tend to "established names". These has long been commonly used. And, for example, Power-On Suspend seems to me as confusing for ordinary users. Although the name "Soft suspend" is not from "already established", I believe that for the users should be clear.

I await your opinions and comments :)
Comment 2 Michele Calgaro 2016-03-28 09:16:25 CDT
The main point is that we choose one terminology and we use it consistently across TDE.
Both version are ok for me as well.
Suspend-To-Idle, Power-On Suspend, Soft Suspend are a little confusing IMO as well.
Here is a list similar to the second one, with a small variation

  Soft Freeze   (because freeze mode is not a real suspend, as a general user may intend it otherwise)
  Standby
  Suspend
  Hibernate
  Hiber-suspend  (being the same as a Suspend + Hibernation basically ;-) )

In any case, we should add additional info into the tooltip (there is already some, we can probably integrate the technical bit like the ACPI state name for example).

What do you think?
Comment 3 Slávek Banko 2016-03-28 09:56:10 CDT
(In reply to Michele Calgaro from comment #2)
> The main point is that we choose one terminology and we use it consistently
> across TDE.
> Both version are ok for me as well.
> Suspend-To-Idle, Power-On Suspend, Soft Suspend are a little confusing IMO
> as well.
> Here is a list similar to the second one, with a small variation
> 
>   Soft Freeze   (because freeze mode is not a real suspend, as a general
> user may intend it otherwise)
>   Standby
>   Suspend
>   Hibernate
>   Hiber-suspend  (being the same as a Suspend + Hibernation basically ;-) )
> 
> In any case, we should add additional info into the tooltip (there is
> already some, we can probably integrate the technical bit like the ACPI
> state name for example).
> 
> What do you think?

Yes, freeze is not a real suspend. Therefore, if we use Freeze is perhaps unnecessary to add 'Soft' - we can use 'Freeze' without adjectives.

I believe that the 'Hybrid suspend' is an established term. I suggest rather stay at this term than creating a new one. Using an established term facilitate for users the search for related information on the Internet...

What about this?

  Freeze
  Standby
  Suspend
  Hibernate
  Hybrid suspend
Comment 4 Michele Calgaro 2016-03-30 22:43:14 CDT
>  Freeze
>  Standby
>  Suspend
>  Hibernate
>  Hybrid suspend

Ok, sounds good to me.
In the tooltips of the logout menu we will add details of the function and the ACPI name/state as well.
In TDEPowersave we will change the names to match those in the logout menu
I can work on this, this week or next week, depending on when I have time.
Comment 5 ThoMaus 2016-03-31 12:25:59 CDT
(In reply to Slávek Banko from comment #3)
> ...
> What about this?
> 
>   Freeze

I'm massively unhappy with "Freeze" because this formerly has been a synonym for the "Hibernate" suspend type. I vividly remember the cute animations (SuSE around 2006???), where a Tux was frozen into an ice-cube upon Freeze (aka Hibernate), and then upon Thaw (i.e. waking from Hibernate) the ice-cube melted again. (Were have they gone? -- this was really an eye catcher!) 

(And actually "kernel freeze" provides less power savings than "kernel standby", so I'd consider it an objective misnomer!9

>   Standby
>   Suspend
>   Hibernate
>   Hybrid suspend

Let's introduce some structure to differentiate between 

* name (concise terminology)
** short explanation (text in many places occurring below the name)
*** tool tip
**** documentation
# my explanatory comment for this discussion only

I fear the opportunity for the Great Unification has passed, the name space is already messed up. Even consistency will be difficult to reach. Perhaps we can use a scale of sleep states like this:

* Doze
** system remains active but switches to low power consumption
*** corresponds to ACPI state S0  and kernel "Suspend to Idle" or "Freeze" mode, it provides some power savings and fastest wake-up time. power loss means loss of system state.
# dozing is -- in my perception of word usage -- a half-awake state for humans, where they remain semi-aware of surroundings and are ready to spring to action. Example: a group of parents watching a large group of children, as long as some parents are actively watching, they others may doze and conserve energy ... -- so quite fitting (alternative term could be "repose"?)

* Snooze
** system remains active but minimizes power consumption
*** corresponds to ACPI state S1 and kernel "Power-On Suspend". compared to "doze" it provides more power savings with a slightly longer wake-up time. power loss means loss of system state.
# snoozing is -- in my understanding of English -- a light sleep, which needs actually some time for wake-up (a common tip for controlled snoozing is, to hold something in your hand, which will drop when dream or deep sleep is to commence)

* Sleep
** system suspends to RAM
*** corresponds to ACPI state S3 and kernel "Suspend-to-RAM". compared to "snooze" it provides more power savings with a slightly longer wake-up time. power loss means loss of system state.
# sleep is deeper than snoozing, but also more power-conserving. I was extremely tempted to use RAM-sleep (in homophony to REM-sleep -- the dream phase ;-)

* Hibernate
** system suspends to disk and powers off
*** corresponds to ACPI state S4 and kernel "Suspend-to-disk". both entering and waking up take significant time, but is used anymore.
# hibernate seems very fitting to me, as it is the most intense dormancy known in mammals

* Sleep+Hibernate
# I'm not completely happy here, possible alternatives might be "Hybrid Suspend" / "Hybrid Sleep" / "Guarded Sleep" / "Fail-safe Sleep"
** system does a hybrid suspend to RAM and disk
*** the system suspends to RAM and disk, and the enters a state corresponding to ACPI state S3 and kernel "Suspend-to-RAM". it "sleeps", but should the power fail not state is lost, as it can resume as if it actually "hibernated".

This should hopefully provide an intuitively understandable ramp of "sleep intensities", thus being more obvious for "normal users" (whatever this is ;-) and less prone to misunderstandings.

Your opinions?
Comment 6 Michele Calgaro 2016-04-01 03:18:46 CDT
I guess 10 different people would have 10 different opinions :-)
Probably the best way forward is to choose established names/conventions.

- Sleep
- Hibernate
- Hybrid suspend
I think they are quite standard names, so no objections on these ones

- Snooze
I think "standby" is a more established term widely used

- Doze
I do not think there is a standard term commonly used yet (probably many users do not even know about it). "freeze" is the terms used in the kernel documentation, but "doze" is probably even less common (if used at all).
I think the idea behind "freeze" is similar to what saw in some American movies, where "freeze" means "stop moving, stay where you are".
On the other hand, "freeze" has also a negative meaning; a "frozen" computer is usually a result of some sort of crash/kernel bug.
"doze" reminds me more of a sleep state....
Maybe we can go for "quick standby"?

So in summary:

quick standby or (fast standby)
standby
sleep
hibernate
hybrid suspend

how about that?
Comment 7 ThoMaus 2016-04-01 08:58:06 CDT
(In reply to Michele Calgaro from comment #6)
> I guess 10 different people would have 10 different opinions :-)

Sure (and independent of the numerical base of those "10"s ;-)

Exactly that is the reason, why we should try to resolve such questions by line of reasoning.

> [... discussion of terms ...]

So why did I chose these only partially standard names, based on different rest states in human/mammal sleep behavior?

The technique is called "Liekert scale" and is often used in questionaires for social or psychological surveys, having the advantage of intuitive understanding by the participants (if the scale is well chosen).
Further, these scales typically translate well: as these different rest states are part of human nature and of the biological sciences, the probability is high to find clear and concise translations in (nearly) all languages.

Now compare that to the terms "standby" and "suspend":

In German "standby" can be translated in 3 disjunctive words (i.e. these words are not synonyms, but have disjunctive, non-overlapping meanings -- each of these words, if re-translated to English would have at least 3 different translations, pointing into different word fields). 2 of these words are used in computer context, but only 1 would be correct in our context: "Bereitschaft" or, if it should be really precise, actually "Bereitschaftszustand".

Let's assume the translator is knowledgeable and uses the correct word. 

But we have to different standby modes, which we need to differentiate.

My -- as non-native speaker possibly wrong -- feeling of the English language is, that "more standby" indicates a more relaxed, less active, and less power-consuming state.
"minimal standby" and "maximal standby" such might be a usable differentiation in English, and a possible (not necessarily good) choice.
In German, it is exactly the other way round: "Bereitschaft" has an aspect of "alertness", i.e. more "Bereitschaft" means more active, more alert, more power-consuming. So, if the translator does not really understand the technological background and translates word by word, the result is wrong!


"suspend" is even worse, because it is figurative:
At least 9 possible translations into German verbs exist. These span up several word fields, as the re-translation test shows: Everyone has many possible translations into English and "suspend" is always way down in this list (i.e. a rarely used meaning)!

Worse: we need to find a noun for consistency, because "Bereitschaft" is a noun and no short verb form exists. The only noun nearly adequate would be the German "Suspendierung" while the German "Suspension" would be plainly wrong (but a dangerous pitfall and false friend for translators). So a translator has to do a leap of imagination, and therefore there are TWO established translations in German:
1. "Ruhezustand" ~ rest mode
2. "Schlafmodus" ~ sleep mode

But again, we have to differentiate, and then in German OSes the mess starts ...


I guess, you will find similar examples in the Italian language!?


> ...
> So in summary:
> 
> quick standby or (fast standby)
> standby
> sleep
> hibernate
> hybrid suspend
> 
> how about that?

Assuming there is no support for a sleep-depth-based Liekert scale: 

Let's simply give up the hope that single words can convey the necessary preciseness and let them never be alone, but always guarded by some one-liner explanation or tool-tip!

Nevertheless some systematization might help:
* "standby" is used for all states were the system (at least 1 CPU) remains active, and just components are powered down
* "suspend" is used, when the system is inactive (all CPUs are off-line) and only memory state is preserved somehow (only because this is established usage -- actually I think it's bad, because the important differentiation if power failure is survivable in this state is disguised!)

Then I would arrive the following list (all in need of tool-tips, of course!):
* standby (hi-power)
* standby (lo-power)
* "suspend to RAM" or "RAM suspend"
* "suspend to disk" or "disk suspend"
* "suspend to RAM&disk" or "hybrid suspend"

Your opinions?
Comment 8 ThoMaus 2016-04-02 03:10:44 CDT
(In reply to ThoMaus from comment #7)
> ...
> * standby (hi-power)
> * standby (lo-power)
> ...

On second thought:
Now that I know what the 2 standby modes actually do, I wonder if I would ever use them directly.
Given how fast a Suspend2RAM is entered and returned, I would chose Suspend2RAM over the standby modes, when activating it manually (i.e. via "Leave" menu).

To avoid cluttering the "Leave" menu, perhaps the standby modes should be left out completely there? (Easing the terminology and translation question as side-effect)

The only area were I see use for the standby modes would be in a power-management profile. On a laptop, in an extreme power-saving profile, one might choose a standby mode after 30 seconds inactivity, followed by a Suspend2RAM after a few minutes.

So here we need all modes, but in this rarely visited places more lengthy tool-tips might be more acceptable and actually even welcomed!?

[Side note: has anyone ever tested or knows if the system can be configured to automatically switch to Suspend2Disk (i.e. wake and then perform Suspend2Disk), if the battery becomes low DURING Suspend2RAM?]
Comment 9 Michele Calgaro 2016-04-06 05:25:36 CDT
I guess the only way to reach some sort of agreement, would be to have some sort of ballot vote and let the users decide :-) 

I will align the logout menu and TDEPowersave and add descriptive tooltips where required, based on the comments we posted before.
For the time being, let's go with 

  Freeze
  Standby
  Sleep
  Hibernate
  Hybrid suspend

which is some sort of mix.
I will leave the bug open until we can agree on some set of names that pleases the majority of the people.
Feel free to open a ballot on the ML with different proposal. If a majority arises, I can quickly changes the names where required (tooltips should probably not be affected).
Comment 10 Michele Calgaro 2016-04-15 17:58:13 CDT
Names updated in R14.1.x trunk in tdepowersave (commit c9b0912) and kpowersave (commit 1eab6e8).
"Suspend to disk" is now called "Hibernate" and "Suspend to RAM" is now called "Sleep", as per last comment.
The changes in the logout menu have still to be done.
Comment 11 Michele Calgaro 2016-05-07 00:24:51 CDT
Names updated in R14.1.x trunk for TDE Classic Menu and Kickoff menu in commit 193cb78.
Names are now aligned with TDEPowersave.
Comment 12 Michele Calgaro 2018-11-03 10:38:13 CDT
Following further discussion, names will be changed to:
Freeze
Suspend
Hybrid suspend
Hibernate