linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] doc: Fix htmldocs build warnings of stallwarn.rst
@ 2022-11-23 12:02 Zhen Lei
  2022-11-23 13:54 ` Bagas Sanjaya
  0 siblings, 1 reply; 4+ messages in thread
From: Zhen Lei @ 2022-11-23 12:02 UTC (permalink / raw)
  To: Paul E . McKenney, Frederic Weisbecker, Neeraj Upadhyay,
	Josh Triplett, Steven Rostedt, Mathieu Desnoyers, Lai Jiangshan,
	Joel Fernandes, rcu, linux-kernel
  Cc: Zhen Lei, Stephen Rothwell, linux-next

Documentation/RCU/stallwarn.rst:
401: WARNING: Literal block expected; none found.
428: WARNING: Literal block expected; none found.
445: WARNING: Literal block expected; none found.
459: WARNING: Literal block expected; none found.
468: WARNING: Literal block expected; none found.

The literal block need to be indented, so add two spaces to each line.

In addition, ':', which is used as a boundary in the literal block, is
replaced by '|'.

Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
---
 Documentation/RCU/stallwarn.rst | 56 ++++++++++++++++++---------------
 1 file changed, 30 insertions(+), 26 deletions(-)

v1 --> v2:
For the case that both colons need to be deleted, change "::" to expanded
form or partially minimized form.

diff --git a/Documentation/RCU/stallwarn.rst b/Documentation/RCU/stallwarn.rst
index c1e92dfef40d501..f15b766d39b8d98 100644
--- a/Documentation/RCU/stallwarn.rst
+++ b/Documentation/RCU/stallwarn.rst
@@ -398,9 +398,9 @@ In kernels built with CONFIG_RCU_CPU_STALL_CPUTIME=y or booted with
 rcupdate.rcu_cpu_stall_cputime=1, the following additional information
 is supplied with each RCU CPU stall warning::
 
-rcu:          hardirqs   softirqs   csw/system
-rcu:  number:      624         45            0
-rcu: cputime:       69          1         2425   ==> 2500(ms)
+  rcu:          hardirqs   softirqs   csw/system
+  rcu:  number:      624         45            0
+  rcu: cputime:       69          1         2425   ==> 2500(ms)
 
 These statistics are collected during the sampling period. The values
 in row "number:" are the number of hard interrupts, number of soft
@@ -412,22 +412,24 @@ in milliseconds.  Because user-mode tasks normally do not cause RCU CPU
 stalls, these tasks are typically kernel tasks, which is why only the
 system CPU time are considered.
 
-The sampling period is shown as follows:
-:<------------first timeout---------->:<-----second timeout----->:
-:<--half timeout-->:<--half timeout-->:                          :
-:                  :<--first period-->:                          :
-:                  :<-----------second sampling period---------->:
-:                  :                  :                          :
-:          snapshot time point    1st-stall                  2nd-stall
+The sampling period is shown as follows::
 
+  |<------------first timeout---------->|<-----second timeout----->|
+  |<--half timeout-->|<--half timeout-->|                          |
+  |                  |<--first period-->|                          |
+  |                  |<-----------second sampling period---------->|
+  |                  |                  |                          |
+  |          snapshot time point    1st-stall                  2nd-stall
 
 The following describes four typical scenarios:
 
-1. A CPU looping with interrupts disabled.::
+1. A CPU looping with interrupts disabled.
 
-   rcu:          hardirqs   softirqs   csw/system
-   rcu:  number:        0          0            0
-   rcu: cputime:        0          0            0   ==> 2500(ms)
+   ::
+
+     rcu:          hardirqs   softirqs   csw/system
+     rcu:  number:        0          0            0
+     rcu: cputime:        0          0            0   ==> 2500(ms)
 
    Because interrupts have been disabled throughout the measurement
    interval, there are no interrupts and no context switches.
@@ -440,11 +442,11 @@ The following describes four typical scenarios:
 
    This is similar to the previous example, but with non-zero number of
    and CPU time consumed by hard interrupts, along with non-zero CPU
-   time consumed by in-kernel execution.::
+   time consumed by in-kernel execution. ::
 
-   rcu:          hardirqs   softirqs   csw/system
-   rcu:  number:      624          0            0
-   rcu: cputime:       49          0         2446   ==> 2500(ms)
+     rcu:          hardirqs   softirqs   csw/system
+     rcu:  number:      624          0            0
+     rcu: cputime:       49          0         2446   ==> 2500(ms)
 
    The fact that there are zero softirqs gives a hint that these were
    disabled, perhaps via local_bh_disable().  It is of course possible
@@ -454,20 +456,22 @@ The following describes four typical scenarios:
 
 3. A CPU looping with preemption disabled.
 
-   Here, only the number of context switches is zero.::
+   Here, only the number of context switches is zero. ::
 
-   rcu:          hardirqs   softirqs   csw/system
-   rcu:  number:      624         45            0
-   rcu: cputime:       69          1         2425   ==> 2500(ms)
+     rcu:          hardirqs   softirqs   csw/system
+     rcu:  number:      624         45            0
+     rcu: cputime:       69          1         2425   ==> 2500(ms)
 
    This situation hints that the stalled CPU was looping with preemption
    disabled.
 
-4. No looping, but massive hard and soft interrupts.::
+4. No looping, but massive hard and soft interrupts.
+
+   ::
 
-   rcu:          hardirqs   softirqs   csw/system
-   rcu:  number:       xx         xx            0
-   rcu: cputime:       xx         xx            0   ==> 2500(ms)
+     rcu:          hardirqs   softirqs   csw/system
+     rcu:  number:       xx         xx            0
+     rcu: cputime:       xx         xx            0   ==> 2500(ms)
 
    Here, the number and CPU time of hard interrupts are all non-zero,
    but the number of context switches and the in-kernel CPU time consumed
-- 
2.25.1


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

* Re: [PATCH v2] doc: Fix htmldocs build warnings of stallwarn.rst
  2022-11-23 12:02 [PATCH v2] doc: Fix htmldocs build warnings of stallwarn.rst Zhen Lei
@ 2022-11-23 13:54 ` Bagas Sanjaya
  2022-11-24  3:34   ` Leizhen (ThunderTown)
  0 siblings, 1 reply; 4+ messages in thread
From: Bagas Sanjaya @ 2022-11-23 13:54 UTC (permalink / raw)
  To: Zhen Lei
  Cc: Paul E . McKenney, Frederic Weisbecker, Neeraj Upadhyay,
	Josh Triplett, Steven Rostedt, Mathieu Desnoyers, Lai Jiangshan,
	Joel Fernandes, rcu, linux-kernel, Stephen Rothwell, linux-next

[-- Attachment #1: Type: text/plain, Size: 6660 bytes --]

On Wed, Nov 23, 2022 at 08:02:38PM +0800, Zhen Lei wrote:
> Documentation/RCU/stallwarn.rst:
> 401: WARNING: Literal block expected; none found.
> 428: WARNING: Literal block expected; none found.
> 445: WARNING: Literal block expected; none found.
> 459: WARNING: Literal block expected; none found.
> 468: WARNING: Literal block expected; none found.
> 
> The literal block need to be indented, so add two spaces to each line.

Indenting to match alignment of lists texts?

> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>

You miss crediting linux-next list, so please add:

Link: https://lore.kernel.org/linux-next/20221123163255.48653674@canb.auug.org.au/
Fixes: 3d2788ba4573 ("doc: Document CONFIG_RCU_CPU_STALL_CPUTIME=y stall information")
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>

> -The sampling period is shown as follows:
> -:<------------first timeout---------->:<-----second timeout----->:
> -:<--half timeout-->:<--half timeout-->:                          :
> -:                  :<--first period-->:                          :
> -:                  :<-----------second sampling period---------->:
> -:                  :                  :                          :
> -:          snapshot time point    1st-stall                  2nd-stall
> +The sampling period is shown as follows::
>  
> +  |<------------first timeout---------->|<-----second timeout----->|
> +  |<--half timeout-->|<--half timeout-->|                          |
> +  |                  |<--first period-->|                          |
> +  |                  |<-----------second sampling period---------->|
> +  |                  |                  |                          |
> +  |          snapshot time point    1st-stall                  2nd-stall

The beginning pipe (|) on the last line of diagram above shouldn't be there
(axis label?).

>  
>  The following describes four typical scenarios:
>  
> -1. A CPU looping with interrupts disabled.::
> +1. A CPU looping with interrupts disabled.
>  
> -   rcu:          hardirqs   softirqs   csw/system
> -   rcu:  number:        0          0            0
> -   rcu: cputime:        0          0            0   ==> 2500(ms)
> +   ::
> +
> +     rcu:          hardirqs   softirqs   csw/system
> +     rcu:  number:        0          0            0
> +     rcu: cputime:        0          0            0   ==> 2500(ms)
>  
>     Because interrupts have been disabled throughout the measurement
>     interval, there are no interrupts and no context switches.
> @@ -440,11 +442,11 @@ The following describes four typical scenarios:
>  
>     This is similar to the previous example, but with non-zero number of
>     and CPU time consumed by hard interrupts, along with non-zero CPU
> -   time consumed by in-kernel execution.::
> +   time consumed by in-kernel execution. ::
>  
> -   rcu:          hardirqs   softirqs   csw/system
> -   rcu:  number:      624          0            0
> -   rcu: cputime:       49          0         2446   ==> 2500(ms)
> +     rcu:          hardirqs   softirqs   csw/system
> +     rcu:  number:      624          0            0
> +     rcu: cputime:       49          0         2446   ==> 2500(ms)
>  
>     The fact that there are zero softirqs gives a hint that these were
>     disabled, perhaps via local_bh_disable().  It is of course possible
> @@ -454,20 +456,22 @@ The following describes four typical scenarios:
>  
>  3. A CPU looping with preemption disabled.
>  
> -   Here, only the number of context switches is zero.::
> +   Here, only the number of context switches is zero. ::
>  
> -   rcu:          hardirqs   softirqs   csw/system
> -   rcu:  number:      624         45            0
> -   rcu: cputime:       69          1         2425   ==> 2500(ms)
> +     rcu:          hardirqs   softirqs   csw/system
> +     rcu:  number:      624         45            0
> +     rcu: cputime:       69          1         2425   ==> 2500(ms)
>  
>     This situation hints that the stalled CPU was looping with preemption
>     disabled.
>  
> -4. No looping, but massive hard and soft interrupts.::
> +4. No looping, but massive hard and soft interrupts.
> +
> +   ::
>  
> -   rcu:          hardirqs   softirqs   csw/system
> -   rcu:  number:       xx         xx            0
> -   rcu: cputime:       xx         xx            0   ==> 2500(ms)
> +     rcu:          hardirqs   softirqs   csw/system
> +     rcu:  number:       xx         xx            0
> +     rcu: cputime:       xx         xx            0   ==> 2500(ms)
>  
>     Here, the number and CPU time of hard interrupts are all non-zero,
>     but the number of context switches and the in-kernel CPU time consumed
> 

Because paragraphs below the snippets directly refers to them,just use colon: 

---- >8 ----

diff --git a/Documentation/RCU/stallwarn.rst b/Documentation/RCU/stallwarn.rst
index f15b766d39b8d9..4f6b91be03cfe0 100644
--- a/Documentation/RCU/stallwarn.rst
+++ b/Documentation/RCU/stallwarn.rst
@@ -423,9 +423,7 @@ The sampling period is shown as follows::
 
 The following describes four typical scenarios:
 
-1. A CPU looping with interrupts disabled.
-
-   ::
+1. A CPU looping with interrupts disabled::
 
      rcu:          hardirqs   softirqs   csw/system
      rcu:  number:        0          0            0
@@ -442,7 +440,7 @@ The following describes four typical scenarios:
 
    This is similar to the previous example, but with non-zero number of
    and CPU time consumed by hard interrupts, along with non-zero CPU
-   time consumed by in-kernel execution. ::
+   time consumed by in-kernel execution::
 
      rcu:          hardirqs   softirqs   csw/system
      rcu:  number:      624          0            0
@@ -456,7 +454,7 @@ The following describes four typical scenarios:
 
 3. A CPU looping with preemption disabled.
 
-   Here, only the number of context switches is zero. ::
+   Here, only the number of context switches is zero::
 
      rcu:          hardirqs   softirqs   csw/system
      rcu:  number:      624         45            0
@@ -465,9 +463,7 @@ The following describes four typical scenarios:
    This situation hints that the stalled CPU was looping with preemption
    disabled.
 
-4. No looping, but massive hard and soft interrupts.
-
-   ::
+4. No looping, but massive hard and soft interrupts::
 
      rcu:          hardirqs   softirqs   csw/system
      rcu:  number:       xx         xx            0

Thanks.

-- 
An old man doll... just what I always wanted! - Clara

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

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

* Re: [PATCH v2] doc: Fix htmldocs build warnings of stallwarn.rst
  2022-11-23 13:54 ` Bagas Sanjaya
@ 2022-11-24  3:34   ` Leizhen (ThunderTown)
  2022-11-24  3:57     ` Leizhen (ThunderTown)
  0 siblings, 1 reply; 4+ messages in thread
From: Leizhen (ThunderTown) @ 2022-11-24  3:34 UTC (permalink / raw)
  To: Bagas Sanjaya
  Cc: Paul E . McKenney, Frederic Weisbecker, Neeraj Upadhyay,
	Josh Triplett, Steven Rostedt, Mathieu Desnoyers, Lai Jiangshan,
	Joel Fernandes, rcu, linux-kernel, Stephen Rothwell, linux-next



On 2022/11/23 21:54, Bagas Sanjaya wrote:
> On Wed, Nov 23, 2022 at 08:02:38PM +0800, Zhen Lei wrote:
>> Documentation/RCU/stallwarn.rst:
>> 401: WARNING: Literal block expected; none found.
>> 428: WARNING: Literal block expected; none found.
>> 445: WARNING: Literal block expected; none found.
>> 459: WARNING: Literal block expected; none found.
>> 468: WARNING: Literal block expected; none found.
>>
>> The literal block need to be indented, so add two spaces to each line.
> 
> Indenting to match alignment of lists texts?

It's required by reStructuredText Markup Specification.

Indented Literal Blocks
Indented literal blocks are indicated by indentation relative to the
surrounding text (leading whitespace on each line). The literal block
ends with the end of the indentation.

The surrounding text need to be indented, relative to the paragraphs
above and below it and at the same level.

> 
>> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
> 
> You miss crediting linux-next list, so please add:
> 
> Link: https://lore.kernel.org/linux-next/20221123163255.48653674@canb.auug.org.au/
> Fixes: 3d2788ba4573 ("doc: Document CONFIG_RCU_CPU_STALL_CPUTIME=y stall information")
> Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>

OK, thanks.

> 
>> -The sampling period is shown as follows:
>> -:<------------first timeout---------->:<-----second timeout----->:
>> -:<--half timeout-->:<--half timeout-->:                          :
>> -:                  :<--first period-->:                          :
>> -:                  :<-----------second sampling period---------->:
>> -:                  :                  :                          :
>> -:          snapshot time point    1st-stall                  2nd-stall
>> +The sampling period is shown as follows::
>>  
>> +  |<------------first timeout---------->|<-----second timeout----->|
>> +  |<--half timeout-->|<--half timeout-->|                          |
>> +  |                  |<--first period-->|                          |
>> +  |                  |<-----------second sampling period---------->|
>> +  |                  |                  |                          |
>> +  |          snapshot time point    1st-stall                  2nd-stall
> 
> The beginning pipe (|) on the last line of diagram above shouldn't be there
> (axis label?).

OK, it might look better to delete it.

The text in literal block is treated as plain text.


> 
>>  
>>  The following describes four typical scenarios:
>>  
>> -1. A CPU looping with interrupts disabled.::
>> +1. A CPU looping with interrupts disabled.
>>  
>> -   rcu:          hardirqs   softirqs   csw/system
>> -   rcu:  number:        0          0            0
>> -   rcu: cputime:        0          0            0   ==> 2500(ms)
>> +   ::
>> +
>> +     rcu:          hardirqs   softirqs   csw/system
>> +     rcu:  number:        0          0            0
>> +     rcu: cputime:        0          0            0   ==> 2500(ms)
>>  
>>     Because interrupts have been disabled throughout the measurement
>>     interval, there are no interrupts and no context switches.
>> @@ -440,11 +442,11 @@ The following describes four typical scenarios:
>>  
>>     This is similar to the previous example, but with non-zero number of
>>     and CPU time consumed by hard interrupts, along with non-zero CPU
>> -   time consumed by in-kernel execution.::
>> +   time consumed by in-kernel execution. ::
>>  
>> -   rcu:          hardirqs   softirqs   csw/system
>> -   rcu:  number:      624          0            0
>> -   rcu: cputime:       49          0         2446   ==> 2500(ms)
>> +     rcu:          hardirqs   softirqs   csw/system
>> +     rcu:  number:      624          0            0
>> +     rcu: cputime:       49          0         2446   ==> 2500(ms)
>>  
>>     The fact that there are zero softirqs gives a hint that these were
>>     disabled, perhaps via local_bh_disable().  It is of course possible
>> @@ -454,20 +456,22 @@ The following describes four typical scenarios:
>>  
>>  3. A CPU looping with preemption disabled.
>>  
>> -   Here, only the number of context switches is zero.::
>> +   Here, only the number of context switches is zero. ::
>>  
>> -   rcu:          hardirqs   softirqs   csw/system
>> -   rcu:  number:      624         45            0
>> -   rcu: cputime:       69          1         2425   ==> 2500(ms)
>> +     rcu:          hardirqs   softirqs   csw/system
>> +     rcu:  number:      624         45            0
>> +     rcu: cputime:       69          1         2425   ==> 2500(ms)
>>  
>>     This situation hints that the stalled CPU was looping with preemption
>>     disabled.
>>  
>> -4. No looping, but massive hard and soft interrupts.::
>> +4. No looping, but massive hard and soft interrupts.
>> +
>> +   ::
>>  
>> -   rcu:          hardirqs   softirqs   csw/system
>> -   rcu:  number:       xx         xx            0
>> -   rcu: cputime:       xx         xx            0   ==> 2500(ms)
>> +     rcu:          hardirqs   softirqs   csw/system
>> +     rcu:  number:       xx         xx            0
>> +     rcu: cputime:       xx         xx            0   ==> 2500(ms)
>>  
>>     Here, the number and CPU time of hard interrupts are all non-zero,
>>     but the number of context switches and the in-kernel CPU time consumed
>>
> 
> Because paragraphs below the snippets directly refers to them,just use colon: 

This makes the style inconsistent when viewed on the web page. So I decided not
to change it.

Take your advice and the end result will be as follows: (1 and 4 followed by a
colon, 2 and 4 followed by a dot)

1. A CPU looping with interrupts disabled:
2. A CPU looping with bottom halves disabled.
3. A CPU looping with preemption disabled.
4. No looping, but massive hard and soft interrupts:

> 
> ---- >8 ----
> 
> diff --git a/Documentation/RCU/stallwarn.rst b/Documentation/RCU/stallwarn.rst
> index f15b766d39b8d9..4f6b91be03cfe0 100644
> --- a/Documentation/RCU/stallwarn.rst
> +++ b/Documentation/RCU/stallwarn.rst
> @@ -423,9 +423,7 @@ The sampling period is shown as follows::
>  
>  The following describes four typical scenarios:
>  
> -1. A CPU looping with interrupts disabled.
> -
> -   ::
> +1. A CPU looping with interrupts disabled::
>  
>       rcu:          hardirqs   softirqs   csw/system
>       rcu:  number:        0          0            0
> @@ -442,7 +440,7 @@ The following describes four typical scenarios:
>  
>     This is similar to the previous example, but with non-zero number of
>     and CPU time consumed by hard interrupts, along with non-zero CPU
> -   time consumed by in-kernel execution. ::
> +   time consumed by in-kernel execution::
>  
>       rcu:          hardirqs   softirqs   csw/system
>       rcu:  number:      624          0            0
> @@ -456,7 +454,7 @@ The following describes four typical scenarios:
>  
>  3. A CPU looping with preemption disabled.
>  
> -   Here, only the number of context switches is zero. ::
> +   Here, only the number of context switches is zero::
>  
>       rcu:          hardirqs   softirqs   csw/system
>       rcu:  number:      624         45            0
> @@ -465,9 +463,7 @@ The following describes four typical scenarios:
>     This situation hints that the stalled CPU was looping with preemption
>     disabled.
>  
> -4. No looping, but massive hard and soft interrupts.
> -
> -   ::
> +4. No looping, but massive hard and soft interrupts::
>  
>       rcu:          hardirqs   softirqs   csw/system
>       rcu:  number:       xx         xx            0
> 
> Thanks.
> 

-- 
Regards,
  Zhen Lei

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

* Re: [PATCH v2] doc: Fix htmldocs build warnings of stallwarn.rst
  2022-11-24  3:34   ` Leizhen (ThunderTown)
@ 2022-11-24  3:57     ` Leizhen (ThunderTown)
  0 siblings, 0 replies; 4+ messages in thread
From: Leizhen (ThunderTown) @ 2022-11-24  3:57 UTC (permalink / raw)
  To: Bagas Sanjaya
  Cc: Paul E . McKenney, Frederic Weisbecker, Neeraj Upadhyay,
	Josh Triplett, Steven Rostedt, Mathieu Desnoyers, Lai Jiangshan,
	Joel Fernandes, rcu, linux-kernel, Stephen Rothwell, linux-next



On 2022/11/24 11:34, Leizhen (ThunderTown) wrote:
> 
> 
> On 2022/11/23 21:54, Bagas Sanjaya wrote:
>> On Wed, Nov 23, 2022 at 08:02:38PM +0800, Zhen Lei wrote:
>>> Documentation/RCU/stallwarn.rst:
>>> 401: WARNING: Literal block expected; none found.
>>> 428: WARNING: Literal block expected; none found.
>>> 445: WARNING: Literal block expected; none found.
>>> 459: WARNING: Literal block expected; none found.
>>> 468: WARNING: Literal block expected; none found.
>>>
>>> The literal block need to be indented, so add two spaces to each line.
>>
>> Indenting to match alignment of lists texts?
> 
> It's required by reStructuredText Markup Specification.
> 
> Indented Literal Blocks
> Indented literal blocks are indicated by indentation relative to the
> surrounding text (leading whitespace on each line). The literal block
> ends with the end of the indentation.
> 
> The surrounding text need to be indented, relative to the paragraphs
> above and below it and at the same level.
> 
>>
>>> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
>>
>> You miss crediting linux-next list, so please add:
>>
>> Link: https://lore.kernel.org/linux-next/20221123163255.48653674@canb.auug.org.au/
>> Fixes: 3d2788ba4573 ("doc: Document CONFIG_RCU_CPU_STALL_CPUTIME=y stall information")
>> Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
> 
> OK, thanks.
> 
>>
>>> -The sampling period is shown as follows:
>>> -:<------------first timeout---------->:<-----second timeout----->:
>>> -:<--half timeout-->:<--half timeout-->:                          :
>>> -:                  :<--first period-->:                          :
>>> -:                  :<-----------second sampling period---------->:
>>> -:                  :                  :                          :
>>> -:          snapshot time point    1st-stall                  2nd-stall
>>> +The sampling period is shown as follows::
>>>  
>>> +  |<------------first timeout---------->|<-----second timeout----->|
>>> +  |<--half timeout-->|<--half timeout-->|                          |
>>> +  |                  |<--first period-->|                          |
>>> +  |                  |<-----------second sampling period---------->|
>>> +  |                  |                  |                          |
>>> +  |          snapshot time point    1st-stall                  2nd-stall
>>
>> The beginning pipe (|) on the last line of diagram above shouldn't be there
>> (axis label?).
> 
> OK, it might look better to delete it.
> 
> The text in literal block is treated as plain text.
> 
> 
>>
>>>  
>>>  The following describes four typical scenarios:
>>>  
>>> -1. A CPU looping with interrupts disabled.::
>>> +1. A CPU looping with interrupts disabled.
>>>  
>>> -   rcu:          hardirqs   softirqs   csw/system
>>> -   rcu:  number:        0          0            0
>>> -   rcu: cputime:        0          0            0   ==> 2500(ms)
>>> +   ::
>>> +
>>> +     rcu:          hardirqs   softirqs   csw/system
>>> +     rcu:  number:        0          0            0
>>> +     rcu: cputime:        0          0            0   ==> 2500(ms)
>>>  
>>>     Because interrupts have been disabled throughout the measurement
>>>     interval, there are no interrupts and no context switches.
>>> @@ -440,11 +442,11 @@ The following describes four typical scenarios:
>>>  
>>>     This is similar to the previous example, but with non-zero number of
>>>     and CPU time consumed by hard interrupts, along with non-zero CPU
>>> -   time consumed by in-kernel execution.::
>>> +   time consumed by in-kernel execution. ::
>>>  
>>> -   rcu:          hardirqs   softirqs   csw/system
>>> -   rcu:  number:      624          0            0
>>> -   rcu: cputime:       49          0         2446   ==> 2500(ms)
>>> +     rcu:          hardirqs   softirqs   csw/system
>>> +     rcu:  number:      624          0            0
>>> +     rcu: cputime:       49          0         2446   ==> 2500(ms)
>>>  
>>>     The fact that there are zero softirqs gives a hint that these were
>>>     disabled, perhaps via local_bh_disable().  It is of course possible
>>> @@ -454,20 +456,22 @@ The following describes four typical scenarios:
>>>  
>>>  3. A CPU looping with preemption disabled.
>>>  
>>> -   Here, only the number of context switches is zero.::
>>> +   Here, only the number of context switches is zero. ::
>>>  
>>> -   rcu:          hardirqs   softirqs   csw/system
>>> -   rcu:  number:      624         45            0
>>> -   rcu: cputime:       69          1         2425   ==> 2500(ms)
>>> +     rcu:          hardirqs   softirqs   csw/system
>>> +     rcu:  number:      624         45            0
>>> +     rcu: cputime:       69          1         2425   ==> 2500(ms)
>>>  
>>>     This situation hints that the stalled CPU was looping with preemption
>>>     disabled.
>>>  
>>> -4. No looping, but massive hard and soft interrupts.::
>>> +4. No looping, but massive hard and soft interrupts.
>>> +
>>> +   ::
>>>  
>>> -   rcu:          hardirqs   softirqs   csw/system
>>> -   rcu:  number:       xx         xx            0
>>> -   rcu: cputime:       xx         xx            0   ==> 2500(ms)
>>> +     rcu:          hardirqs   softirqs   csw/system
>>> +     rcu:  number:       xx         xx            0
>>> +     rcu: cputime:       xx         xx            0   ==> 2500(ms)
>>>  
>>>     Here, the number and CPU time of hard interrupts are all non-zero,
>>>     but the number of context switches and the in-kernel CPU time consumed
>>>
>>
>> Because paragraphs below the snippets directly refers to them,just use colon: 
> 
> This makes the style inconsistent when viewed on the web page. So I decided not
> to change it.
> 
> Take your advice and the end result will be as follows: (1 and 4 followed by a
> colon, 2 and 3 followed by a dot)
> 
> 1. A CPU looping with interrupts disabled:
> 2. A CPU looping with bottom halves disabled.
> 3. A CPU looping with preemption disabled.
> 4. No looping, but massive hard and soft interrupts:

Oh, I accept the suggestions for items 2 and 3.

> 
>>
>> ---- >8 ----
>>
>> diff --git a/Documentation/RCU/stallwarn.rst b/Documentation/RCU/stallwarn.rst
>> index f15b766d39b8d9..4f6b91be03cfe0 100644
>> --- a/Documentation/RCU/stallwarn.rst
>> +++ b/Documentation/RCU/stallwarn.rst
>> @@ -423,9 +423,7 @@ The sampling period is shown as follows::
>>  
>>  The following describes four typical scenarios:
>>  
>> -1. A CPU looping with interrupts disabled.
>> -
>> -   ::
>> +1. A CPU looping with interrupts disabled::
>>  
>>       rcu:          hardirqs   softirqs   csw/system
>>       rcu:  number:        0          0            0
>> @@ -442,7 +440,7 @@ The following describes four typical scenarios:
>>  
>>     This is similar to the previous example, but with non-zero number of
>>     and CPU time consumed by hard interrupts, along with non-zero CPU
>> -   time consumed by in-kernel execution. ::
>> +   time consumed by in-kernel execution::
>>  
>>       rcu:          hardirqs   softirqs   csw/system
>>       rcu:  number:      624          0            0
>> @@ -456,7 +454,7 @@ The following describes four typical scenarios:
>>  
>>  3. A CPU looping with preemption disabled.
>>  
>> -   Here, only the number of context switches is zero. ::
>> +   Here, only the number of context switches is zero::
>>  
>>       rcu:          hardirqs   softirqs   csw/system
>>       rcu:  number:      624         45            0
>> @@ -465,9 +463,7 @@ The following describes four typical scenarios:
>>     This situation hints that the stalled CPU was looping with preemption
>>     disabled.
>>  
>> -4. No looping, but massive hard and soft interrupts.
>> -
>> -   ::
>> +4. No looping, but massive hard and soft interrupts::
>>  
>>       rcu:          hardirqs   softirqs   csw/system
>>       rcu:  number:       xx         xx            0
>>
>> Thanks.
>>
> 

-- 
Regards,
  Zhen Lei

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

end of thread, other threads:[~2022-11-24  3:57 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-23 12:02 [PATCH v2] doc: Fix htmldocs build warnings of stallwarn.rst Zhen Lei
2022-11-23 13:54 ` Bagas Sanjaya
2022-11-24  3:34   ` Leizhen (ThunderTown)
2022-11-24  3:57     ` Leizhen (ThunderTown)

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).