| /Linux-v5.4/include/media/ | 
| D | v4l2-ioctl.h | 25  * @vidioc_querycap: pointer to the function that implements27  * @vidioc_enum_fmt_vid_cap: pointer to the function that implements
 30  * @vidioc_enum_fmt_vid_overlay: pointer to the function that implements
 33  * @vidioc_enum_fmt_vid_out: pointer to the function that implements
 36  * @vidioc_enum_fmt_sdr_cap: pointer to the function that implements
 39  * @vidioc_enum_fmt_sdr_out: pointer to the function that implements
 42  * @vidioc_enum_fmt_meta_cap: pointer to the function that implements
 45  * @vidioc_enum_fmt_meta_out: pointer to the function that implements
 48  * @vidioc_g_fmt_vid_cap: pointer to the function that implements
 51  * @vidioc_g_fmt_vid_overlay: pointer to the function that implements
 [all …]
 
 | 
| /Linux-v5.4/Documentation/process/ | 
| D | management-style.rst | 14 to do with reality.  It started as a lark, but that doesn't mean that it27   making it painfully obvious to the questioner that we don't have a clue
 37 Everybody thinks managers make decisions, and that decision-making is
 39 manager must be to make it.  That's very deep and obvious, but it's not
 47 competent to make that decision for them.
 51 Namely that you are in the wrong job, and that **they** should be managing
 60 It helps to realize that the key difference between a big decision and a
 62 can be made small by just always making sure that if you were wrong (and
 67 And people will even see that as true leadership (*cough* bullshit
 71 things that can't be undone.  Don't get ushered into a corner from which
 [all …]
 
 | 
| D | 6.Followthrough.rst | 8 patches.  One of the biggest mistakes that even experienced kernel9 developers can make is to conclude that their work is now done.  In truth,
 13 It is a rare patch which is so good at its first posting that there is no
 16 code.  You, as the author of that code, will be expected to work with the
 17 kernel community to ensure that your code is up to the kernel's quality
 32    value and why you went to the trouble of writing it.  But that value
 36    to substantial rewrites - come from the understanding that Linux will
 49    be working on the kernel years from now, but they understand that their
 54 What all of this comes down to is that, when reviewers send you comments,
 55 you need to pay attention to the technical observations that they are
 [all …]
 
 | 
| D | stable-api-nonsense.rst | 15   Please realize that this article describes the **in kernel** interfaces, not18   The kernel to userspace interface is the one that application programs use,
 19   the syscall interface.  That interface is **very** stable over time, and
 20   will not break.  I have old programs that were built on a pre 0.9something
 21   kernel that still work just fine on the latest 2.6 kernel release.
 22   That interface is the one that users and application programmers can count
 30 you get that only if your driver is in the main kernel tree.  You also
 40 It's only the odd person who wants to write a kernel driver that needs
 47 that describes kernel drivers that do not have their source code
 60 Assuming that we had a stable kernel source interface for the kernel, a
 [all …]
 
 | 
| /Linux-v5.4/tools/perf/pmu-events/arch/x86/goldmont/ | 
| D | cache.json | 4 …"PublicDescription": "Counts memory requests originating from the core that miss in the L2 cache.",14 …"PublicDescription": "Counts memory requests originating from the core that reference a cache line…
 24 …"PublicDescription": "Counts the number of demand and prefetch transactions that the L2 XQ rejects…
 34 …on which likely indicates back pressure from L2Q. It also counts requests that would have gone dir…
 54 …"PublicDescription": "Counts cycles that fetch is stalled due to an outstanding ICache miss. That …
 92         "BriefDescription": "Load uops retired that split a cache-line (Precise event capable)",
 104         "BriefDescription": "Stores uops retired that split a cache-line (Precise event capable)",
 116         "BriefDescription": "Memory uops retired that split a cache-line (Precise event capable)",
 146 …"PublicDescription": "Counts the number of memory uops retired that is either a loads or a store o…
 158         "PublicDescription": "Counts load uops retired that hit the L1 data cache.",
 [all …]
 
 | 
| /Linux-v5.4/Documentation/filesystems/ | 
| D | path-lookup.rst | 21 exploration is needed to discover, is that it is complex.  There are22 many rules, special cases, and implementation alternatives that all
 25 tool that we will make extensive use of is "divide and conquer".  For
 40 of elements: "slashes" that are sequences of one or more "``/``"
 41 characters, and "components" that are sequences of one or more
 42 non-"``/``" characters.  These form two kinds of paths.  Those that
 51 component, but that isn't always accurate: a pathname can lack both
 61 it must identify a directory that already exists, otherwise an error
 67 pathname that is just slashes have a final component.  If it does
 74 tempting to consider that to have an empty final component.  In many
 [all …]
 
 | 
| D | xfs-delayed-logging-design.txt | 12 required for objects that are frequently logged. Some parts of inodes are more17 The reason that this is such a concern is that XFS allows multiple separate
 21 "re-logging". Conceptually, this is quite simple - all it requires is that any
 23 changes in the new transaction that is written to the log.
 25 That is, if we have a sequence of changes A through to F, and the object was
 43 that an object being relogged does not prevent the tail of the log from ever
 56 progresses, ensuring that current operation never gets blocked by itself if the
 59 Hence it can be seen that the relogging operation is fundamental to the correct
 63 the log over and over again. Worse is the fact that objects tend to get
 67 Another feature of the XFS transaction subsystem is that most transactions are
 [all …]
 
 | 
| D | directory-locking.rst | 12 that "inode pointer" order in the following.25 4) rename() that is _not_ cross-directory.  Locking rules: caller locks
 37 	* check that source is not a directory
 61 The rules above obviously guarantee that all directories that are going to be
 72 	That ordering can change.  However, the following is true:
 102 blocked on source and it means that it doesn't hold any locks.
 105 has a child that is also contended.  Indeed, suppose that it is held by
 107 is blocked on belongs to child of that object due to (1).
 109 It means that one of the operations is cross-directory rename.
 111 would have a contended child and we had assumed that no object is its
 [all …]
 
 | 
| /Linux-v5.4/Documentation/admin-guide/pm/ | 
| D | cpuidle.rst | 33 CPU idle time management operates on CPUs as seen by the *CPU scheduler* (that35 work in the system).  In its view, CPUs are *logical* units.  That is, they need
 38 entity which appears to be fetching instructions that belong to one sequence
 43 program) at a time, it is a CPU.  In that case, if the hardware is asked to
 44 enter an idle state, that applies to the processor as a whole.
 51 time.  The entire cores are CPUs in that case and if the hardware is asked to
 52 enter an idle state, that applies to the core that asked for it in the first
 54 that the core belongs to (in fact, it may apply to an entire hierarchy of larger
 57 remaining core asks the processor to enter an idle state, that may trigger it
 59 other cores in that unit.
 [all …]
 
 | 
| /Linux-v5.4/LICENSES/preferred/ | 
| D | LGPL-2.1 | 43 price. Our General Public Licenses are designed to make sure that you have45 service if you wish); that you receive source code or can get it if you
 46 want it; that you can change the software and use pieces of it in new free
 47 programs; and that you are informed that you can do these things.
 49 To protect your rights, we need to make restrictions that forbid
 55 a fee, you must give the recipients all the rights that we gave you. You
 56 must make sure that they, too, receive or can get the source code. If you
 58 the recipients, so that they can relink them with the library after making
 66 To protect each distributor, we want to make it very clear that there is no
 68 else and passed on, the recipients should know that what they have is not
 [all …]
 
 | 
| D | LGPL-2.0 | 39 General Public Licenses are designed to make sure that you have the freedom41 wish), that you receive source code or can get it if you want it, that you
 42 can change the software or use pieces of it in new free programs; and that
 45 To protect your rights, we need to make restrictions that forbid anyone to
 51 a fee, you must give the recipients all the rights that we gave you. You
 52 must make sure that they, too, receive or can get the source code. If you
 54 the recipients so that they can relink them with the library, after making
 62 Also, for each distributor's protection, we want to make certain that
 63 everyone understands that there is no warranty for this free library. If
 65 recipients to know that what they have is not the original version, so that
 [all …]
 
 | 
| /Linux-v5.4/Documentation/RCU/ | 
| D | stallwarn.txt | 5 options that can be used to fine-tune the detector's operation.  Finally,28 o	Booting Linux using a console connection that is too slow to
 35 o	Anything that prevents RCU's grace-period kthreads from running.
 45 	that low-priority task is not permitted to run on any other CPU,
 51 o	A CPU-bound real-time task in a CONFIG_PREEMPT_RT kernel that
 62 	help avoid this problem.  However, please note that doing this
 69 	Note that certain high-overhead debugging options, for example
 77 	slow system.  Note that thermal throttling and on-demand governors
 81 	interrupt on a CPU that is not in dyntick-idle mode.  This
 91 	leading the realization that the CPU had failed.
 [all …]
 
 | 
| D | rcu_dereference.txt | 14 	bugs due to games that compilers and DEC Alpha can play.18 	DEC Alpha can load a pointer, dereference that pointer, and
 19 	return data preceding initialization that preceded the store of
 31 	There are a very few exceptions, namely that you can temporarily
 35 		bits of that pointer.  This clearly means that the pointer
 48 	rights to substitute zero for this sort of expression, so that
 53 	and "b" are integers that happen to be equal, the expression
 57 o	If you are using RCU to protect JITed functions, so that the
 62 	using the same memory that was used by an earlier JITed function.
 78 	As before, the reason this is buggy is that relational operators
 [all …]
 
 | 
| /Linux-v5.4/Documentation/power/ | 
| D | freezing-of-tasks.rst | 17 There are three per-task flags used for that, PF_NOFREEZE, PF_FROZEN18 and PF_FREEZER_SKIP (the last one is auxiliary).  The tasks that have
 28 sets this variable.  After this, it executes try_to_freeze_tasks() that sends a
 30 All freezable tasks must react to that by calling try_to_freeze(), which
 33 it loop until PF_FROZEN is cleared for it. Then, we say that the task is
 40 try_to_freeze() function (defined in include/linux/freezer.h), that checks
 47 that combine interruptible sleep with checking if the task is to be frozen and
 69 order to clear the PF_FROZEN flag for each frozen task.  Then, the tasks that
 101 IV. Why do we do that?
 111    filesystem-related information that must be consistent with the state of the
 [all …]
 
 | 
| /Linux-v5.4/tools/perf/pmu-events/arch/x86/knightslanding/ | 
| D | memory.json | 18 …"BriefDescription": "Counts any Prefetch requests that accounts for data responses from MCDRAM Far…29 …"BriefDescription": "Counts any Prefetch requests that accounts for data responses from MCDRAM Loc…
 40 …"BriefDescription": "Counts any Prefetch requests that accounts for data responses from DRAM Far.",
 51 …"BriefDescription": "Counts any Prefetch requests that accounts for data responses from DRAM Local…
 62 …"BriefDescription": "Counts any Read request  that accounts for data responses from MCDRAM Far or …
 73 …"BriefDescription": "Counts any Read request  that accounts for data responses from MCDRAM Local.",
 84 …    "BriefDescription": "Counts any Read request  that accounts for data responses from DRAM Far.",
 95 …  "BriefDescription": "Counts any Read request  that accounts for data responses from DRAM Local.",
 106 …"BriefDescription": "Counts Demand code reads and prefetch code read requests  that accounts for d…
 117 …"BriefDescription": "Counts Demand code reads and prefetch code read requests  that accounts for d…
 [all …]
 
 | 
| D | cache.json | 8 …that reference a cache line (cacheable requests) exlcuding SW prefetches filling only to L2 cache …16 …"BriefDescription": "Counts the number of MEC requests that were not accepted into the L2Q because…
 44 …: "This event counts the number of load micro-ops retired that miss in L1 Data cache. Note that pr…
 50         "BriefDescription": "Counts the number of load micro-ops retired that miss in L1 D cache"
 59         "BriefDescription": "Counts the number of load micro-ops retired that hit in the L2",
 69         "BriefDescription": "Counts the number of load micro-ops retired that miss in the L2",
 78         "BriefDescription": "Counts the number of load micro-ops retired that caused micro TLB miss"
 87 …"BriefDescription": "Counts the loads retired that get the data from the other core in the same ti…
 124 …"BriefDescription": "Counts any Prefetch requests that are outstanding, per weighted cycle, from t…
 135 …"BriefDescription": "Counts any Prefetch requests that accounts for responses from a snoop request…
 [all …]
 
 | 
| /Linux-v5.4/tools/perf/pmu-events/arch/x86/silvermont/ | 
| D | cache.json | 3 …"PublicDescription": "This event counts the number of demand and prefetch transactions that the L2…9 …  "BriefDescription": "Counts the number of request from the L2 that were not accepted into the XQ"
 12 …that would have gone directly to the XQ, but are rejected due to a full or nearly full condition, …
 18 …"BriefDescription": "Counts the number of request that were not accepted into the L2Q because the …
 21 …"PublicDescription": "This event counts requests originating from the core that references a cache…
 39 …that fetch is stalled due to an outstanding ICache miss. That is, the decoder queue is able to acc…
 49 …"PublicDescription": "This event counts the number of retired loads that were prohibited from rece…
 67 …"PublicDescription": "This event counts the number of retire stores that experienced cache line bo…
 73         "BriefDescription": "Store uops that split cache line boundary"
 77 …"PublicDescription": "This event counts the number of retire loads that experienced cache line bou…
 [all …]
 
 | 
| /Linux-v5.4/Documentation/locking/ | 
| D | rt-mutex-design.rst | 11 It doesn't describe the reasons why rtmutex.c exists. For that please see13 that happen without this code, but that is in the concept to understand
 17 inheritance (PI) algorithm that is used, as well as reasons for the
 18 decisions that were made to implement PI in the manner that was done.
 27 to use a resource that a lower priority process has (a mutex for example),
 30 is something called unbounded priority inversion.  That is when the high
 37 that C owns and must wait and lets C run to release the lock. But in the
 71 inherited priority, and A then can continue with the resource that C had.
 76 Here I explain some terminology that is used in this document to help describe
 77 the design that is used to implement PI.
 [all …]
 
 | 
| /Linux-v5.4/Documentation/maintainer/ | 
| D | rebasing-and-merging.rst | 12 those tools incorrectly, but avoiding problems is not actually all that15 One thing to be aware of in general is that, unlike many other projects,
 26 within a repository.  There are two different types of operations that are
 43 history; used improperly, it can obscure that history and introduce bugs.
 45 There are a few rules of thumb that can help developers to avoid the worst
 48  - History that has been exposed to the world beyond your private system
 51    work is in need of rebasing, that is usually a sign that it is not yet
 54    That said, there are always exceptions.  Some trees (linux-next being
 58    testing services.  If you do expose a branch that may be unstable in
 59    this way, be sure that prospective users know not to base work on it.
 [all …]
 
 | 
| /Linux-v5.4/Documentation/media/uapi/v4l/ | 
| D | colorspaces.rst | 17 biology. Just because you have three numbers that describe the 'red',18 'green' and 'blue' components of the color of a pixel does not mean that
 19 you can accurately display that color. A colorspace defines what it
 20 actually *means* to have an RGB value of e.g. (255, 0, 0). That is,
 24 In order to do that we first need to have a good definition of color,
 25 i.e. some way to uniquely and unambiguously define a color so that
 27 the human eye has color receptors that are sensitive to three different
 41 possible that different SPDs will result in the same stimulation of
 46 between SPDs and the perceived color and that resulted in the CIE 1931
 47 standard that defines spectral weighting functions that model the
 [all …]
 
 | 
| /Linux-v5.4/Documentation/vm/ | 
| D | memory-model.rst | 12 however, that this range contains small holes that are not accessible20 whether it is possible to manually override that default.
 34 helpers that allow the conversion from PFN to `struct page` and vice
 44 In the FLATMEM memory model, there is a global `mem_map` array that
 52 usable until the call to :c:func:`memblock_free_all` that hands all
 56 it may free parts of the `mem_map` array that do not cover the
 75 things, `pg_data_t` holds the `node_mem_map` array that maps
 76 physical pages belonging to that node. The `node_start_pfn` field of
 77 `pg_data_t` is the number of the first page frame belonging to that
 88 node hosting that page.
 [all …]
 
 | 
| /Linux-v5.4/Documentation/ | 
| D | DMA-attributes.txt | 5 This document describes the semantics of the DMA attributes that are21 useful, suppose that a device does a DMA write to indicate that data is
 29 DMA_ATTR_WEAK_ORDERING specifies that reads and writes to the mapping
 30 may be weakly ordered, that is that reads and writes may pass each other.
 33 those that do not will simply ignore the attribute and exhibit default
 39 DMA_ATTR_WRITE_COMBINE specifies that writes to the mapping may be
 43 those that do not will simply ignore the attribute and exhibit default
 51 you are guaranteeing to the platform that you have all the correct and
 63 that you won't dereference the pointer returned by dma_alloc_attr(). You
 64 can treat it as a cookie that must be passed to dma_mmap_attrs() and
 [all …]
 
 | 
| /Linux-v5.4/Documentation/firmware-guide/acpi/ | 
| D | osi.rst | 10 can evaluate that method, look to see if it supports 'XYZ'14 that OSPM supports"
 22 Linux runs on two groups of machines -- those that are tested by the OEM
 23 to be compatible with Linux, and those that were never tested with Linux,
 26 The larger group is the systems tested to run only Windows.  Not only that,
 30 Experience shows that taking untested paths through the BIOS
 37 Windows to its list of _OSI strings.  So it is possible that additional strings
 39 But it is likely that they will all eventually be added.
 52 via the linux-acpi@vger.kernel.org mailing list.  When that patch
 55 by the OS.  Linux distributors can back-port that patch for Linux
 [all …]
 
 | 
| /Linux-v5.4/fs/nfs/ | 
| D | io.c | 30  * Declare that a buffered read operation is about to start, and ensure31  * that we block all direct I/O.
 32  * On exit, the function ensures that the NFS_INO_ODIRECT flag is unset,
 33  * and holds a shared lock on inode->i_rwsem to ensure that the flag
 35  * In practice, this means that buffered read operations are allowed to
 39  * Note that buffered writes and truncates both take a write lock on
 40  * inode->i_rwsem, meaning that those are serialised w.r.t. the reads.
 58  * nfs_end_io_read - declare that the buffered read operation is done
 61  * Declare that a buffered read operation is done, and release the shared
 74  * Declare that a buffered read operation is about to start, and ensure
 [all …]
 
 | 
| /Linux-v5.4/Documentation/driver-api/gpio/ | 
| D | legacy.rst | 7 These calls use the gpio_* naming prefix.  No other calls should use that18 which GPIOs.  Drivers can be written generically, so that board setup code
 26 also "GPIO Expander" chips that connect using the I2C or SPI serial busses.
 33     options about how that value is driven, so that for example only one
 60 Note that this is called a "convention" because you don't need to do it this
 63 glue logic that may even change between board revisions, and can't ever be
 64 used on a board that's wired differently.  Only least-common-denominator
 66 and that can be critical for glue logic.
 76 That said, if the convention is supported on their platform, drivers should
 78 is strictly required.  Drivers that can't work without
 [all …]
 
 |