Skip to contentSkip to conversation

Missing figures in RT_PREEMPT_HOWTO

DISCUSSION Robert Schwebel 4 participants 6 messages Nov 19, 2006 – Dec 4, 2006 1 message not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw

Dirk,

Quoted 3 lines · Dirk Behme

can you please check the missing figures 3 & 4 & 5 in

http://rt.wiki.kernel.org/index.php/RT_PREEMPT_HOWTO#Patching_the_Kernel

As the document states, the primary source is still the DocBook, not the Wiki. Juergen has reworked quite some parts of the documents, including the 2pt screenshots :-) , I assume he will check it in during the next days.

I've added your changes in the Wiki to the DocBook document, to make sure they don't disappear at the next update. Next time better check out the svn from our server and send me patches against the latest version.

Robert

Signature · 5 lines
 Dipl.-Ing. Robert Schwebel | http://www.pengutronix.de
 Pengutronix - Linux Solutions for Science and Industry
   Handelsregister:  Amtsgericht Hildesheim, HRA 2686
     Hannoversche Str. 2, 31134 Hildesheim, Germany
   Phone: +49-5121-206917-0 |  Fax: +49-5121-206917-9
#2 lore raw
Quoted 8 lines · Robert Schwebel

As the document states, the primary source is still the DocBook, not the Wiki. Juergen has reworked quite some parts of the documents, including the 2pt screenshots :-) , I assume he will check it in during the next days.

I've added your changes in the Wiki to the DocBook document, to make sure they don't disappear at the next update. Next time better check out the svn from our server and send me patches against the latest version.

I didn't notice that and I've recently added some content to the Wiki too. I see that you've added my changes to the DocBook, good. Next time I'll send patches against that. But how do I checkout from the SVN?

I tried
svn co https://iocaste.penguin.de/viewsvn/rt-preempt-howto/trunk/
but this doesn't work. I'm getting:
svn: PROPFIND request failed on '/viewsvn/rt-preempt-howto/trunk'
svn: PROPFIND of '/viewsvn/rt-preempt-howto/trunk': 301 Moved (https://iocaste.penguin.de)

Michal

#3 lore raw

Michael,

Quoted 6 lines · Michal Schmidt
Quoted 5 lines · Robert Schwebel

As the document states, the primary source is still the DocBook, not the Wiki. Juergen has reworked quite some parts of the documents, including the 2pt screenshots :-) , I assume he will check it in during the next days.

Quoted 7 lines
Quoted 3 lines

I've added your changes in the Wiki to the DocBook document, to make sure they don't disappear at the next update. Next time better check out the svn from our server and send me patches against the latest version.

I didn't notice that and I've recently added some content to the Wiki too. I see that you've added my changes to the DocBook, good. Next time I'll send patches against that. But how do I checkout from the SVN?

I've ported the changes from the wiki diff output; please send me a diff with a correct credit line for the document header. I suppose I've not correctly seen who made which changes.

Quoted 6 lines

I tried
svn co https://iocaste.penguin.de/viewsvn/rt-preempt-howto/trunk/
but this doesn't work. I'm getting:
svn: PROPFIND request failed on '/viewsvn/rt-preempt-howto/trunk'
svn: PROPFIND of '/viewsvn/rt-preempt-howto/trunk': 301 Moved
(https://iocaste.penguin.de)

The URL with "viewsvn" is for online viewing, replace it by "svn" and it should work.

Robert

Signature · 5 lines
 Dipl.-Ing. Robert Schwebel | http://www.pengutronix.de
 Pengutronix - Linux Solutions for Science and Industry
   Handelsregister:  Amtsgericht Hildesheim, HRA 2686
     Hannoversche Str. 2, 31134 Hildesheim, Germany
   Phone: +49-5121-206917-0 |  Fax: +49-5121-206917-9
#4 lore raw

Hi all,

Quoted 6 lines · Robert Schwebel
Quoted 5 lines · Michal Schmidt
Quoted 4 lines · Robert Schwebel

As the document states, the primary source is still the DocBook, not the Wiki. Juergen has reworked quite some parts of the documents, including the 2pt screenshots :-) , I assume he will check it in during the next days.

Done. Check "svn co https://iocaste.penguin.de/svn/rt-preempt-howto"

Juergen

Signature · 4 lines
Dipl.-Ing. Juergen Beisert | http://www.pengutronix.de
 Pengutronix - Linux Solutions for Science and Industry
         Vertretung Sued/Muenchen, Germany
   Phone: +49-5121-206917-7 |  Fax: +49-5121-206917-9
#5 lore raw
In reply to Robert Schwebel

Robert Schwebel skrev:

Quoted 3 lines

I've ported the changes from the wiki diff output; please send me a diff with a correct credit line for the document header. I suppose I've not correctly seen who made which changes.

Here's a patch fixing a slight confusion, where the description of threaded IRQs seemed to suggest that they're executed either in user or kernel context, while the real distinction is interrupt/process context. It also adds myself to the document header and updates the revhistory.

Michal Schmidt

RT-Preempt-HOWTO.docbook +37 -14
Index: RT-Preempt-HOWTO.docbook
===================================================================
@@ -49,6 +49,15 @@
 	  </affiliation>
 	</collabname>
       </collab>
+      <collab>
+        <collabname>
+          <firstname>Michal</firstname>
+	  <surname>Schmidt</surname>
+	  <affiliation>
+	    <address><email>[email protected]</email></address>
+	  </affiliation>
+	</collabname>
+      </collab>
 
     </authorgroup>
 
@@ -63,9 +72,21 @@
 
     <revhistory>
       <revision>
+        <revnumber>1.3</revnumber>
+	<date>2006-11-27</date>
+        <revremark>Clear the userspace/kernel vs. interrupt/process context
+	           confusion; Michal Schmidt</revremark>
+      </revision>
+      <revision>
+        <revnumber>1.2</revnumber>
+	<date>2006-11-22</date>
+        <revremark>Clock Source and Clock Events; Juergen Beisert</revremark>
+      </revision>
+      <revision>
         <revnumber>1.1</revnumber>
 	<date>2006-11-19</date>
-        <revremark>Typos added; patch by Dirk Behme</revremark>
+        <revremark>Typos fixed, IRQ_* flags documented;
+	           Dirk Behme, Michal Schmidt</revremark>
       </revision>
       <revision>
         <revnumber>1.0</revnumber>
@@ -106,7 +127,7 @@
 
   <listitem>
     <para>
-      Making in-kernel locking-primitives (using spinlocks) preemptible though
+      Making in-kernel locking-primitives (using spinlocks) preemptible through
       reimplementation with rtmutexes:
     </para>
     <para>
@@ -133,8 +154,9 @@
     </para>
     <para>
        The RT-Preempt patch treats soft interrupt handlers in kernel thread
-       context, which is represented by a task_struct like a common userspace
-       process. However it is also possible register an IRQ in kernel context.
+       context, which is represented by a task_struct like a common process.
+       However it is also possible register an IRQ handler for immediate
+       execution in interrupt context.
    </para>
   </listitem>
 
@@ -266,8 +288,8 @@
 </itemizedlist>
 
 <para> Further interesting options can be found under the "Kernel
-Hacking" menu entry This menu lists options for system debugging and
-performance measurement. Keep in mind that the debug options may either
+Hacking" menu entry. This menu lists options for system debugging and
+performance measurement. Keep in mind that the debug options may
 increase the kernel size or cause higher latencies. If you do not want
 to debug the kernel or get some automatically produced histograms, make
 sure that you don't activate any unneccessary options here. If you have
@@ -311,13 +333,14 @@
 
 <para>Now have a look at the process list. As mentioned earlier in this
 document, the IRQ handlers are treated by a patched kernel in kernel
-thread context. Single IRQ Handlers are transparently represented by task
-structs like user space tasks. Thus they can be listed or controlled by
+thread context. Single IRQ Handlers are transparently represented by
+task_structs like other tasks. Thus they can be listed or controlled by
 userspace tools. The following figure shows partly a list of running
 processes on a system with a patched kernel.</para>
 
 <para>Note that, in contrast to a non-RT kernel, the interrupt handlers
-are kernel threads here, so they are listed [in square brackets].</para>
+have dedicated threads, so they are listed here like other kernel threads
+[in square brackets].</para>
 
 <figure>
   <title>Checking for Kernel Threads in the Process List</title>
@@ -398,17 +421,17 @@
   </programlisting>
 </figure>
 
-<para> A "N" marks an IRQ which is declared as an hard IRQ and thus
-handled in kernel context. In our example we have IRQ0, IRQ2 and IRQ7
-marked as hard IRQs, which are handled in kernel context. IRQ0 (timer)
+<para> A "N" marks an IRQ which is declared as a hard IRQ and thus
+handled in interrupt context. In our example we have IRQ0, IRQ2 and IRQ7
+marked as hard IRQs, which are handled in interrupt context. IRQ0 (timer)
 and IRQ2 (cascade controller) are set as hard IRQ by the system by
 default. IRQ7 (lpptest) is used for benchmarking interrupt latency time.
 The lpptest comes with the realtime preemption patch. To mark an IRQ as
-hard IRQ, you will have to manipulate the IRQ decription manually. With
+hard IRQ, you will have to manipulate the IRQ description manually. With
 the IRQ status marked as IRQ_NODELAY and the flags of the IRQ action
 marked as IRQF_NODELAY | IRQF_DISABLED the handler of the IRQ will not
 be treated as a kernel thread. Since such an IRQ handler is
-unpreemptable, it's absolutely not recommended to mark an IRQ as hard
+not preemptible, it's absolutely not recommended to mark an IRQ as hard
 IRQ manually while developing your own kernel modules. To change the
 priority of a kernel thread like e.g. an interrupt handler, you can use
 the chrt tool, which is downloadable at <xref linkend="5"/>. With this
#6 lore raw
Quoted 9 lines · Michal Schmidt

Robert Schwebel skrev:

Quoted 3 lines

I've ported the changes from the wiki diff output; please send me a diff with a correct credit line for the document header. I suppose I've not correctly seen who made which changes.

Here's a patch fixing a slight confusion, where the description of threaded IRQs seemed to suggest that they're executed either in user or kernel context, while the real distinction is interrupt/process context. It also adds myself to the document header and updates the revhistory.

Committed, please re-check.

Robert

Signature · 5 lines
 Dipl.-Ing. Robert Schwebel | http://www.pengutronix.de
 Pengutronix - Linux Solutions for Science and Industry
   Handelsregister:  Amtsgericht Hildesheim, HRA 2686
     Hannoversche Str. 2, 31134 Hildesheim, Germany
   Phone: +49-5121-206917-0 |  Fax: +49-5121-206917-9