~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/tools/memory-model/Documentation/README

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /tools/memory-model/Documentation/README (Version linux-6.12-rc7) and /tools/memory-model/Documentation/README (Version linux-5.15.171)


  1 It has been said that successful communication      1 It has been said that successful communication requires first identifying
  2 what your audience knows and then building a b      2 what your audience knows and then building a bridge from their current
  3 knowledge to what they need to know.  Unfortun      3 knowledge to what they need to know.  Unfortunately, the expected
  4 Linux-kernel memory model (LKMM) audience migh      4 Linux-kernel memory model (LKMM) audience might be anywhere from novice
  5 to expert both in kernel hacking and in unders      5 to expert both in kernel hacking and in understanding LKMM.
  6                                                     6 
  7 This document therefore points out a number of      7 This document therefore points out a number of places to start reading,
  8 depending on what you know and what you would       8 depending on what you know and what you would like to learn.  Please note
  9 that the documents later in this list assume t      9 that the documents later in this list assume that the reader understands
 10 the material provided by documents earlier in      10 the material provided by documents earlier in this list.
 11                                                    11 
 12 If LKMM-specific terms lost you, glossary.txt  << 
 13                                                << 
 14 o       You are new to Linux-kernel concurrenc     12 o       You are new to Linux-kernel concurrency: simple.txt
 15                                                    13 
 16 o       You have some background in Linux-kern     14 o       You have some background in Linux-kernel concurrency, and would
 17         like an overview of the types of low-l     15         like an overview of the types of low-level concurrency primitives
 18         that the Linux kernel provides:  order     16         that the Linux kernel provides:  ordering.txt
 19                                                    17 
 20         Here, "low level" means atomic operati     18         Here, "low level" means atomic operations to single variables.
 21                                                    19 
 22 o       You are familiar with the Linux-kernel     20 o       You are familiar with the Linux-kernel concurrency primitives
 23         that you need, and just want to get st     21         that you need, and just want to get started with LKMM litmus
 24         tests:  litmus-tests.txt                   22         tests:  litmus-tests.txt
 25                                                    23 
 26 o       You would like to access lock-protecte << 
 27         having their corresponding locks held: << 
 28                                                << 
 29 o       You are familiar with Linux-kernel con     24 o       You are familiar with Linux-kernel concurrency, and would
 30         like a detailed intuitive understandin     25         like a detailed intuitive understanding of LKMM, including
 31         situations involving more than two thr     26         situations involving more than two threads:  recipes.txt
 32                                                    27 
 33 o       You would like a detailed understandin     28 o       You would like a detailed understanding of what your compiler can
 34         and cannot do to control dependencies:     29         and cannot do to control dependencies:  control-dependencies.txt
 35                                                    30 
 36 o       You would like to mark concurrent norm << 
 37         variables so that intentional "racy" a << 
 38         documented, especially when you are re << 
 39         from KCSAN:  access-marking.txt        << 
 40                                                << 
 41 o       You are familiar with Linux-kernel con     31 o       You are familiar with Linux-kernel concurrency and the use of
 42         LKMM, and would like a quick reference     32         LKMM, and would like a quick reference:  cheatsheet.txt
 43                                                    33 
 44 o       You are familiar with Linux-kernel con     34 o       You are familiar with Linux-kernel concurrency and the use
 45         of LKMM, and would like to learn about     35         of LKMM, and would like to learn about LKMM's requirements,
 46         rationale, and implementation:  explan !!  36         rationale, and implementation:  explanation.txt
 47         herd-representation.txt                << 
 48                                                    37 
 49 o       You are interested in the publications     38 o       You are interested in the publications related to LKMM, including
 50         hardware manuals, academic literature,     39         hardware manuals, academic literature, standards-committee
 51         working papers, and LWN articles:  ref     40         working papers, and LWN articles:  references.txt
 52                                                    41 
 53                                                    42 
 54 ====================                               43 ====================
 55 DESCRIPTION OF FILES                               44 DESCRIPTION OF FILES
 56 ====================                               45 ====================
 57                                                    46 
 58 README                                             47 README
 59         This file.                                 48         This file.
 60                                                    49 
 61 access-marking.txt                             << 
 62         Guidelines for marking intentionally c << 
 63         shared memory.                         << 
 64                                                << 
 65 cheatsheet.txt                                     50 cheatsheet.txt
 66         Quick-reference guide to the Linux-ker     51         Quick-reference guide to the Linux-kernel memory model.
 67                                                    52 
 68 control-dependencies.txt                           53 control-dependencies.txt
 69         Guide to preventing compiler optimizat     54         Guide to preventing compiler optimizations from destroying
 70         your control dependencies.                 55         your control dependencies.
 71                                                    56 
 72 explanation.txt                                    57 explanation.txt
 73         Detailed description of the memory mod     58         Detailed description of the memory model.
 74                                                    59 
 75 glossary.txt                                   << 
 76         Brief definitions of LKMM-related term << 
 77                                                << 
 78 herd-representation.txt                        << 
 79         The (abstract) representation of the L << 
 80         primitives in terms of events.         << 
 81                                                << 
 82 litmus-tests.txt                                   60 litmus-tests.txt
 83         The format, features, capabilities, an     61         The format, features, capabilities, and limitations of the litmus
 84         tests that LKMM can evaluate.              62         tests that LKMM can evaluate.
 85                                                << 
 86 locking.txt                                    << 
 87         Rules for accessing lock-protected sha << 
 88         their corresponding critical sections. << 
 89                                                    63 
 90 ordering.txt                                       64 ordering.txt
 91         Overview of the Linux kernel's low-lev     65         Overview of the Linux kernel's low-level memory-ordering
 92         primitives by category.                    66         primitives by category.
 93                                                    67 
 94 recipes.txt                                        68 recipes.txt
 95         Common memory-ordering patterns.           69         Common memory-ordering patterns.
 96                                                    70 
 97 references.txt                                     71 references.txt
 98         Background information.                    72         Background information.
 99                                                    73 
100 simple.txt                                         74 simple.txt
101         Starting point for someone new to Linu     75         Starting point for someone new to Linux-kernel concurrency.
102         And also a reminder of the simpler app     76         And also a reminder of the simpler approaches to concurrency!
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php