Commit 621e59a771f310358ade8f14cb745d5d5f1c410e

Authored by Randy Dunlap
Committed by Linus Torvalds
1 parent 3dd1a32968

docbook: make kernel-locking table readable

Andi Kleen pointed out to me that the kernel locking cheat sheet
table entries are unreadable.

Make table entries smaller so that pdf and ps output is readable
(columns were being overwritten and garbled) by using abbreviations.
This allows the tables to fit on one page cleanly.
Add a Legend for the abbreviations:
  SLIS: spin_lock_irqsave
  SLI:  spin_lock_irq
  SL:   spin_lock
  SLBH: spin_lock_bh
  DI:   down_interruptible

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Showing 1 changed file with 78 additions and 45 deletions Side-by-side Diff

Documentation/DocBook/kernel-locking.tmpl
... ... @@ -551,10 +551,12 @@
551 551 <function>spin_lock_irqsave()</function>, which is a superset
552 552 of all other spinlock primitives.
553 553 </para>
  554 +
554 555 <table>
555 556 <title>Table of Locking Requirements</title>
556 557 <tgroup cols="11">
557 558 <tbody>
  559 +
558 560 <row>
559 561 <entry></entry>
560 562 <entry>IRQ Handler A</entry>
561 563  
562 564  
563 565  
564 566  
565 567  
566 568  
567 569  
568 570  
569 571  
570 572  
571 573  
572 574  
... ... @@ -576,97 +578,128 @@
576 578  
577 579 <row>
578 580 <entry>IRQ Handler B</entry>
579   -<entry>spin_lock_irqsave</entry>
  581 +<entry>SLIS</entry>
580 582 <entry>None</entry>
581 583 </row>
582 584  
583 585 <row>
584 586 <entry>Softirq A</entry>
585   -<entry>spin_lock_irq</entry>
586   -<entry>spin_lock_irq</entry>
587   -<entry>spin_lock</entry>
  587 +<entry>SLI</entry>
  588 +<entry>SLI</entry>
  589 +<entry>SL</entry>
588 590 </row>
589 591  
590 592 <row>
591 593 <entry>Softirq B</entry>
592   -<entry>spin_lock_irq</entry>
593   -<entry>spin_lock_irq</entry>
594   -<entry>spin_lock</entry>
595   -<entry>spin_lock</entry>
  594 +<entry>SLI</entry>
  595 +<entry>SLI</entry>
  596 +<entry>SL</entry>
  597 +<entry>SL</entry>
596 598 </row>
597 599  
598 600 <row>
599 601 <entry>Tasklet A</entry>
600   -<entry>spin_lock_irq</entry>
601   -<entry>spin_lock_irq</entry>
602   -<entry>spin_lock</entry>
603   -<entry>spin_lock</entry>
  602 +<entry>SLI</entry>
  603 +<entry>SLI</entry>
  604 +<entry>SL</entry>
  605 +<entry>SL</entry>
604 606 <entry>None</entry>
605 607 </row>
606 608  
607 609 <row>
608 610 <entry>Tasklet B</entry>
609   -<entry>spin_lock_irq</entry>
610   -<entry>spin_lock_irq</entry>
611   -<entry>spin_lock</entry>
612   -<entry>spin_lock</entry>
613   -<entry>spin_lock</entry>
  611 +<entry>SLI</entry>
  612 +<entry>SLI</entry>
  613 +<entry>SL</entry>
  614 +<entry>SL</entry>
  615 +<entry>SL</entry>
614 616 <entry>None</entry>
615 617 </row>
616 618  
617 619 <row>
618 620 <entry>Timer A</entry>
619   -<entry>spin_lock_irq</entry>
620   -<entry>spin_lock_irq</entry>
621   -<entry>spin_lock</entry>
622   -<entry>spin_lock</entry>
623   -<entry>spin_lock</entry>
624   -<entry>spin_lock</entry>
  621 +<entry>SLI</entry>
  622 +<entry>SLI</entry>
  623 +<entry>SL</entry>
  624 +<entry>SL</entry>
  625 +<entry>SL</entry>
  626 +<entry>SL</entry>
625 627 <entry>None</entry>
626 628 </row>
627 629  
628 630 <row>
629 631 <entry>Timer B</entry>
630   -<entry>spin_lock_irq</entry>
631   -<entry>spin_lock_irq</entry>
632   -<entry>spin_lock</entry>
633   -<entry>spin_lock</entry>
634   -<entry>spin_lock</entry>
635   -<entry>spin_lock</entry>
636   -<entry>spin_lock</entry>
  632 +<entry>SLI</entry>
  633 +<entry>SLI</entry>
  634 +<entry>SL</entry>
  635 +<entry>SL</entry>
  636 +<entry>SL</entry>
  637 +<entry>SL</entry>
  638 +<entry>SL</entry>
637 639 <entry>None</entry>
638 640 </row>
639 641  
640 642 <row>
641 643 <entry>User Context A</entry>
642   -<entry>spin_lock_irq</entry>
643   -<entry>spin_lock_irq</entry>
644   -<entry>spin_lock_bh</entry>
645   -<entry>spin_lock_bh</entry>
646   -<entry>spin_lock_bh</entry>
647   -<entry>spin_lock_bh</entry>
648   -<entry>spin_lock_bh</entry>
649   -<entry>spin_lock_bh</entry>
  644 +<entry>SLI</entry>
  645 +<entry>SLI</entry>
  646 +<entry>SLBH</entry>
  647 +<entry>SLBH</entry>
  648 +<entry>SLBH</entry>
  649 +<entry>SLBH</entry>
  650 +<entry>SLBH</entry>
  651 +<entry>SLBH</entry>
650 652 <entry>None</entry>
651 653 </row>
652 654  
653 655 <row>
654 656 <entry>User Context B</entry>
  657 +<entry>SLI</entry>
  658 +<entry>SLI</entry>
  659 +<entry>SLBH</entry>
  660 +<entry>SLBH</entry>
  661 +<entry>SLBH</entry>
  662 +<entry>SLBH</entry>
  663 +<entry>SLBH</entry>
  664 +<entry>SLBH</entry>
  665 +<entry>DI</entry>
  666 +<entry>None</entry>
  667 +</row>
  668 +
  669 +</tbody>
  670 +</tgroup>
  671 +</table>
  672 +
  673 + <table>
  674 +<title>Legend for Locking Requirements Table</title>
  675 +<tgroup cols="2">
  676 +<tbody>
  677 +
  678 +<row>
  679 +<entry>SLIS</entry>
  680 +<entry>spin_lock_irqsave</entry>
  681 +</row>
  682 +<row>
  683 +<entry>SLI</entry>
655 684 <entry>spin_lock_irq</entry>
656   -<entry>spin_lock_irq</entry>
  685 +</row>
  686 +<row>
  687 +<entry>SL</entry>
  688 +<entry>spin_lock</entry>
  689 +</row>
  690 +<row>
  691 +<entry>SLBH</entry>
657 692 <entry>spin_lock_bh</entry>
658   -<entry>spin_lock_bh</entry>
659   -<entry>spin_lock_bh</entry>
660   -<entry>spin_lock_bh</entry>
661   -<entry>spin_lock_bh</entry>
662   -<entry>spin_lock_bh</entry>
  693 +</row>
  694 +<row>
  695 +<entry>DI</entry>
663 696 <entry>down_interruptible</entry>
664   -<entry>None</entry>
665 697 </row>
666 698  
667 699 </tbody>
668 700 </tgroup>
669 701 </table>
  702 +
670 703 </sect1>
671 704 </chapter>
672 705