From patchwork Mon Apr 22 13:27:00 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mauro Carvalho Chehab X-Patchwork-Id: 10912695 X-Patchwork-Delegate: snitzer@redhat.com Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 517341575 for ; Tue, 23 Apr 2019 10:29:44 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 280E328806 for ; Tue, 23 Apr 2019 10:29:44 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1BB0A2882A; Tue, 23 Apr 2019 10:29:44 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,LOTS_OF_MONEY,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 9A4A528806 for ; Tue, 23 Apr 2019 10:29:37 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id A8C6D30B96C4; Tue, 23 Apr 2019 10:29:36 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 7C1761001E87; Tue, 23 Apr 2019 10:29:36 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 37E973FA49; Tue, 23 Apr 2019 10:29:36 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x3MDSS0A021167 for ; Mon, 22 Apr 2019 09:28:28 -0400 Received: by smtp.corp.redhat.com (Postfix) id 08E895D722; Mon, 22 Apr 2019 13:28:28 +0000 (UTC) Delivered-To: dm-devel@redhat.com Received: from mx1.redhat.com (ext-mx09.extmail.prod.ext.phx2.redhat.com [10.5.110.38]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3D3DA5D71D; Mon, 22 Apr 2019 13:28:23 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 65879F74BF; Mon, 22 Apr 2019 13:28:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Sender:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=OG+49BfZW9421HRCTyaIu2YbLRzCZTnM0dibRk2xF2U=; b=aO1RrBoceKqyujr8/cWdllXNc3 hkb+UwpI4qMKvmKLlgkPcr9HMeTKp9/ILkEkrnX/AwBQpoYHpjq2SfFOGYzSJ4We3XVDuyyZsGOzj JfXprLuauzoZyLBH9HlHsNT2GdsCh6giFQiPo4rF6Kgbgf9HYKm48X/DrlokBxnBNLmssshrUfeCf eBX+xuE/6/A/HutwliSfsKskkUjWSejT2iwjDiDxxFVEAfLAEG0+kwfddz7plkq7ZtY2O5DXT5M0B umltwv/VTFgdGaWmHOVms1oJ7f42R1RYZ6AXuryg1zT9kLiz0LR5GsAEYjSk2czvzovHJxGvXCmyX xF1vDOgA==; Received: from 179.176.125.229.dynamic.adsl.gvt.net.br ([179.176.125.229] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtpsa (Exim 4.90_1 #2 (Red Hat Linux)) id 1hIYzU-0005Hc-Mz; Mon, 22 Apr 2019 13:28:15 +0000 Received: from mchehab by bombadil.infradead.org with local (Exim 4.92) (envelope-from ) id 1hIYzS-0005kD-IC; Mon, 22 Apr 2019 10:28:10 -0300 From: Mauro Carvalho Chehab To: Linux Doc Mailing List Date: Mon, 22 Apr 2019 10:27:00 -0300 Message-Id: <6ada06354f0d4800321d75f6a9b1d020c41a4cb9.1555938375.git.mchehab+samsung@kernel.org> In-Reply-To: References: MIME-Version: 1.0 X-Greylist: Sender passed SPF test, Sender IP whitelisted by DNSRBL, ACL 216 matched, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Mon, 22 Apr 2019 13:28:16 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Mon, 22 Apr 2019 13:28:16 +0000 (UTC) for IP:'198.137.202.133' DOMAIN:'bombadil.infradead.org' HELO:'bombadil.infradead.org' FROM:'mchehab@bombadil.infradead.org' RCPT:'' X-RedHat-Spam-Score: -2.298 (DKIM_SIGNED, DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS, LOTS_OF_MONEY, RCVD_IN_DNSWL_MED) 198.137.202.133 bombadil.infradead.org 198.137.202.133 bombadil.infradead.org X-Scanned-By: MIMEDefang 2.78 on 10.5.110.38 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: dm-devel@redhat.com X-Mailman-Approved-At: Tue, 23 Apr 2019 06:28:28 -0400 Cc: Mike Snitzer , Jonathan Corbet , linux-kernel@vger.kernel.org, Mauro Carvalho Chehab , linux-raid@vger.kernel.org, dm-devel@redhat.com, Mauro Carvalho Chehab , Shaohua Li , Alasdair Kergon Subject: [dm-devel] [PATCH v2 11/79] docs: convert docs to ReST and rename to *.rst X-BeenThere: dm-devel@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: device-mapper development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dm-devel-bounces@redhat.com Errors-To: dm-devel-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.49]); Tue, 23 Apr 2019 10:29:37 +0000 (UTC) X-Virus-Scanned: ClamAV using ClamSMTP The conversion is actually: - add blank lines and identation in order to identify paragraphs; - fix tables markups; - add some lists markups; - mark literal blocks; - adjust title markups. At its new index.rst, let's add a :orphan: while this is not linked to the main index.rst file, in order to avoid build warnings. Signed-off-by: Mauro Carvalho Chehab --- ...{cache-policies.txt => cache-policies.rst} | 24 +- .../device-mapper/{cache.txt => cache.rst} | 206 +++++++++------- .../device-mapper/{delay.txt => delay.rst} | 29 ++- .../{dm-crypt.txt => dm-crypt.rst} | 57 +++-- .../{dm-flakey.txt => dm-flakey.rst} | 45 ++-- .../{dm-init.txt => dm-init.rst} | 75 +++--- .../{dm-integrity.txt => dm-integrity.rst} | 55 +++-- .../device-mapper/{dm-io.txt => dm-io.rst} | 14 +- .../device-mapper/{dm-log.txt => dm-log.rst} | 5 +- ...m-queue-length.txt => dm-queue-length.rst} | 25 +- .../{dm-raid.txt => dm-raid.rst} | 225 +++++++++++------- ...m-service-time.txt => dm-service-time.rst} | 68 +++--- Documentation/device-mapper/dm-uevent.rst | 110 +++++++++ Documentation/device-mapper/dm-uevent.txt | 97 -------- .../{dm-zoned.txt => dm-zoned.rst} | 10 +- .../device-mapper/{era.txt => era.rst} | 36 +-- Documentation/device-mapper/index.rst | 44 ++++ .../device-mapper/{kcopyd.txt => kcopyd.rst} | 10 +- Documentation/device-mapper/linear.rst | 63 +++++ Documentation/device-mapper/linear.txt | 61 ----- .../{log-writes.txt => log-writes.rst} | 91 +++---- ...ersistent-data.txt => persistent-data.rst} | 4 + .../{snapshot.txt => snapshot.rst} | 116 ++++----- .../{statistics.txt => statistics.rst} | 62 ++--- Documentation/device-mapper/striped.rst | 61 +++++ Documentation/device-mapper/striped.txt | 57 ----- .../device-mapper/{switch.txt => switch.rst} | 47 ++-- ...provisioning.txt => thin-provisioning.rst} | 68 ++++-- .../{unstriped.txt => unstriped.rst} | 111 +++++---- .../device-mapper/{verity.txt => verity.rst} | 20 +- .../{writecache.txt => writecache.rst} | 13 +- .../device-mapper/{zero.txt => zero.rst} | 14 +- .../filesystems/ubifs-authentication.md | 4 +- drivers/md/Kconfig | 2 +- drivers/md/dm-init.c | 2 +- drivers/md/dm-raid.c | 2 +- 36 files changed, 1130 insertions(+), 803 deletions(-) rename Documentation/device-mapper/{cache-policies.txt => cache-policies.rst} (94%) rename Documentation/device-mapper/{cache.txt => cache.rst} (61%) rename Documentation/device-mapper/{delay.txt => delay.rst} (53%) rename Documentation/device-mapper/{dm-crypt.txt => dm-crypt.rst} (87%) rename Documentation/device-mapper/{dm-flakey.txt => dm-flakey.rst} (60%) rename Documentation/device-mapper/{dm-init.txt => dm-init.rst} (68%) rename Documentation/device-mapper/{dm-integrity.txt => dm-integrity.rst} (90%) rename Documentation/device-mapper/{dm-io.txt => dm-io.rst} (92%) rename Documentation/device-mapper/{dm-log.txt => dm-log.rst} (90%) rename Documentation/device-mapper/{dm-queue-length.txt => dm-queue-length.rst} (76%) rename Documentation/device-mapper/{dm-raid.txt => dm-raid.rst} (71%) rename Documentation/device-mapper/{dm-service-time.txt => dm-service-time.rst} (60%) create mode 100644 Documentation/device-mapper/dm-uevent.rst delete mode 100644 Documentation/device-mapper/dm-uevent.txt rename Documentation/device-mapper/{dm-zoned.txt => dm-zoned.rst} (97%) rename Documentation/device-mapper/{era.txt => era.rst} (70%) create mode 100644 Documentation/device-mapper/index.rst rename Documentation/device-mapper/{kcopyd.txt => kcopyd.rst} (93%) create mode 100644 Documentation/device-mapper/linear.rst delete mode 100644 Documentation/device-mapper/linear.txt rename Documentation/device-mapper/{log-writes.txt => log-writes.rst} (61%) rename Documentation/device-mapper/{persistent-data.txt => persistent-data.rst} (98%) rename Documentation/device-mapper/{snapshot.txt => snapshot.rst} (62%) rename Documentation/device-mapper/{statistics.txt => statistics.rst} (87%) create mode 100644 Documentation/device-mapper/striped.rst delete mode 100644 Documentation/device-mapper/striped.txt rename Documentation/device-mapper/{switch.txt => switch.rst} (84%) rename Documentation/device-mapper/{thin-provisioning.txt => thin-provisioning.rst} (92%) rename Documentation/device-mapper/{unstriped.txt => unstriped.rst} (60%) rename Documentation/device-mapper/{verity.txt => verity.rst} (98%) rename Documentation/device-mapper/{writecache.txt => writecache.rst} (96%) rename Documentation/device-mapper/{zero.txt => zero.rst} (83%) diff --git a/Documentation/device-mapper/cache-policies.txt b/Documentation/device-mapper/cache-policies.rst similarity index 94% rename from Documentation/device-mapper/cache-policies.txt rename to Documentation/device-mapper/cache-policies.rst index 86786d87d9a8..b17fe352fc41 100644 --- a/Documentation/device-mapper/cache-policies.txt +++ b/Documentation/device-mapper/cache-policies.rst @@ -1,3 +1,4 @@ +============================= Guidance for writing policies ============================= @@ -30,7 +31,7 @@ multiqueue (mq) This policy is now an alias for smq (see below). -The following tunables are accepted, but have no effect: +The following tunables are accepted, but have no effect:: 'sequential_threshold <#nr_sequential_ios>' 'random_threshold <#nr_random_ios>' @@ -56,7 +57,9 @@ mq policy's hints to be dropped. Also, performance of the cache may degrade slightly until smq recalculates the origin device's hotspots that should be cached. -Memory usage: +Memory usage +^^^^^^^^^^^^ + The mq policy used a lot of memory; 88 bytes per cache block on a 64 bit machine. @@ -69,7 +72,9 @@ cache block). All this means smq uses ~25bytes per cache block. Still a lot of memory, but a substantial improvement nontheless. -Level balancing: +Level balancing +^^^^^^^^^^^^^^^ + mq placed entries in different levels of the multiqueue structures based on their hit count (~ln(hit count)). This meant the bottom levels generally had the most entries, and the top ones had very @@ -94,7 +99,9 @@ is used to decide which blocks to promote. If the hotspot queue is performing badly then it starts moving entries more quickly between levels. This lets it adapt to new IO patterns very quickly. -Performance: +Performance +^^^^^^^^^^^ + Testing smq shows substantially better performance than mq. cleaner @@ -105,16 +112,19 @@ The cleaner writes back all dirty blocks in a cache to decommission it. Examples ======== -The syntax for a table is: +The syntax for a table is:: + cache <#feature_args> []* <#policy_args> []* -The syntax to send a message using the dmsetup command is: +The syntax to send a message using the dmsetup command is:: + dmsetup message 0 sequential_threshold 1024 dmsetup message 0 random_threshold 8 -Using dmsetup: +Using dmsetup:: + dmsetup create blah --table "0 268435456 cache /dev/sdb /dev/sdc \ /dev/sdd 512 0 mq 4 sequential_threshold 1024 random_threshold 8" creates a 128GB large mapped device named 'blah' with the diff --git a/Documentation/device-mapper/cache.txt b/Documentation/device-mapper/cache.rst similarity index 61% rename from Documentation/device-mapper/cache.txt rename to Documentation/device-mapper/cache.rst index 8ae1cf8e94da..f15e5254d05b 100644 --- a/Documentation/device-mapper/cache.txt +++ b/Documentation/device-mapper/cache.rst @@ -1,3 +1,7 @@ +===== +Cache +===== + Introduction ============ @@ -24,10 +28,13 @@ scenarios (eg. a vm image server). Glossary ======== - Migration - Movement of the primary copy of a logical block from one + Migration + Movement of the primary copy of a logical block from one device to the other. - Promotion - Migration from slow device to fast device. - Demotion - Migration from fast device to slow device. + Promotion + Migration from slow device to fast device. + Demotion + Migration from fast device to slow device. The origin device always contains a copy of the logical block, which may be out of date or kept in sync with the copy on the cache device @@ -169,45 +176,53 @@ Target interface Constructor ----------- - cache - <#feature args> []* - <#policy args> [policy args]* + :: - metadata dev : fast device holding the persistent metadata - cache dev : fast device holding cached data blocks - origin dev : slow device holding original data blocks - block size : cache unit size in sectors + cache + <#feature args> []* + <#policy args> [policy args]* - #feature args : number of feature arguments passed - feature args : writethrough or passthrough (The default is writeback.) + ================ ======================================================= + metadata dev fast device holding the persistent metadata + cache dev fast device holding cached data blocks + origin dev slow device holding original data blocks + block size cache unit size in sectors - policy : the replacement policy to use - #policy args : an even number of arguments corresponding to - key/value pairs passed to the policy - policy args : key/value pairs passed to the policy - E.g. 'sequential_threshold 1024' - See cache-policies.txt for details. + #feature args number of feature arguments passed + feature args writethrough or passthrough (The default is writeback.) + + policy the replacement policy to use + #policy args an even number of arguments corresponding to + key/value pairs passed to the policy + policy args key/value pairs passed to the policy + E.g. 'sequential_threshold 1024' + See cache-policies.txt for details. + ================ ======================================================= Optional feature arguments are: - writethrough : write through caching that prohibits cache block - content from being different from origin block content. - Without this argument, the default behaviour is to write - back cache block contents later for performance reasons, - so they may differ from the corresponding origin blocks. - passthrough : a degraded mode useful for various cache coherency - situations (e.g., rolling back snapshots of - underlying storage). Reads and writes always go to - the origin. If a write goes to a cached origin - block, then the cache block is invalidated. - To enable passthrough mode the cache must be clean. - metadata2 : use version 2 of the metadata. This stores the dirty bits - in a separate btree, which improves speed of shutting - down the cache. + ==================== ======================================================== + writethrough write through caching that prohibits cache block + content from being different from origin block content. + Without this argument, the default behaviour is to write + back cache block contents later for performance reasons, + so they may differ from the corresponding origin blocks. - no_discard_passdown : disable passing down discards from the cache - to the origin's data device. + passthrough a degraded mode useful for various cache coherency + situations (e.g., rolling back snapshots of + underlying storage). Reads and writes always go to + the origin. If a write goes to a cached origin + block, then the cache block is invalidated. + To enable passthrough mode the cache must be clean. + + metadata2 use version 2 of the metadata. This stores the dirty + bits in a separate btree, which improves speed of + shutting down the cache. + + no_discard_passdown disable passing down discards from the cache + to the origin's data device. + ==================== ======================================================== A policy called 'default' is always registered. This is an alias for the policy we currently think is giving best all round performance. @@ -218,54 +233,61 @@ the characteristics of a specific policy, always request it by name. Status ------ - <#used metadata blocks>/<#total metadata blocks> - <#used cache blocks>/<#total cache blocks> -<#read hits> <#read misses> <#write hits> <#write misses> -<#demotions> <#promotions> <#dirty> <#features> * -<#core args> * <#policy args> * - +:: -metadata block size : Fixed block size for each metadata block in - sectors -#used metadata blocks : Number of metadata blocks used -#total metadata blocks : Total number of metadata blocks -cache block size : Configurable block size for the cache device - in sectors -#used cache blocks : Number of blocks resident in the cache -#total cache blocks : Total number of cache blocks -#read hits : Number of times a READ bio has been mapped - to the cache -#read misses : Number of times a READ bio has been mapped - to the origin -#write hits : Number of times a WRITE bio has been mapped - to the cache -#write misses : Number of times a WRITE bio has been - mapped to the origin -#demotions : Number of times a block has been removed - from the cache -#promotions : Number of times a block has been moved to - the cache -#dirty : Number of blocks in the cache that differ - from the origin -#feature args : Number of feature args to follow -feature args : 'writethrough' (optional) -#core args : Number of core arguments (must be even) -core args : Key/value pairs for tuning the core - e.g. migration_threshold -policy name : Name of the policy -#policy args : Number of policy arguments to follow (must be even) -policy args : Key/value pairs e.g. sequential_threshold -cache metadata mode : ro if read-only, rw if read-write - In serious cases where even a read-only mode is deemed unsafe - no further I/O will be permitted and the status will just - contain the string 'Fail'. The userspace recovery tools - should then be used. -needs_check : 'needs_check' if set, '-' if not set - A metadata operation has failed, resulting in the needs_check - flag being set in the metadata's superblock. The metadata - device must be deactivated and checked/repaired before the - cache can be made fully operational again. '-' indicates - needs_check is not set. + <#used metadata blocks>/<#total metadata blocks> + <#used cache blocks>/<#total cache blocks> + <#read hits> <#read misses> <#write hits> <#write misses> + <#demotions> <#promotions> <#dirty> <#features> * + <#core args> * <#policy args> * + + + +========================= ===================================================== +metadata block size Fixed block size for each metadata block in + sectors +#used metadata blocks Number of metadata blocks used +#total metadata blocks Total number of metadata blocks +cache block size Configurable block size for the cache device + in sectors +#used cache blocks Number of blocks resident in the cache +#total cache blocks Total number of cache blocks +#read hits Number of times a READ bio has been mapped + to the cache +#read misses Number of times a READ bio has been mapped + to the origin +#write hits Number of times a WRITE bio has been mapped + to the cache +#write misses Number of times a WRITE bio has been + mapped to the origin +#demotions Number of times a block has been removed + from the cache +#promotions Number of times a block has been moved to + the cache +#dirty Number of blocks in the cache that differ + from the origin +#feature args Number of feature args to follow +feature args 'writethrough' (optional) +#core args Number of core arguments (must be even) +core args Key/value pairs for tuning the core + e.g. migration_threshold +policy name Name of the policy +#policy args Number of policy arguments to follow (must be even) +policy args Key/value pairs e.g. sequential_threshold +cache metadata mode ro if read-only, rw if read-write + + In serious cases where even a read-only mode is + deemed unsafe no further I/O will be permitted and + the status will just contain the string 'Fail'. + The userspace recovery tools should then be used. +needs_check 'needs_check' if set, '-' if not set + A metadata operation has failed, resulting in the + needs_check flag being set in the metadata's + superblock. The metadata device must be + deactivated and checked/repaired before the + cache can be made fully operational again. + '-' indicates needs_check is not set. +========================= ===================================================== Messages -------- @@ -274,11 +296,12 @@ Policies will have different tunables, specific to each one, so we need a generic way of getting and setting these. Device-mapper messages are used. (A sysfs interface would also be possible.) -The message format is: +The message format is:: -E.g. +E.g.:: + dmsetup message my_cache 0 sequential_threshold 1024 @@ -290,11 +313,12 @@ of values from 5 to 9. Each cblock must be expressed as a decimal value, in the future a variant message that takes cblock ranges expressed in hexadecimal may be needed to better support efficient invalidation of larger caches. The cache must be in passthrough mode -when invalidate_cblocks is used. +when invalidate_cblocks is used:: invalidate_cblocks [|-]* -E.g. +E.g.:: + dmsetup message my_cache 0 invalidate_cblocks 2345 3456-4567 5678-6789 Examples @@ -304,8 +328,10 @@ The test suite can be found here: https://github.com/jthornber/device-mapper-test-suite -dmsetup create my_cache --table '0 41943040 cache /dev/mapper/metadata \ - /dev/mapper/ssd /dev/mapper/origin 512 1 writeback default 0' -dmsetup create my_cache --table '0 41943040 cache /dev/mapper/metadata \ - /dev/mapper/ssd /dev/mapper/origin 1024 1 writeback \ - mq 4 sequential_threshold 1024 random_threshold 8' +:: + + dmsetup create my_cache --table '0 41943040 cache /dev/mapper/metadata \ + /dev/mapper/ssd /dev/mapper/origin 512 1 writeback default 0' + dmsetup create my_cache --table '0 41943040 cache /dev/mapper/metadata \ + /dev/mapper/ssd /dev/mapper/origin 1024 1 writeback \ + mq 4 sequential_threshold 1024 random_threshold 8' diff --git a/Documentation/device-mapper/delay.txt b/Documentation/device-mapper/delay.rst similarity index 53% rename from Documentation/device-mapper/delay.txt rename to Documentation/device-mapper/delay.rst index 6426c45273cb..917ba8c33359 100644 --- a/Documentation/device-mapper/delay.txt +++ b/Documentation/device-mapper/delay.rst @@ -1,10 +1,12 @@ +======== dm-delay ======== Device-Mapper's "delay" target delays reads and/or writes and maps them to different devices. -Parameters: +Parameters:: + [ [ ]] @@ -14,15 +16,16 @@ Delays are specified in milliseconds. Example scripts =============== -[[ -#!/bin/sh -# Create device delaying rw operation for 500ms -echo "0 `blockdev --getsz $1` delay $1 0 500" | dmsetup create delayed -]] - -[[ -#!/bin/sh -# Create device delaying only write operation for 500ms and -# splitting reads and writes to different devices $1 $2 -echo "0 `blockdev --getsz $1` delay $1 0 0 $2 0 500" | dmsetup create delayed -]] + +:: + + #!/bin/sh + # Create device delaying rw operation for 500ms + echo "0 `blockdev --getsz $1` delay $1 0 500" | dmsetup create delayed + +:: + + #!/bin/sh + # Create device delaying only write operation for 500ms and + # splitting reads and writes to different devices $1 $2 + echo "0 `blockdev --getsz $1` delay $1 0 0 $2 0 500" | dmsetup create delayed diff --git a/Documentation/device-mapper/dm-crypt.txt b/Documentation/device-mapper/dm-crypt.rst similarity index 87% rename from Documentation/device-mapper/dm-crypt.txt rename to Documentation/device-mapper/dm-crypt.rst index 3b3e1de21c9c..8f4a3f889d43 100644 --- a/Documentation/device-mapper/dm-crypt.txt +++ b/Documentation/device-mapper/dm-crypt.rst @@ -1,5 +1,6 @@ +======== dm-crypt -========= +======== Device-Mapper's "crypt" target provides transparent encryption of block devices using the kernel crypto API. @@ -7,15 +8,20 @@ using the kernel crypto API. For a more detailed description of supported parameters see: https://gitlab.com/cryptsetup/cryptsetup/wikis/DMCrypt -Parameters: \ +Parameters:: + + \ [<#opt_params> ] Encryption cipher, encryption mode and Initial Vector (IV) generator. - The cipher specifications format is: + The cipher specifications format is:: + cipher[:keycount]-chainmode-ivmode[:ivopts] - Examples: + + Examples:: + aes-cbc-essiv:sha256 aes-xts-plain64 serpent-xts-plain64 @@ -25,12 +31,17 @@ Parameters: \ as for the first format type. This format is mainly used for specification of authenticated modes. - The crypto API cipher specifications format is: + The crypto API cipher specifications format is:: + capi:cipher_api_spec-ivmode[:ivopts] - Examples: + + Examples:: + capi:cbc(aes)-essiv:sha256 capi:xts(aes)-plain64 - Examples of authenticated modes: + + Examples of authenticated modes:: + capi:gcm(aes)-random capi:authenc(hmac(sha256),xts(aes))-random capi:rfc7539(chacha20,poly1305)-random @@ -142,21 +153,21 @@ LUKS (Linux Unified Key Setup) is now the preferred way to set up disk encryption with dm-crypt using the 'cryptsetup' utility, see https://gitlab.com/cryptsetup/cryptsetup -[[ -#!/bin/sh -# Create a crypt device using dmsetup -dmsetup create crypt1 --table "0 `blockdev --getsz $1` crypt aes-cbc-essiv:sha256 babebabebabebabebabebabebabebabe 0 $1 0" -]] +:: -[[ -#!/bin/sh -# Create a crypt device using dmsetup when encryption key is stored in keyring service -dmsetup create crypt2 --table "0 `blockdev --getsize $1` crypt aes-cbc-essiv:sha256 :32:logon:my_prefix:my_key 0 $1 0" -]] + #!/bin/sh + # Create a crypt device using dmsetup + dmsetup create crypt1 --table "0 `blockdev --getsz $1` crypt aes-cbc-essiv:sha256 babebabebabebabebabebabebabebabe 0 $1 0" -[[ -#!/bin/sh -# Create a crypt device using cryptsetup and LUKS header with default cipher -cryptsetup luksFormat $1 -cryptsetup luksOpen $1 crypt1 -]] +:: + + #!/bin/sh + # Create a crypt device using dmsetup when encryption key is stored in keyring service + dmsetup create crypt2 --table "0 `blockdev --getsize $1` crypt aes-cbc-essiv:sha256 :32:logon:my_prefix:my_key 0 $1 0" + +:: + + #!/bin/sh + # Create a crypt device using cryptsetup and LUKS header with default cipher + cryptsetup luksFormat $1 + cryptsetup luksOpen $1 crypt1 diff --git a/Documentation/device-mapper/dm-flakey.txt b/Documentation/device-mapper/dm-flakey.rst similarity index 60% rename from Documentation/device-mapper/dm-flakey.txt rename to Documentation/device-mapper/dm-flakey.rst index 9f0e247d0877..86138735879d 100644 --- a/Documentation/device-mapper/dm-flakey.txt +++ b/Documentation/device-mapper/dm-flakey.rst @@ -1,3 +1,4 @@ +========= dm-flakey ========= @@ -15,17 +16,26 @@ underlying devices. Table parameters ---------------- + +:: + \ [ []] Mandatory parameters: - : Full pathname to the underlying block-device, or a - "major:minor" device-number. - : Starting sector within the device. - : Number of seconds device is available. - : Number of seconds device returns errors. + + : + Full pathname to the underlying block-device, or a + "major:minor" device-number. + : + Starting sector within the device. + : + Number of seconds device is available. + : + Number of seconds device returns errors. Optional feature parameters: + If no feature parameters are present, during the periods of unreliability, all I/O returns errors. @@ -41,17 +51,24 @@ Optional feature parameters: During , replace of the data of each matching bio with . - : The offset of the byte to replace. - Counting starts at 1, to replace the first byte. - : Either 'r' to corrupt reads or 'w' to corrupt writes. - 'w' is incompatible with drop_writes. - : The value (from 0-255) to write. - : Perform the replacement only if bio->bi_opf has all the - selected flags set. + : + The offset of the byte to replace. + Counting starts at 1, to replace the first byte. + : + Either 'r' to corrupt reads or 'w' to corrupt writes. + 'w' is incompatible with drop_writes. + : + The value (from 0-255) to write. + : + Perform the replacement only if bio->bi_opf has all the + selected flags set. Examples: + +Replaces the 32nd byte of READ bios with the value 1:: + corrupt_bio_byte 32 r 1 0 - - replaces the 32nd byte of READ bios with the value 1 + +Replaces the 224th byte of REQ_META (=32) bios with the value 0:: corrupt_bio_byte 224 w 0 32 - - replaces the 224th byte of REQ_META (=32) bios with the value 0 diff --git a/Documentation/device-mapper/dm-init.txt b/Documentation/device-mapper/dm-init.rst similarity index 68% rename from Documentation/device-mapper/dm-init.txt rename to Documentation/device-mapper/dm-init.rst index 8464ee7c01b8..a0db2f30030e 100644 --- a/Documentation/device-mapper/dm-init.txt +++ b/Documentation/device-mapper/dm-init.rst @@ -1,5 +1,6 @@ +================================ Early creation of mapped devices -==================================== +================================ It is possible to configure a device-mapper device to act as the root device for your system in two ways. @@ -12,15 +13,17 @@ The second is to create one or more device-mappers using the module parameter The format is specified as a string of data separated by commas and optionally semi-colons, where: + - a comma is used to separate fields like name, uuid, flags and table (specifies one device) - a semi-colon is used to separate devices. -So the format will look like this: +So the format will look like this:: dm-mod.create=,,,,[,
+][;,,,,
[,
+]+] -Where, +Where:: + ::= The device name. ::= xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx | "" ::= The device minor number | "" @@ -29,7 +32,7 @@ Where, ::= "verity" | "linear" | ... (see list below) The dm line should be equivalent to the one used by the dmsetup tool with the ---concise argument. +`--concise` argument. Target types ============ @@ -38,32 +41,34 @@ Not all target types are available as there are serious risks in allowing activation of certain DM targets without first using userspace tools to check the validity of associated metadata. - "cache": constrained, userspace should verify cache device - "crypt": allowed - "delay": allowed - "era": constrained, userspace should verify metadata device - "flakey": constrained, meant for test - "linear": allowed - "log-writes": constrained, userspace should verify metadata device - "mirror": constrained, userspace should verify main/mirror device - "raid": constrained, userspace should verify metadata device - "snapshot": constrained, userspace should verify src/dst device - "snapshot-origin": allowed - "snapshot-merge": constrained, userspace should verify src/dst device - "striped": allowed - "switch": constrained, userspace should verify dev path - "thin": constrained, requires dm target message from userspace - "thin-pool": constrained, requires dm target message from userspace - "verity": allowed - "writecache": constrained, userspace should verify cache device - "zero": constrained, not meant for rootfs +======================= ======================================================= +`cache` constrained, userspace should verify cache device +`crypt` allowed +`delay` allowed +`era` constrained, userspace should verify metadata device +`flakey` constrained, meant for test +`linear` allowed +`log-writes` constrained, userspace should verify metadata device +`mirror` constrained, userspace should verify main/mirror device +`raid` constrained, userspace should verify metadata device +`snapshot` constrained, userspace should verify src/dst device +`snapshot-origin` allowed +`snapshot-merge` constrained, userspace should verify src/dst device +`striped` allowed +`switch` constrained, userspace should verify dev path +`thin` constrained, requires dm target message from userspace +`thin-pool` constrained, requires dm target message from userspace +`verity` allowed +`writecache` constrained, userspace should verify cache device +`zero` constrained, not meant for rootfs +======================= ======================================================= If the target is not listed above, it is constrained by default (not tested). Examples ======== An example of booting to a linear array made up of user-mode linux block -devices: +devices:: dm-mod.create="lroot,,,rw, 0 4096 linear 98:16 0, 4096 4096 linear 98:32 0" root=/dev/dm-0 @@ -71,8 +76,8 @@ This will boot to a rw dm-linear target of 8192 sectors split across two block devices identified by their major:minor numbers. After boot, udev will rename this target to /dev/mapper/lroot (depending on the rules). No uuid was assigned. -An example of multiple device-mappers, with the dm-mod.create="..." contents is shown here -split on multiple lines for readability: +An example of multiple device-mappers, with the dm-mod.create="..." contents +is shown here split on multiple lines for readability:: vroot,,,ro, 0 1740800 verity 254:0 254:0 1740800 sha1 @@ -84,30 +89,36 @@ split on multiple lines for readability: Other examples (per target): -"crypt": +"crypt":: + dm-crypt,,8,ro, 0 1048576 crypt aes-xts-plain64 babebabebabebabebabebabebabebabebabebabebabebabebabebabebabebabe 0 /dev/sda 0 1 allow_discards -"delay": +"delay":: + dm-delay,,4,ro,0 409600 delay /dev/sda1 0 500 -"linear": +"linear":: + dm-linear,,,rw, 0 32768 linear /dev/sda1 0, 32768 1024000 linear /dev/sda2 0, 1056768 204800 linear /dev/sda3 0, 1261568 512000 linear /dev/sda4 0 -"snapshot-origin": +"snapshot-origin":: + dm-snap-orig,,4,ro,0 409600 snapshot-origin 8:2 -"striped": +"striped":: + dm-striped,,4,ro,0 1638400 striped 4 4096 /dev/sda1 0 /dev/sda2 0 /dev/sda3 0 /dev/sda4 0 -"verity": +"verity":: + dm-verity,,4,ro, 0 1638400 verity 1 8:1 8:2 4096 4096 204800 1 sha256 fb1a5a0f00deb908d8b53cb270858975e76cf64105d412ce764225d53b8f3cfd diff --git a/Documentation/device-mapper/dm-integrity.txt b/Documentation/device-mapper/dm-integrity.rst similarity index 90% rename from Documentation/device-mapper/dm-integrity.txt rename to Documentation/device-mapper/dm-integrity.rst index 297251b0d2d5..4fa8d2939d46 100644 --- a/Documentation/device-mapper/dm-integrity.txt +++ b/Documentation/device-mapper/dm-integrity.rst @@ -1,3 +1,7 @@ +============ +dm-integrity +============ + The dm-integrity target emulates a block device that has additional per-sector tags that can be used for storing integrity information. @@ -28,15 +32,16 @@ zeroes. If the superblock is neither valid nor zeroed, the dm-integrity target can't be loaded. To use the target for the first time: + 1. overwrite the superblock with zeroes 2. load the dm-integrity target with one-sector size, the kernel driver - will format the device + will format the device 3. unload the dm-integrity target 4. read the "provided_data_sectors" value from the superblock 5. load the dm-integrity target with the the target size - "provided_data_sectors" + "provided_data_sectors" 6. if you want to use dm-integrity with dm-crypt, load the dm-crypt target - with the size "provided_data_sectors" + with the size "provided_data_sectors" Target arguments: @@ -44,22 +49,26 @@ Target arguments: 1. the underlying block device 2. the number of reserved sector at the beginning of the device - the - dm-integrity won't read of write these sectors + dm-integrity won't read of write these sectors 3. the size of the integrity tag (if "-" is used, the size is taken from - the internal-hash algorithm) + the internal-hash algorithm) 4. mode: - D - direct writes (without journal) - in this mode, journaling is + + D - direct writes (without journal) + in this mode, journaling is not used and data sectors and integrity tags are written separately. In case of crash, it is possible that the data and integrity tag doesn't match. - J - journaled writes - data and integrity tags are written to the + J - journaled writes + data and integrity tags are written to the journal and atomicity is guaranteed. In case of crash, either both data and tag or none of them are written. The journaled mode degrades write throughput twice because the data have to be written twice. - R - recovery mode - in this mode, journal is not replayed, + R - recovery mode + in this mode, journal is not replayed, checksums are not checked and writes to the device are not allowed. This mode is useful for data recovery if the device cannot be activated in any of the other standard @@ -154,9 +163,12 @@ and the reloaded target would be non-functional. The layout of the formatted block device: -* reserved sectors (they are not used by this target, they can be used for - storing LUKS metadata or for other purpose), the size of the reserved - area is specified in the target arguments + +* reserved sectors + (they are not used by this target, they can be used for + storing LUKS metadata or for other purpose), the size of the reserved + area is specified in the target arguments + * superblock (4kiB) * magic string - identifies that the device was formatted * version @@ -168,34 +180,47 @@ The layout of the formatted block device: metadata and padding). The user of this target should not send bios that access data beyond the "provided data sectors" limit. * flags - a flag is set if journal_mac is used + * journal The journal is divided into sections, each section contains: + * metadata area (4kiB), it contains journal entries - every journal entry contains: + + - every journal entry contains: + * logical sector (specifies where the data and tag should be written) * last 8 bytes of data * integrity tag (the size is specified in the superblock) - every metadata sector ends with + + - every metadata sector ends with + * mac (8-bytes), all the macs in 8 metadata sectors form a 64-byte value. It is used to store hmac of sector numbers in the journal section, to protect against a possibility that the attacker tampers with sector numbers in the journal. * commit id + * data area (the size is variable; it depends on how many journal entries fit into the metadata area) - every sector in the data area contains: + + - every sector in the data area contains: + * data (504 bytes of data, the last 8 bytes are stored in the journal entry) * commit id + To test if the whole journal section was written correctly, every 512-byte sector of the journal ends with 8-byte commit id. If the commit id matches on all sectors in a journal section, then it is assumed that the section was written correctly. If the commit id doesn't match, the section was written partially and it should not be replayed. -* one or more runs of interleaved tags and data. Each run contains: + +* one or more runs of interleaved tags and data. + Each run contains: + * tag area - it contains integrity tags. There is one tag for each sector in the data area * data area - it contains data sectors. The number of data sectors diff --git a/Documentation/device-mapper/dm-io.txt b/Documentation/device-mapper/dm-io.rst similarity index 92% rename from Documentation/device-mapper/dm-io.txt rename to Documentation/device-mapper/dm-io.rst index 3b5d9a52cdcf..d2492917a1f5 100644 --- a/Documentation/device-mapper/dm-io.txt +++ b/Documentation/device-mapper/dm-io.rst @@ -1,3 +1,4 @@ +===== dm-io ===== @@ -7,7 +8,7 @@ version. The user must set up an io_region structure to describe the desired location of the I/O. Each io_region indicates a block-device along with the starting -sector and size of the region. +sector and size of the region:: struct io_region { struct block_device *bdev; @@ -19,7 +20,7 @@ Dm-io can read from one io_region or write to one or more io_regions. Writes to multiple regions are specified by an array of io_region structures. The first I/O service type takes a list of memory pages as the data buffer for -the I/O, along with an offset into the first page. +the I/O, along with an offset into the first page:: struct page_list { struct page_list *next; @@ -35,7 +36,7 @@ the I/O, along with an offset into the first page. The second I/O service type takes an array of bio vectors as the data buffer for the I/O. This service can be handy if the caller has a pre-assembled bio, -but wants to direct different portions of the bio to different devices. +but wants to direct different portions of the bio to different devices:: int dm_io_sync_bvec(unsigned int num_regions, struct io_region *where, int rw, struct bio_vec *bvec, @@ -47,7 +48,7 @@ but wants to direct different portions of the bio to different devices. The third I/O service type takes a pointer to a vmalloc'd memory buffer as the data buffer for the I/O. This service can be handy if the caller needs to do I/O to a large region but doesn't want to allocate a large number of individual -memory pages. +memory pages:: int dm_io_sync_vm(unsigned int num_regions, struct io_region *where, int rw, void *data, unsigned long *error_bits); @@ -55,11 +56,11 @@ memory pages. void *data, io_notify_fn fn, void *context); Callers of the asynchronous I/O services must include the name of a completion -callback routine and a pointer to some context data for the I/O. +callback routine and a pointer to some context data for the I/O:: typedef void (*io_notify_fn)(unsigned long error, void *context); -The "error" parameter in this callback, as well as the "*error" parameter in +The "error" parameter in this callback, as well as the `*error` parameter in all of the synchronous versions, is a bitset (instead of a simple error value). In the case of an write-I/O to multiple regions, this bitset allows dm-io to indicate success or failure on each individual region. @@ -72,4 +73,3 @@ always available in order to avoid unnecessary waiting while performing I/O. When the user is finished using the dm-io services, they should call dm_io_put() and specify the same number of pages that were given on the dm_io_get() call. - diff --git a/Documentation/device-mapper/dm-log.txt b/Documentation/device-mapper/dm-log.rst similarity index 90% rename from Documentation/device-mapper/dm-log.txt rename to Documentation/device-mapper/dm-log.rst index c155ac569c44..ba4fce39bc27 100644 --- a/Documentation/device-mapper/dm-log.txt +++ b/Documentation/device-mapper/dm-log.rst @@ -1,3 +1,4 @@ +===================== Device-Mapper Logging ===================== The device-mapper logging code is used by some of the device-mapper @@ -16,11 +17,13 @@ dm_dirty_log_type in include/linux/dm-dirty-log.h). Various different logging implementations are available and provide different capabilities. The list includes: +============== ============================================================== Type Files -==== ===== +============== ============================================================== disk drivers/md/dm-log.c core drivers/md/dm-log.c userspace drivers/md/dm-log-userspace* include/linux/dm-log-userspace.h +============== ============================================================== The "disk" log type ------------------- diff --git a/Documentation/device-mapper/dm-queue-length.txt b/Documentation/device-mapper/dm-queue-length.rst similarity index 76% rename from Documentation/device-mapper/dm-queue-length.txt rename to Documentation/device-mapper/dm-queue-length.rst index f4db2562175c..d8e381c1cb02 100644 --- a/Documentation/device-mapper/dm-queue-length.txt +++ b/Documentation/device-mapper/dm-queue-length.rst @@ -1,3 +1,4 @@ +=============== dm-queue-length =============== @@ -6,12 +7,18 @@ which selects a path with the least number of in-flight I/Os. The path selector name is 'queue-length'. Table parameters for each path: [] + +:: + : The number of I/Os to dispatch using the selected path before switching to the next path. If not given, internal default is used. To check the default value, see the activated table. Status for each path: + +:: + : 'A' if the path is active, 'F' if the path is failed. : The number of path failures. : The number of in-flight I/Os on the path. @@ -29,11 +36,13 @@ Examples ======== In case that 2 paths (sda and sdb) are used with repeat_count == 128. -# echo "0 10 multipath 0 0 1 1 queue-length 0 2 1 8:0 128 8:16 128" \ - dmsetup create test -# -# dmsetup table -test: 0 10 multipath 0 0 1 1 queue-length 0 2 1 8:0 128 8:16 128 -# -# dmsetup status -test: 0 10 multipath 2 0 0 0 1 1 E 0 2 1 8:0 A 0 0 8:16 A 0 0 +:: + + # echo "0 10 multipath 0 0 1 1 queue-length 0 2 1 8:0 128 8:16 128" \ + dmsetup create test + # + # dmsetup table + test: 0 10 multipath 0 0 1 1 queue-length 0 2 1 8:0 128 8:16 128 + # + # dmsetup status + test: 0 10 multipath 2 0 0 0 1 1 E 0 2 1 8:0 A 0 0 8:16 A 0 0 diff --git a/Documentation/device-mapper/dm-raid.txt b/Documentation/device-mapper/dm-raid.rst similarity index 71% rename from Documentation/device-mapper/dm-raid.txt rename to Documentation/device-mapper/dm-raid.rst index 2355bef14653..2fe255b130fb 100644 --- a/Documentation/device-mapper/dm-raid.txt +++ b/Documentation/device-mapper/dm-raid.rst @@ -1,3 +1,4 @@ +======= dm-raid ======= @@ -8,49 +9,66 @@ interface. Mapping Table Interface ----------------------- -The target is named "raid" and it accepts the following parameters: +The target is named "raid" and it accepts the following parameters:: <#raid_params> \ <#raid_devs> [.. ] : + + ============= =============================================================== raid0 RAID0 striping (no resilience) raid1 RAID1 mirroring raid4 RAID4 with dedicated last parity disk raid5_n RAID5 with dedicated last parity disk supporting takeover Same as raid4 - -Transitory layout + + - Transitory layout raid5_la RAID5 left asymmetric + - rotating parity 0 with data continuation raid5_ra RAID5 right asymmetric + - rotating parity N with data continuation raid5_ls RAID5 left symmetric + - rotating parity 0 with data restart raid5_rs RAID5 right symmetric + - rotating parity N with data restart raid6_zr RAID6 zero restart + - rotating parity zero (left-to-right) with data restart raid6_nr RAID6 N restart + - rotating parity N (right-to-left) with data restart raid6_nc RAID6 N continue + - rotating parity N (right-to-left) with data continuation raid6_n_6 RAID6 with dedicate parity disks + - parity and Q-syndrome on the last 2 disks; layout for takeover from/to raid4/raid5_n raid6_la_6 Same as "raid_la" plus dedicated last Q-syndrome disk + - layout for takeover from raid5_la from/to raid6 raid6_ra_6 Same as "raid5_ra" dedicated last Q-syndrome disk + - layout for takeover from raid5_ra from/to raid6 raid6_ls_6 Same as "raid5_ls" dedicated last Q-syndrome disk + - layout for takeover from raid5_ls from/to raid6 raid6_rs_6 Same as "raid5_rs" dedicated last Q-syndrome disk + - layout for takeover from raid5_rs from/to raid6 raid10 Various RAID10 inspired algorithms chosen by additional params (see raid10_format and raid10_copies below) + - RAID10: Striped Mirrors (aka 'Striping on top of mirrors') - RAID1E: Integrated Adjacent Stripe Mirroring - RAID1E: Integrated Offset Stripe Mirroring - - and other similar RAID10 variants + - and other similar RAID10 variants + ============= =============================================================== Reference: Chapter 4 of http://www.snia.org/sites/default/files/SNIA_DDF_Technical_Position_v2.0.pdf @@ -58,33 +76,41 @@ The target is named "raid" and it accepts the following parameters: <#raid_params>: The number of parameters that follow. consists of + Mandatory parameters: - : Chunk size in sectors. This parameter is often known as + : + Chunk size in sectors. This parameter is often known as "stripe size". It is the only mandatory parameter and is placed first. followed by optional parameters (in any order): - [sync|nosync] Force or prevent RAID initialization. + [sync|nosync] + Force or prevent RAID initialization. - [rebuild ] Rebuild drive number 'idx' (first drive is 0). + [rebuild ] + Rebuild drive number 'idx' (first drive is 0). [daemon_sleep ] Interval between runs of the bitmap daemon that clear bits. A longer interval means less bitmap I/O but resyncing after a failure is likely to take longer. - [min_recovery_rate ] Throttle RAID initialization - [max_recovery_rate ] Throttle RAID initialization - [write_mostly ] Mark drive index 'idx' write-mostly. - [max_write_behind ] See '--write-behind=' (man mdadm) - [stripe_cache ] Stripe cache size (RAID 4/5/6 only) + [min_recovery_rate ] + Throttle RAID initialization + [max_recovery_rate ] + Throttle RAID initialization + [write_mostly ] + Mark drive index 'idx' write-mostly. + [max_write_behind ] + See '--write-behind=' (man mdadm) + [stripe_cache ] + Stripe cache size (RAID 4/5/6 only) [region_size ] The region_size multiplied by the number of regions is the logical size of the array. The bitmap records the device synchronisation state for each region. - [raid10_copies <# copies>] - [raid10_format ] + [raid10_copies <# copies>], [raid10_format ] These two options are used to alter the default layout of a RAID10 configuration. The number of copies is can be specified, but the default is 2. There are also three @@ -93,13 +119,17 @@ The target is named "raid" and it accepts the following parameters: respect to mirroring. If these options are left unspecified, or 'raid10_copies 2' and/or 'raid10_format near' are given, then the layouts for 2, 3 and 4 devices are: + + ======== ========== ============== 2 drives 3 drives 4 drives - -------- ---------- -------------- + ======== ========== ============== A1 A1 A1 A1 A2 A1 A1 A2 A2 A2 A2 A2 A3 A3 A3 A3 A4 A4 A3 A3 A4 A4 A5 A5 A5 A6 A6 A4 A4 A5 A6 A6 A7 A7 A8 A8 .. .. .. .. .. .. .. .. .. + ======== ========== ============== + The 2-device layout is equivalent 2-way RAID1. The 4-device layout is what a traditional RAID10 would look like. The 3-device layout is what might be called a 'RAID1E - Integrated @@ -107,8 +137,10 @@ The target is named "raid" and it accepts the following parameters: If 'raid10_copies 2' and 'raid10_format far', then the layouts for 2, 3 and 4 devices are: + + ======== ============ =================== 2 drives 3 drives 4 drives - -------- -------------- -------------------- + ======== ============ =================== A1 A2 A1 A2 A3 A1 A2 A3 A4 A3 A4 A4 A5 A6 A5 A6 A7 A8 A5 A6 A7 A8 A9 A9 A10 A11 A12 @@ -117,11 +149,14 @@ The target is named "raid" and it accepts the following parameters: A4 A3 A6 A4 A5 A6 A5 A8 A7 A6 A5 A9 A7 A8 A10 A9 A12 A11 .. .. .. .. .. .. .. .. .. + ======== ============ =================== If 'raid10_copies 2' and 'raid10_format offset', then the layouts for 2, 3 and 4 devices are: + + ======== ========== ================ 2 drives 3 drives 4 drives - -------- ------------ ----------------- + ======== ========== ================ A1 A2 A1 A2 A3 A1 A2 A3 A4 A2 A1 A3 A1 A2 A2 A1 A4 A3 A3 A4 A4 A5 A6 A5 A6 A7 A8 @@ -129,6 +164,8 @@ The target is named "raid" and it accepts the following parameters: A5 A6 A7 A8 A9 A9 A10 A11 A12 A6 A5 A9 A7 A8 A10 A9 A12 A11 .. .. .. .. .. .. .. .. .. + ======== ========== ================ + Here we see layouts closely akin to 'RAID1E - Integrated Offset Stripe Mirroring'. @@ -190,22 +227,25 @@ The target is named "raid" and it accepts the following parameters: Example Tables -------------- -# RAID4 - 4 data drives, 1 parity (no metadata devices) -# No metadata devices specified to hold superblock/bitmap info -# Chunk size of 1MiB -# (Lines separated for easy reading) -0 1960893648 raid \ - raid4 1 2048 \ - 5 - 8:17 - 8:33 - 8:49 - 8:65 - 8:81 +:: -# RAID4 - 4 data drives, 1 parity (with metadata devices) -# Chunk size of 1MiB, force RAID initialization, -# min recovery rate at 20 kiB/sec/disk + # RAID4 - 4 data drives, 1 parity (no metadata devices) + # No metadata devices specified to hold superblock/bitmap info + # Chunk size of 1MiB + # (Lines separated for easy reading) -0 1960893648 raid \ - raid4 4 2048 sync min_recovery_rate 20 \ - 5 8:17 8:18 8:33 8:34 8:49 8:50 8:65 8:66 8:81 8:82 + 0 1960893648 raid \ + raid4 1 2048 \ + 5 - 8:17 - 8:33 - 8:49 - 8:65 - 8:81 + + # RAID4 - 4 data drives, 1 parity (with metadata devices) + # Chunk size of 1MiB, force RAID initialization, + # min recovery rate at 20 kiB/sec/disk + + 0 1960893648 raid \ + raid4 4 2048 sync min_recovery_rate 20 \ + 5 8:17 8:18 8:33 8:34 8:49 8:50 8:65 8:66 8:81 8:82 Status Output @@ -219,41 +259,58 @@ Arguments that can be repeated are ordered by value. 'dmsetup status' yields information on the state and health of the array. The output is as follows (normally a single line, but expanded here for -clarity): -1: raid \ -2: <#devices> \ -3: +clarity):: + + 1: raid \ + 2: <#devices> \ + 3: Line 1 is the standard output produced by device-mapper. -Line 2 & 3 are produced by the raid target and are best explained by example: + +Line 2 & 3 are produced by the raid target and are best explained by example:: + 0 1960893648 raid raid4 5 AAAAA 2/490221568 init 0 + Here we can see the RAID type is raid4, there are 5 devices - all of which are 'A'live, and the array is 2/490221568 complete with its initial recovery. Here is a fuller description of the individual fields: + + =============== ========================================================= Same as the used to create the array. - One char for each device, indicating: 'A' = alive and - in-sync, 'a' = alive but not in-sync, 'D' = dead/failed. + One char for each device, indicating: + + - 'A' = alive and in-sync + - 'a' = alive but not in-sync + - 'D' = dead/failed. The ratio indicating how much of the array has undergone the process described by 'sync_action'. If the 'sync_action' is "check" or "repair", then the process of "resync" or "recover" can be considered complete. One of the following possible states: - idle - No synchronization action is being performed. - frozen - The current action has been halted. - resync - Array is undergoing its initial synchronization + + idle + - No synchronization action is being performed. + frozen + - The current action has been halted. + resync + - Array is undergoing its initial synchronization or is resynchronizing after an unclean shutdown (possibly aided by a bitmap). - recover - A device in the array is being rebuilt or + recover + - A device in the array is being rebuilt or replaced. - check - A user-initiated full check of the array is + check + - A user-initiated full check of the array is being performed. All blocks are read and checked for consistency. The number of discrepancies found are recorded in . No changes are made to the array by this action. - repair - The same as "check", but discrepancies are + repair + - The same as "check", but discrepancies are corrected. - reshape - The array is undergoing a reshape. + reshape + - The array is undergoing a reshape. The number of discrepancies found between mirror copies in RAID1/10 or wrong parity values found in RAID4/5/6. This value is valid only after a "check" of the array @@ -261,10 +318,11 @@ recovery. Here is a fuller description of the individual fields: The current data offset to the start of the user data on each component device of a raid set (see the respective raid parameter to support out-of-place reshaping). - 'A' - active write-through journal device. - 'a' - active write-back journal device. - 'D' - dead journal device. - '-' - no journal device. + - 'A' - active write-through journal device. + - 'a' - active write-back journal device. + - 'D' - dead journal device. + - '-' - no journal device. + =============== ========================================================= Message Interface @@ -272,12 +330,15 @@ Message Interface The dm-raid target will accept certain actions through the 'message' interface. ('man dmsetup' for more information on the message interface.) These actions include: - "idle" - Halt the current sync action. - "frozen" - Freeze the current sync action. - "resync" - Initiate/continue a resync. - "recover"- Initiate/continue a recover process. - "check" - Initiate a check (i.e. a "scrub") of the array. - "repair" - Initiate a repair of the array. + + ========= ================================================ + "idle" Halt the current sync action. + "frozen" Freeze the current sync action. + "resync" Initiate/continue a resync. + "recover" Initiate/continue a recover process. + "check" Initiate a check (i.e. a "scrub") of the array. + "repair" Initiate a repair of the array. + ========= ================================================ Discard Support @@ -307,48 +368,52 @@ increasingly whitelisted in the kernel and can thus be trusted. For trusted devices, the following dm-raid module parameter can be set to safely enable discard support for RAID 4/5/6: + 'devices_handle_discards_safely' Version History --------------- -1.0.0 Initial version. Support for RAID 4/5/6 -1.1.0 Added support for RAID 1 -1.2.0 Handle creation of arrays that contain failed devices. -1.3.0 Added support for RAID 10 -1.3.1 Allow device replacement/rebuild for RAID 10 -1.3.2 Fix/improve redundancy checking for RAID10 -1.4.0 Non-functional change. Removes arg from mapping function. -1.4.1 RAID10 fix redundancy validation checks (commit 55ebbb5). -1.4.2 Add RAID10 "far" and "offset" algorithm support. -1.5.0 Add message interface to allow manipulation of the sync_action. + +:: + + 1.0.0 Initial version. Support for RAID 4/5/6 + 1.1.0 Added support for RAID 1 + 1.2.0 Handle creation of arrays that contain failed devices. + 1.3.0 Added support for RAID 10 + 1.3.1 Allow device replacement/rebuild for RAID 10 + 1.3.2 Fix/improve redundancy checking for RAID10 + 1.4.0 Non-functional change. Removes arg from mapping function. + 1.4.1 RAID10 fix redundancy validation checks (commit 55ebbb5). + 1.4.2 Add RAID10 "far" and "offset" algorithm support. + 1.5.0 Add message interface to allow manipulation of the sync_action. New status (STATUSTYPE_INFO) fields: sync_action and mismatch_cnt. -1.5.1 Add ability to restore transiently failed devices on resume. -1.5.2 'mismatch_cnt' is zero unless [last_]sync_action is "check". -1.6.0 Add discard support (and devices_handle_discard_safely module param). -1.7.0 Add support for MD RAID0 mappings. -1.8.0 Explicitly check for compatible flags in the superblock metadata + 1.5.1 Add ability to restore transiently failed devices on resume. + 1.5.2 'mismatch_cnt' is zero unless [last_]sync_action is "check". + 1.6.0 Add discard support (and devices_handle_discard_safely module param). + 1.7.0 Add support for MD RAID0 mappings. + 1.8.0 Explicitly check for compatible flags in the superblock metadata and reject to start the raid set if any are set by a newer target version, thus avoiding data corruption on a raid set with a reshape in progress. -1.9.0 Add support for RAID level takeover/reshape/region size + 1.9.0 Add support for RAID level takeover/reshape/region size and set size reduction. -1.9.1 Fix activation of existing RAID 4/10 mapped devices -1.9.2 Don't emit '- -' on the status table line in case the constructor + 1.9.1 Fix activation of existing RAID 4/10 mapped devices + 1.9.2 Don't emit '- -' on the status table line in case the constructor fails reading a superblock. Correctly emit 'maj:min1 maj:min2' and 'D' on the status line. If '- -' is passed into the constructor, emit '- -' on the table line and '-' as the status line health character. -1.10.0 Add support for raid4/5/6 journal device -1.10.1 Fix data corruption on reshape request -1.11.0 Fix table line argument order + 1.10.0 Add support for raid4/5/6 journal device + 1.10.1 Fix data corruption on reshape request + 1.11.0 Fix table line argument order (wrong raid10_copies/raid10_format sequence) -1.11.1 Add raid4/5/6 journal write-back support via journal_mode option -1.12.1 Fix for MD deadlock between mddev_suspend() and md_write_start() available -1.13.0 Fix dev_health status at end of "recover" (was 'a', now 'A') -1.13.1 Fix deadlock caused by early md_stop_writes(). Also fix size an + 1.11.1 Add raid4/5/6 journal write-back support via journal_mode option + 1.12.1 Fix for MD deadlock between mddev_suspend() and md_write_start() available + 1.13.0 Fix dev_health status at end of "recover" (was 'a', now 'A') + 1.13.1 Fix deadlock caused by early md_stop_writes(). Also fix size an state races. -1.13.2 Fix raid redundancy validation and avoid keeping raid set frozen -1.14.0 Fix reshape race on small devices. Fix stripe adding reshape + 1.13.2 Fix raid redundancy validation and avoid keeping raid set frozen + 1.14.0 Fix reshape race on small devices. Fix stripe adding reshape deadlock/potential data corruption. Update superblock when specific devices are requested via rebuild. Fix RAID leg rebuild errors. diff --git a/Documentation/device-mapper/dm-service-time.txt b/Documentation/device-mapper/dm-service-time.rst similarity index 60% rename from Documentation/device-mapper/dm-service-time.txt rename to Documentation/device-mapper/dm-service-time.rst index fb1d4a0cf122..facf277fc13c 100644 --- a/Documentation/device-mapper/dm-service-time.txt +++ b/Documentation/device-mapper/dm-service-time.rst @@ -1,3 +1,4 @@ +=============== dm-service-time =============== @@ -12,25 +13,34 @@ in a path-group, and it can be specified as a table argument. The path selector name is 'service-time'. -Table parameters for each path: [ []] - : The number of I/Os to dispatch using the selected +Table parameters for each path: + + [ []] + : + The number of I/Os to dispatch using the selected path before switching to the next path. If not given, internal default is used. To check the default value, see the activated table. - : The relative throughput value of the path + : + The relative throughput value of the path among all paths in the path-group. The valid range is 0-100. If not given, minimum value '1' is used. If '0' is given, the path isn't selected while other paths having a positive value are available. -Status for each path: \ - - : 'A' if the path is active, 'F' if the path is failed. - : The number of path failures. - : The size of in-flight I/Os on the path. - : The relative throughput value of the path - among all paths in the path-group. +Status for each path: + + + : + 'A' if the path is active, 'F' if the path is failed. + : + The number of path failures. + : + The size of in-flight I/Os on the path. + : + The relative throughput value of the path + among all paths in the path-group. Algorithm @@ -39,7 +49,7 @@ Algorithm dm-service-time adds the I/O size to 'in-flight-size' when the I/O is dispatched and subtracts when completed. Basically, dm-service-time selects a path having minimum service time -which is calculated by: +which is calculated by:: ('in-flight-size' + 'size-of-incoming-io') / 'relative_throughput' @@ -67,25 +77,25 @@ Examples ======== In case that 2 paths (sda and sdb) are used with repeat_count == 128 and sda has an average throughput 1GB/s and sdb has 4GB/s, -'relative_throughput' value may be '1' for sda and '4' for sdb. +'relative_throughput' value may be '1' for sda and '4' for sdb:: -# echo "0 10 multipath 0 0 1 1 service-time 0 2 2 8:0 128 1 8:16 128 4" \ - dmsetup create test -# -# dmsetup table -test: 0 10 multipath 0 0 1 1 service-time 0 2 2 8:0 128 1 8:16 128 4 -# -# dmsetup status -test: 0 10 multipath 2 0 0 0 1 1 E 0 2 2 8:0 A 0 0 1 8:16 A 0 0 4 + # echo "0 10 multipath 0 0 1 1 service-time 0 2 2 8:0 128 1 8:16 128 4" \ + dmsetup create test + # + # dmsetup table + test: 0 10 multipath 0 0 1 1 service-time 0 2 2 8:0 128 1 8:16 128 4 + # + # dmsetup status + test: 0 10 multipath 2 0 0 0 1 1 E 0 2 2 8:0 A 0 0 1 8:16 A 0 0 4 -Or '2' for sda and '8' for sdb would be also true. +Or '2' for sda and '8' for sdb would be also true:: -# echo "0 10 multipath 0 0 1 1 service-time 0 2 2 8:0 128 2 8:16 128 8" \ - dmsetup create test -# -# dmsetup table -test: 0 10 multipath 0 0 1 1 service-time 0 2 2 8:0 128 2 8:16 128 8 -# -# dmsetup status -test: 0 10 multipath 2 0 0 0 1 1 E 0 2 2 8:0 A 0 0 2 8:16 A 0 0 8 + # echo "0 10 multipath 0 0 1 1 service-time 0 2 2 8:0 128 2 8:16 128 8" \ + dmsetup create test + # + # dmsetup table + test: 0 10 multipath 0 0 1 1 service-time 0 2 2 8:0 128 2 8:16 128 8 + # + # dmsetup status + test: 0 10 multipath 2 0 0 0 1 1 E 0 2 2 8:0 A 0 0 2 8:16 A 0 0 8 diff --git a/Documentation/device-mapper/dm-uevent.rst b/Documentation/device-mapper/dm-uevent.rst new file mode 100644 index 000000000000..4a8ee8d069c9 --- /dev/null +++ b/Documentation/device-mapper/dm-uevent.rst @@ -0,0 +1,110 @@ +==================== +device-mapper uevent +==================== + +The device-mapper uevent code adds the capability to device-mapper to create +and send kobject uevents (uevents). Previously device-mapper events were only +available through the ioctl interface. The advantage of the uevents interface +is the event contains environment attributes providing increased context for +the event avoiding the need to query the state of the device-mapper device after +the event is received. + +There are two functions currently for device-mapper events. The first function +listed creates the event and the second function sends the event(s):: + + void dm_path_uevent(enum dm_uevent_type event_type, struct dm_target *ti, + const char *path, unsigned nr_valid_paths) + + void dm_send_uevents(struct list_head *events, struct kobject *kobj) + + +The variables added to the uevent environment are: + +Variable Name: DM_TARGET +------------------------ +:Uevent Action(s): KOBJ_CHANGE +:Type: string +:Description: +:Value: Name of device-mapper target that generated the event. + +Variable Name: DM_ACTION +------------------------ +:Uevent Action(s): KOBJ_CHANGE +:Type: string +:Description: +:Value: Device-mapper specific action that caused the uevent action. + PATH_FAILED - A path has failed; + PATH_REINSTATED - A path has been reinstated. + +Variable Name: DM_SEQNUM +------------------------ +:Uevent Action(s): KOBJ_CHANGE +:Type: unsigned integer +:Description: A sequence number for this specific device-mapper device. +:Value: Valid unsigned integer range. + +Variable Name: DM_PATH +---------------------- +:Uevent Action(s): KOBJ_CHANGE +:Type: string +:Description: Major and minor number of the path device pertaining to this + event. +:Value: Path name in the form of "Major:Minor" + +Variable Name: DM_NR_VALID_PATHS +-------------------------------- +:Uevent Action(s): KOBJ_CHANGE +:Type: unsigned integer +:Description: +:Value: Valid unsigned integer range. + +Variable Name: DM_NAME +---------------------- +:Uevent Action(s): KOBJ_CHANGE +:Type: string +:Description: Name of the device-mapper device. +:Value: Name + +Variable Name: DM_UUID +---------------------- +:Uevent Action(s): KOBJ_CHANGE +:Type: string +:Description: UUID of the device-mapper device. +:Value: UUID. (Empty string if there isn't one.) + +An example of the uevents generated as captured by udevmonitor is shown +below + +1.) Path failure:: + + UEVENT[1192521009.711215] change@/block/dm-3 + ACTION=change + DEVPATH=/block/dm-3 + SUBSYSTEM=block + DM_TARGET=multipath + DM_ACTION=PATH_FAILED + DM_SEQNUM=1 + DM_PATH=8:32 + DM_NR_VALID_PATHS=0 + DM_NAME=mpath2 + DM_UUID=mpath-35333333000002328 + MINOR=3 + MAJOR=253 + SEQNUM=1130 + +2.) Path reinstate:: + + UEVENT[1192521132.989927] change@/block/dm-3 + ACTION=change + DEVPATH=/block/dm-3 + SUBSYSTEM=block + DM_TARGET=multipath + DM_ACTION=PATH_REINSTATED + DM_SEQNUM=2 + DM_PATH=8:32 + DM_NR_VALID_PATHS=1 + DM_NAME=mpath2 + DM_UUID=mpath-35333333000002328 + MINOR=3 + MAJOR=253 + SEQNUM=1131 diff --git a/Documentation/device-mapper/dm-uevent.txt b/Documentation/device-mapper/dm-uevent.txt deleted file mode 100644 index 07edbd85c714..000000000000 --- a/Documentation/device-mapper/dm-uevent.txt +++ /dev/null @@ -1,97 +0,0 @@ -The device-mapper uevent code adds the capability to device-mapper to create -and send kobject uevents (uevents). Previously device-mapper events were only -available through the ioctl interface. The advantage of the uevents interface -is the event contains environment attributes providing increased context for -the event avoiding the need to query the state of the device-mapper device after -the event is received. - -There are two functions currently for device-mapper events. The first function -listed creates the event and the second function sends the event(s). - -void dm_path_uevent(enum dm_uevent_type event_type, struct dm_target *ti, - const char *path, unsigned nr_valid_paths) - -void dm_send_uevents(struct list_head *events, struct kobject *kobj) - - -The variables added to the uevent environment are: - -Variable Name: DM_TARGET -Uevent Action(s): KOBJ_CHANGE -Type: string -Description: -Value: Name of device-mapper target that generated the event. - -Variable Name: DM_ACTION -Uevent Action(s): KOBJ_CHANGE -Type: string -Description: -Value: Device-mapper specific action that caused the uevent action. - PATH_FAILED - A path has failed. - PATH_REINSTATED - A path has been reinstated. - -Variable Name: DM_SEQNUM -Uevent Action(s): KOBJ_CHANGE -Type: unsigned integer -Description: A sequence number for this specific device-mapper device. -Value: Valid unsigned integer range. - -Variable Name: DM_PATH -Uevent Action(s): KOBJ_CHANGE -Type: string -Description: Major and minor number of the path device pertaining to this -event. -Value: Path name in the form of "Major:Minor" - -Variable Name: DM_NR_VALID_PATHS -Uevent Action(s): KOBJ_CHANGE -Type: unsigned integer -Description: -Value: Valid unsigned integer range. - -Variable Name: DM_NAME -Uevent Action(s): KOBJ_CHANGE -Type: string -Description: Name of the device-mapper device. -Value: Name - -Variable Name: DM_UUID -Uevent Action(s): KOBJ_CHANGE -Type: string -Description: UUID of the device-mapper device. -Value: UUID. (Empty string if there isn't one.) - -An example of the uevents generated as captured by udevmonitor is shown -below. - -1.) Path failure. -UEVENT[1192521009.711215] change@/block/dm-3 -ACTION=change -DEVPATH=/block/dm-3 -SUBSYSTEM=block -DM_TARGET=multipath -DM_ACTION=PATH_FAILED -DM_SEQNUM=1 -DM_PATH=8:32 -DM_NR_VALID_PATHS=0 -DM_NAME=mpath2 -DM_UUID=mpath-35333333000002328 -MINOR=3 -MAJOR=253 -SEQNUM=1130 - -2.) Path reinstate. -UEVENT[1192521132.989927] change@/block/dm-3 -ACTION=change -DEVPATH=/block/dm-3 -SUBSYSTEM=block -DM_TARGET=multipath -DM_ACTION=PATH_REINSTATED -DM_SEQNUM=2 -DM_PATH=8:32 -DM_NR_VALID_PATHS=1 -DM_NAME=mpath2 -DM_UUID=mpath-35333333000002328 -MINOR=3 -MAJOR=253 -SEQNUM=1131 diff --git a/Documentation/device-mapper/dm-zoned.txt b/Documentation/device-mapper/dm-zoned.rst similarity index 97% rename from Documentation/device-mapper/dm-zoned.txt rename to Documentation/device-mapper/dm-zoned.rst index 736fcc78d193..07f56ebc1730 100644 --- a/Documentation/device-mapper/dm-zoned.txt +++ b/Documentation/device-mapper/dm-zoned.rst @@ -1,3 +1,4 @@ +======== dm-zoned ======== @@ -133,12 +134,13 @@ A zoned block device must first be formatted using the dmzadm tool. This will analyze the device zone configuration, determine where to place the metadata sets on the device and initialize the metadata sets. -Ex: +Ex:: -dmzadm --format /dev/sdxx + dmzadm --format /dev/sdxx For a formatted device, the target can be created normally with the dmsetup utility. The only parameter that dm-zoned requires is the -underlying zoned block device name. Ex: +underlying zoned block device name. Ex:: -echo "0 `blockdev --getsize ${dev}` zoned ${dev}" | dmsetup create dmz-`basename ${dev}` + echo "0 `blockdev --getsize ${dev}` zoned ${dev}" | \ + dmsetup create dmz-`basename ${dev}` diff --git a/Documentation/device-mapper/era.txt b/Documentation/device-mapper/era.rst similarity index 70% rename from Documentation/device-mapper/era.txt rename to Documentation/device-mapper/era.rst index 3c6d01be3560..90dd5c670b9f 100644 --- a/Documentation/device-mapper/era.txt +++ b/Documentation/device-mapper/era.rst @@ -1,3 +1,7 @@ +====== +dm-era +====== + Introduction ============ @@ -14,12 +18,14 @@ coherency after rolling back a vendor snapshot. Constructor =========== - era +era - metadata dev : fast device holding the persistent metadata - origin dev : device holding data blocks that may change - block size : block size of origin data device, granularity that is - tracked by the target + ================ ====================================================== + metadata dev fast device holding the persistent metadata + origin dev device holding data blocks that may change + block size block size of origin data device, granularity that is + tracked by the target + ================ ====================================================== Messages ======== @@ -49,14 +55,16 @@ Status <#used metadata blocks>/<#total metadata blocks> -metadata block size : Fixed block size for each metadata block in - sectors -#used metadata blocks : Number of metadata blocks used -#total metadata blocks : Total number of metadata blocks -current era : The current era -held metadata root : The location, in blocks, of the metadata root - that has been 'held' for userspace read - access. '-' indicates there is no held root +========================= ============================================== +metadata block size Fixed block size for each metadata block in + sectors +#used metadata blocks Number of metadata blocks used +#total metadata blocks Total number of metadata blocks +current era The current era +held metadata root The location, in blocks, of the metadata root + that has been 'held' for userspace read + access. '-' indicates there is no held root +========================= ============================================== Detailed use case ================= @@ -88,7 +96,7 @@ Memory usage The target uses a bitset to record writes in the current era. It also has a spare bitset ready for switching over to a new era. Other than -that it uses a few 4k blocks for updating metadata. +that it uses a few 4k blocks for updating metadata:: (4 * nr_blocks) bytes + buffers diff --git a/Documentation/device-mapper/index.rst b/Documentation/device-mapper/index.rst new file mode 100644 index 000000000000..105e253bc231 --- /dev/null +++ b/Documentation/device-mapper/index.rst @@ -0,0 +1,44 @@ +:orphan: + +============= +Device Mapper +============= + +.. toctree:: + :maxdepth: 1 + + cache-policies + cache + delay + dm-crypt + dm-flakey + dm-init + dm-integrity + dm-io + dm-log + dm-queue-length + dm-raid + dm-service-time + dm-uevent + dm-zoned + era + kcopyd + linear + log-writes + persistent-data + snapshot + statistics + striped + switch + thin-provisioning + unstriped + verity + writecache + zero + +.. only:: subproject and html + + Indices + ======= + + * :ref:`genindex` diff --git a/Documentation/device-mapper/kcopyd.txt b/Documentation/device-mapper/kcopyd.rst similarity index 93% rename from Documentation/device-mapper/kcopyd.txt rename to Documentation/device-mapper/kcopyd.rst index 820382c4cecf..7651d395127f 100644 --- a/Documentation/device-mapper/kcopyd.txt +++ b/Documentation/device-mapper/kcopyd.rst @@ -1,3 +1,4 @@ +====== kcopyd ====== @@ -7,7 +8,7 @@ notification. It is used by dm-snapshot and dm-mirror. Users of kcopyd must first create a client and indicate how many memory pages to set aside for their copy jobs. This is done with a call to -kcopyd_client_create(). +kcopyd_client_create():: int kcopyd_client_create(unsigned int num_pages, struct kcopyd_client **result); @@ -16,7 +17,7 @@ To start a copy job, the user must set up io_region structures to describe the source and destinations of the copy. Each io_region indicates a block-device along with the starting sector and size of the region. The source of the copy is given as one io_region structure, and the destinations of the -copy are given as an array of io_region structures. +copy are given as an array of io_region structures:: struct io_region { struct block_device *bdev; @@ -26,7 +27,7 @@ copy are given as an array of io_region structures. To start the copy, the user calls kcopyd_copy(), passing in the client pointer, pointers to the source and destination io_regions, the name of a -completion callback routine, and a pointer to some context data for the copy. +completion callback routine, and a pointer to some context data for the copy:: int kcopyd_copy(struct kcopyd_client *kc, struct io_region *from, unsigned int num_dests, struct io_region *dests, @@ -41,7 +42,6 @@ write error occurred during the copy. When a user is done with all their copy jobs, they should call kcopyd_client_destroy() to delete the kcopyd client, which will release the -associated memory pages. +associated memory pages:: void kcopyd_client_destroy(struct kcopyd_client *kc); - diff --git a/Documentation/device-mapper/linear.rst b/Documentation/device-mapper/linear.rst new file mode 100644 index 000000000000..9d17fc6e64a9 --- /dev/null +++ b/Documentation/device-mapper/linear.rst @@ -0,0 +1,63 @@ +========= +dm-linear +========= + +Device-Mapper's "linear" target maps a linear range of the Device-Mapper +device onto a linear range of another device. This is the basic building +block of logical volume managers. + +Parameters: + : + Full pathname to the underlying block-device, or a + "major:minor" device-number. + : + Starting sector within the device. + + +Example scripts +=============== + +:: + + #!/bin/sh + # Create an identity mapping for a device + echo "0 `blockdev --getsz $1` linear $1 0" | dmsetup create identity + +:: + + #!/bin/sh + # Join 2 devices together + size1=`blockdev --getsz $1` + size2=`blockdev --getsz $2` + echo "0 $size1 linear $1 0 + $size1 $size2 linear $2 0" | dmsetup create joined + +:: + + #!/usr/bin/perl -w + # Split a device into 4M chunks and then join them together in reverse order. + + my $name = "reverse"; + my $extent_size = 4 * 1024 * 2; + my $dev = $ARGV[0]; + my $table = ""; + my $count = 0; + + if (!defined($dev)) { + die("Please specify a device.\n"); + } + + my $dev_size = `blockdev --getsz $dev`; + my $extents = int($dev_size / $extent_size) - + (($dev_size % $extent_size) ? 1 : 0); + + while ($extents > 0) { + my $this_start = $count * $extent_size; + $extents--; + $count++; + my $this_offset = $extents * $extent_size; + + $table .= "$this_start $extent_size linear $dev $this_offset\n"; + } + + `echo \"$table\" | dmsetup create $name`; diff --git a/Documentation/device-mapper/linear.txt b/Documentation/device-mapper/linear.txt deleted file mode 100644 index 7cb98d89d3f8..000000000000 --- a/Documentation/device-mapper/linear.txt +++ /dev/null @@ -1,61 +0,0 @@ -dm-linear -========= - -Device-Mapper's "linear" target maps a linear range of the Device-Mapper -device onto a linear range of another device. This is the basic building -block of logical volume managers. - -Parameters: - : Full pathname to the underlying block-device, or a - "major:minor" device-number. - : Starting sector within the device. - - -Example scripts -=============== -[[ -#!/bin/sh -# Create an identity mapping for a device -echo "0 `blockdev --getsz $1` linear $1 0" | dmsetup create identity -]] - - -[[ -#!/bin/sh -# Join 2 devices together -size1=`blockdev --getsz $1` -size2=`blockdev --getsz $2` -echo "0 $size1 linear $1 0 -$size1 $size2 linear $2 0" | dmsetup create joined -]] - - -[[ -#!/usr/bin/perl -w -# Split a device into 4M chunks and then join them together in reverse order. - -my $name = "reverse"; -my $extent_size = 4 * 1024 * 2; -my $dev = $ARGV[0]; -my $table = ""; -my $count = 0; - -if (!defined($dev)) { - die("Please specify a device.\n"); -} - -my $dev_size = `blockdev --getsz $dev`; -my $extents = int($dev_size / $extent_size) - - (($dev_size % $extent_size) ? 1 : 0); - -while ($extents > 0) { - my $this_start = $count * $extent_size; - $extents--; - $count++; - my $this_offset = $extents * $extent_size; - - $table .= "$this_start $extent_size linear $dev $this_offset\n"; -} - -`echo \"$table\" | dmsetup create $name`; -]] diff --git a/Documentation/device-mapper/log-writes.txt b/Documentation/device-mapper/log-writes.rst similarity index 61% rename from Documentation/device-mapper/log-writes.txt rename to Documentation/device-mapper/log-writes.rst index b638d124be6a..23141f2ffb7c 100644 --- a/Documentation/device-mapper/log-writes.txt +++ b/Documentation/device-mapper/log-writes.rst @@ -1,3 +1,4 @@ +============= dm-log-writes ============= @@ -25,11 +26,11 @@ completed WRITEs, at the time the REQ_PREFLUSH is issued, are added in order to simulate the worst case scenario with regard to power failures. Consider the following example (W means write, C means complete): -W1,W2,W3,C3,C2,Wflush,C1,Cflush + W1,W2,W3,C3,C2,Wflush,C1,Cflush -The log would show the following +The log would show the following: -W3,W2,flush,W1.... + W3,W2,flush,W1.... Again this is to simulate what is actually on disk, this allows us to detect cases where a power failure at a particular point in time would create an @@ -42,11 +43,11 @@ Any REQ_OP_DISCARD requests are treated like WRITE requests. Otherwise we would have all the DISCARD requests, and then the WRITE requests and then the FLUSH request. Consider the following example: -WRITE block 1, DISCARD block 1, FLUSH + WRITE block 1, DISCARD block 1, FLUSH -If we logged DISCARD when it completed, the replay would look like this +If we logged DISCARD when it completed, the replay would look like this: -DISCARD 1, WRITE 1, FLUSH + DISCARD 1, WRITE 1, FLUSH which isn't quite what happened and wouldn't be caught during the log replay. @@ -57,15 +58,19 @@ i) Constructor log-writes - dev_path : Device that all of the IO will go to normally. - log_dev_path : Device where the log entries are written to. + ============= ============================================== + dev_path Device that all of the IO will go to normally. + log_dev_path Device where the log entries are written to. + ============= ============================================== ii) Status <#logged entries> - #logged entries : Number of logged entries - highest allocated sector : Highest allocated sector + =========================== ======================== + #logged entries Number of logged entries + highest allocated sector Highest allocated sector + =========================== ======================== iii) Messages @@ -75,15 +80,15 @@ iii) Messages For example say you want to fsck a file system after every write, but first you need to replay up to the mkfs to make sure we're fsck'ing something reasonable, you would do something like - this: + this:: mkfs.btrfs -f /dev/mapper/log dmsetup message log 0 mark mkfs - This would allow you to replay the log up to the mkfs mark and - then replay from that point on doing the fsck check in the - interval that you want. + This would allow you to replay the log up to the mkfs mark and + then replay from that point on doing the fsck check in the + interval that you want. Every log has a mark at the end labeled "dm-log-writes-end". @@ -97,42 +102,42 @@ Example usage ============= Say you want to test fsync on your file system. You would do something like -this: +this:: -TABLE="0 $(blockdev --getsz /dev/sdb) log-writes /dev/sdb /dev/sdc" -dmsetup create log --table "$TABLE" -mkfs.btrfs -f /dev/mapper/log -dmsetup message log 0 mark mkfs + TABLE="0 $(blockdev --getsz /dev/sdb) log-writes /dev/sdb /dev/sdc" + dmsetup create log --table "$TABLE" + mkfs.btrfs -f /dev/mapper/log + dmsetup message log 0 mark mkfs -mount /dev/mapper/log /mnt/btrfs-test - -dmsetup message log 0 mark fsync -md5sum /mnt/btrfs-test/foo -umount /mnt/btrfs-test + mount /dev/mapper/log /mnt/btrfs-test + + dmsetup message log 0 mark fsync + md5sum /mnt/btrfs-test/foo + umount /mnt/btrfs-test -dmsetup remove log -replay-log --log /dev/sdc --replay /dev/sdb --end-mark fsync -mount /dev/sdb /mnt/btrfs-test -md5sum /mnt/btrfs-test/foo - + dmsetup remove log + replay-log --log /dev/sdc --replay /dev/sdb --end-mark fsync + mount /dev/sdb /mnt/btrfs-test + md5sum /mnt/btrfs-test/foo + -Another option is to do a complicated file system operation and verify the file -system is consistent during the entire operation. You could do this with: + Another option is to do a complicated file system operation and verify the file + system is consistent during the entire operation. You could do this with: -TABLE="0 $(blockdev --getsz /dev/sdb) log-writes /dev/sdb /dev/sdc" -dmsetup create log --table "$TABLE" -mkfs.btrfs -f /dev/mapper/log -dmsetup message log 0 mark mkfs + TABLE="0 $(blockdev --getsz /dev/sdb) log-writes /dev/sdb /dev/sdc" + dmsetup create log --table "$TABLE" + mkfs.btrfs -f /dev/mapper/log + dmsetup message log 0 mark mkfs -mount /dev/mapper/log /mnt/btrfs-test - -btrfs filesystem balance /mnt/btrfs-test -umount /mnt/btrfs-test -dmsetup remove log + mount /dev/mapper/log /mnt/btrfs-test + + btrfs filesystem balance /mnt/btrfs-test + umount /mnt/btrfs-test + dmsetup remove log -replay-log --log /dev/sdc --replay /dev/sdb --end-mark mkfs -btrfsck /dev/sdb -replay-log --log /dev/sdc --replay /dev/sdb --start-mark mkfs \ + replay-log --log /dev/sdc --replay /dev/sdb --end-mark mkfs + btrfsck /dev/sdb + replay-log --log /dev/sdc --replay /dev/sdb --start-mark mkfs \ --fsck "btrfsck /dev/sdb" --check fua And that will replay the log until it sees a FUA request, run the fsck command diff --git a/Documentation/device-mapper/persistent-data.txt b/Documentation/device-mapper/persistent-data.rst similarity index 98% rename from Documentation/device-mapper/persistent-data.txt rename to Documentation/device-mapper/persistent-data.rst index a333bcb3a6c2..2065c3c5a091 100644 --- a/Documentation/device-mapper/persistent-data.txt +++ b/Documentation/device-mapper/persistent-data.rst @@ -1,3 +1,7 @@ +=============== +Persistent data +=============== + Introduction ============ diff --git a/Documentation/device-mapper/snapshot.txt b/Documentation/device-mapper/snapshot.rst similarity index 62% rename from Documentation/device-mapper/snapshot.txt rename to Documentation/device-mapper/snapshot.rst index b8bbb516f989..4c53304e72f1 100644 --- a/Documentation/device-mapper/snapshot.txt +++ b/Documentation/device-mapper/snapshot.rst @@ -1,15 +1,16 @@ +============================== Device-mapper snapshot support ============================== Device-mapper allows you, without massive data copying: -*) To create snapshots of any block device i.e. mountable, saved states of -the block device which are also writable without interfering with the -original content; -*) To create device "forks", i.e. multiple different versions of the -same data stream. -*) To merge a snapshot of a block device back into the snapshot's origin -device. +- To create snapshots of any block device i.e. mountable, saved states of + the block device which are also writable without interfering with the + original content; +- To create device "forks", i.e. multiple different versions of the + same data stream. +- To merge a snapshot of a block device back into the snapshot's origin + device. In the first two cases, dm copies only the chunks of data that get changed and uses a separate copy-on-write (COW) block device for @@ -22,7 +23,7 @@ the origin device. There are three dm targets available: snapshot, snapshot-origin, and snapshot-merge. -*) snapshot-origin +- snapshot-origin which will normally have one or more snapshots based on it. Reads will be mapped directly to the backing device. For each write, the @@ -30,7 +31,7 @@ original data will be saved in the of each snapshot to keep its visible content unchanged, at least until the fills up. -*) snapshot +- snapshot A snapshot of the block device is created. Changed chunks of sectors will be stored on the . Writes will @@ -83,25 +84,25 @@ When you create the first LVM2 snapshot of a volume, four dm devices are used: source volume), whose table is replaced by a "snapshot-origin" mapping from device #1. -A fixed naming scheme is used, so with the following commands: +A fixed naming scheme is used, so with the following commands:: -lvcreate -L 1G -n base volumeGroup -lvcreate -L 100M --snapshot -n snap volumeGroup/base + lvcreate -L 1G -n base volumeGroup + lvcreate -L 100M --snapshot -n snap volumeGroup/base -we'll have this situation (with volumes in above order): +we'll have this situation (with volumes in above order):: -# dmsetup table|grep volumeGroup + # dmsetup table|grep volumeGroup -volumeGroup-base-real: 0 2097152 linear 8:19 384 -volumeGroup-snap-cow: 0 204800 linear 8:19 2097536 -volumeGroup-snap: 0 2097152 snapshot 254:11 254:12 P 16 -volumeGroup-base: 0 2097152 snapshot-origin 254:11 + volumeGroup-base-real: 0 2097152 linear 8:19 384 + volumeGroup-snap-cow: 0 204800 linear 8:19 2097536 + volumeGroup-snap: 0 2097152 snapshot 254:11 254:12 P 16 + volumeGroup-base: 0 2097152 snapshot-origin 254:11 -# ls -lL /dev/mapper/volumeGroup-* -brw------- 1 root root 254, 11 29 ago 18:15 /dev/mapper/volumeGroup-base-real -brw------- 1 root root 254, 12 29 ago 18:15 /dev/mapper/volumeGroup-snap-cow -brw------- 1 root root 254, 13 29 ago 18:15 /dev/mapper/volumeGroup-snap -brw------- 1 root root 254, 10 29 ago 18:14 /dev/mapper/volumeGroup-base + # ls -lL /dev/mapper/volumeGroup-* + brw------- 1 root root 254, 11 29 ago 18:15 /dev/mapper/volumeGroup-base-real + brw------- 1 root root 254, 12 29 ago 18:15 /dev/mapper/volumeGroup-snap-cow + brw------- 1 root root 254, 13 29 ago 18:15 /dev/mapper/volumeGroup-snap + brw------- 1 root root 254, 10 29 ago 18:14 /dev/mapper/volumeGroup-base How snapshot-merge is used by LVM2 @@ -114,27 +115,28 @@ merging snapshot after it completes. The "snapshot" that hands over its COW device to the "snapshot-merge" is deactivated (unless using lvchange --refresh); but if it is left active it will simply return I/O errors. -A snapshot will merge into its origin with the following command: +A snapshot will merge into its origin with the following command:: -lvconvert --merge volumeGroup/snap + lvconvert --merge volumeGroup/snap -we'll now have this situation: +we'll now have this situation:: -# dmsetup table|grep volumeGroup + # dmsetup table|grep volumeGroup -volumeGroup-base-real: 0 2097152 linear 8:19 384 -volumeGroup-base-cow: 0 204800 linear 8:19 2097536 -volumeGroup-base: 0 2097152 snapshot-merge 254:11 254:12 P 16 + volumeGroup-base-real: 0 2097152 linear 8:19 384 + volumeGroup-base-cow: 0 204800 linear 8:19 2097536 + volumeGroup-base: 0 2097152 snapshot-merge 254:11 254:12 P 16 -# ls -lL /dev/mapper/volumeGroup-* -brw------- 1 root root 254, 11 29 ago 18:15 /dev/mapper/volumeGroup-base-real -brw------- 1 root root 254, 12 29 ago 18:16 /dev/mapper/volumeGroup-base-cow -brw------- 1 root root 254, 10 29 ago 18:16 /dev/mapper/volumeGroup-base + # ls -lL /dev/mapper/volumeGroup-* + brw------- 1 root root 254, 11 29 ago 18:15 /dev/mapper/volumeGroup-base-real + brw------- 1 root root 254, 12 29 ago 18:16 /dev/mapper/volumeGroup-base-cow + brw------- 1 root root 254, 10 29 ago 18:16 /dev/mapper/volumeGroup-base How to determine when a merging is complete =========================================== The snapshot-merge and snapshot status lines end with: + / Both and include both data and metadata. @@ -142,35 +144,37 @@ During merging, the number of sectors allocated gets smaller and smaller. Merging has finished when the number of sectors holding data is zero, in other words == . -Here is a practical example (using a hybrid of lvm and dmsetup commands): +Here is a practical example (using a hybrid of lvm and dmsetup commands):: -# lvs - LV VG Attr LSize Origin Snap% Move Log Copy% Convert - base volumeGroup owi-a- 4.00g - snap volumeGroup swi-a- 1.00g base 18.97 + # lvs + LV VG Attr LSize Origin Snap% Move Log Copy% Convert + base volumeGroup owi-a- 4.00g + snap volumeGroup swi-a- 1.00g base 18.97 -# dmsetup status volumeGroup-snap -0 8388608 snapshot 397896/2097152 1560 - ^^^^ metadata sectors + # dmsetup status volumeGroup-snap + 0 8388608 snapshot 397896/2097152 1560 + ^^^^ metadata sectors -# lvconvert --merge -b volumeGroup/snap - Merging of volume snap started. + # lvconvert --merge -b volumeGroup/snap + Merging of volume snap started. -# lvs volumeGroup/snap - LV VG Attr LSize Origin Snap% Move Log Copy% Convert - base volumeGroup Owi-a- 4.00g 17.23 + # lvs volumeGroup/snap + LV VG Attr LSize Origin Snap% Move Log Copy% Convert + base volumeGroup Owi-a- 4.00g 17.23 -# dmsetup status volumeGroup-base -0 8388608 snapshot-merge 281688/2097152 1104 + # dmsetup status volumeGroup-base + 0 8388608 snapshot-merge 281688/2097152 1104 -# dmsetup status volumeGroup-base -0 8388608 snapshot-merge 180480/2097152 712 + # dmsetup status volumeGroup-base + 0 8388608 snapshot-merge 180480/2097152 712 -# dmsetup status volumeGroup-base -0 8388608 snapshot-merge 16/2097152 16 + # dmsetup status volumeGroup-base + 0 8388608 snapshot-merge 16/2097152 16 Merging has finished. -# lvs - LV VG Attr LSize Origin Snap% Move Log Copy% Convert - base volumeGroup owi-a- 4.00g +:: + + # lvs + LV VG Attr LSize Origin Snap% Move Log Copy% Convert + base volumeGroup owi-a- 4.00g diff --git a/Documentation/device-mapper/statistics.txt b/Documentation/device-mapper/statistics.rst similarity index 87% rename from Documentation/device-mapper/statistics.txt rename to Documentation/device-mapper/statistics.rst index 170ac02a1f50..3d80a9f850cc 100644 --- a/Documentation/device-mapper/statistics.txt +++ b/Documentation/device-mapper/statistics.rst @@ -1,3 +1,4 @@ +============= DM statistics ============= @@ -11,7 +12,7 @@ Individual statistics will be collected for each step-sized area within the range specified. The I/O statistics counters for each step-sized area of a region are -in the same format as /sys/block/*/stat or /proc/diskstats (see: +in the same format as `/sys/block/*/stat` or `/proc/diskstats` (see: Documentation/iostats.txt). But two extra counters (12 and 13) are provided: total time spent reading and writing. When the histogram argument is used, the 14th parameter is reported that represents the @@ -32,40 +33,45 @@ on each other's data. The creation of DM statistics will allocate memory via kmalloc or fallback to using vmalloc space. At most, 1/4 of the overall system memory may be allocated by DM statistics. The admin can see how much -memory is used by reading -/sys/module/dm_mod/parameters/stats_current_allocated_bytes +memory is used by reading: + + /sys/module/dm_mod/parameters/stats_current_allocated_bytes Messages ======== - @stats_create - [ ...] - [ []] - + @stats_create [ ...] [ []] Create a new region and return the region_id. - "-" - whole device - "+" - a range of 512-byte sectors - starting with . + "-" + whole device + "+" + a range of 512-byte sectors + starting with . - "" - the range is subdivided into areas each containing - sectors. - "/" - the range is subdivided into the specified - number of areas. + "" + the range is subdivided into areas each containing + sectors. + "/" + the range is subdivided into the specified + number of areas. The number of optional arguments - The following optional arguments are supported - precise_timestamps - use precise timer with nanosecond resolution + The following optional arguments are supported: + + precise_timestamps + use precise timer with nanosecond resolution instead of the "jiffies" variable. When this argument is used, the resulting times are in nanoseconds instead of milliseconds. Precise timestamps are a little bit slower to obtain than jiffies-based timestamps. - histogram:n1,n2,n3,n4,... - collect histogram of latencies. The + histogram:n1,n2,n3,n4,... + collect histogram of latencies. The numbers n1, n2, etc are times that represent the boundaries of the histogram. If precise_timestamps is not used, the times are in milliseconds, otherwise they are in @@ -96,21 +102,18 @@ Messages @stats_list message, but it doesn't use this value for anything. @stats_delete - Delete the region with the specified id. region_id returned from @stats_create @stats_clear - Clear all the counters except the in-flight i/o counters. region_id returned from @stats_create @stats_list [] - List all regions registered with @stats_create. @@ -127,7 +130,6 @@ Messages if they were specified when creating the region. @stats_print [ ] - Print counters for each step-sized area of a region. @@ -143,10 +145,11 @@ Messages Output format for each step-sized area of a region: - + counters + + + counters The first 11 counters have the same meaning as - /sys/block/*/stat or /proc/diskstats. + `/sys/block/*/stat or /proc/diskstats`. Please refer to Documentation/iostats.txt for details. @@ -163,11 +166,11 @@ Messages 11. the weighted number of milliseconds spent doing I/Os Additional counters: + 12. the total time spent reading in milliseconds 13. the total time spent writing in milliseconds @stats_print_clear [ ] - Atomically print and then clear all the counters except the in-flight i/o counters. Useful when the client consuming the statistics does not want to lose any statistics (those updated @@ -185,7 +188,6 @@ Messages If omitted, all lines are printed and then cleared. @stats_set_aux - Store auxiliary data aux_data for the specified region. @@ -201,23 +203,23 @@ Examples ======== Subdivide the DM device 'vol' into 100 pieces and start collecting -statistics on them: +statistics on them:: dmsetup message vol 0 @stats_create - /100 Set the auxiliary data string to "foo bar baz" (the escape for each -space must also be escaped, otherwise the shell will consume them): +space must also be escaped, otherwise the shell will consume them):: dmsetup message vol 0 @stats_set_aux 0 foo\\ bar\\ baz -List the statistics: +List the statistics:: dmsetup message vol 0 @stats_list -Print the statistics: +Print the statistics:: dmsetup message vol 0 @stats_print 0 -Delete the statistics: +Delete the statistics:: dmsetup message vol 0 @stats_delete 0 diff --git a/Documentation/device-mapper/striped.rst b/Documentation/device-mapper/striped.rst new file mode 100644 index 000000000000..e9a8da192ae1 --- /dev/null +++ b/Documentation/device-mapper/striped.rst @@ -0,0 +1,61 @@ +========= +dm-stripe +========= + +Device-Mapper's "striped" target is used to create a striped (i.e. RAID-0) +device across one or more underlying devices. Data is written in "chunks", +with consecutive chunks rotating among the underlying devices. This can +potentially provide improved I/O throughput by utilizing several physical +devices in parallel. + +Parameters: [ ]+ + : + Number of underlying devices. + : + Size of each chunk of data. Must be at least as + large as the system's PAGE_SIZE. + : + Full pathname to the underlying block-device, or a + "major:minor" device-number. + : + Starting sector within the device. + +One or more underlying devices can be specified. The striped device size must +be a multiple of the chunk size multiplied by the number of underlying devices. + + +Example scripts +=============== + +:: + + #!/usr/bin/perl -w + # Create a striped device across any number of underlying devices. The device + # will be called "stripe_dev" and have a chunk-size of 128k. + + my $chunk_size = 128 * 2; + my $dev_name = "stripe_dev"; + my $num_devs = @ARGV; + my @devs = @ARGV; + my ($min_dev_size, $stripe_dev_size, $i); + + if (!$num_devs) { + die("Specify at least one device\n"); + } + + $min_dev_size = `blockdev --getsz $devs[0]`; + for ($i = 1; $i < $num_devs; $i++) { + my $this_size = `blockdev --getsz $devs[$i]`; + $min_dev_size = ($min_dev_size < $this_size) ? + $min_dev_size : $this_size; + } + + $stripe_dev_size = $min_dev_size * $num_devs; + $stripe_dev_size -= $stripe_dev_size % ($chunk_size * $num_devs); + + $table = "0 $stripe_dev_size striped $num_devs $chunk_size"; + for ($i = 0; $i < $num_devs; $i++) { + $table .= " $devs[$i] 0"; + } + + `echo $table | dmsetup create $dev_name`; diff --git a/Documentation/device-mapper/striped.txt b/Documentation/device-mapper/striped.txt deleted file mode 100644 index 07ec492cceee..000000000000 --- a/Documentation/device-mapper/striped.txt +++ /dev/null @@ -1,57 +0,0 @@ -dm-stripe -========= - -Device-Mapper's "striped" target is used to create a striped (i.e. RAID-0) -device across one or more underlying devices. Data is written in "chunks", -with consecutive chunks rotating among the underlying devices. This can -potentially provide improved I/O throughput by utilizing several physical -devices in parallel. - -Parameters: [ ]+ - : Number of underlying devices. - : Size of each chunk of data. Must be at least as - large as the system's PAGE_SIZE. - : Full pathname to the underlying block-device, or a - "major:minor" device-number. - : Starting sector within the device. - -One or more underlying devices can be specified. The striped device size must -be a multiple of the chunk size multiplied by the number of underlying devices. - - -Example scripts -=============== - -[[ -#!/usr/bin/perl -w -# Create a striped device across any number of underlying devices. The device -# will be called "stripe_dev" and have a chunk-size of 128k. - -my $chunk_size = 128 * 2; -my $dev_name = "stripe_dev"; -my $num_devs = @ARGV; -my @devs = @ARGV; -my ($min_dev_size, $stripe_dev_size, $i); - -if (!$num_devs) { - die("Specify at least one device\n"); -} - -$min_dev_size = `blockdev --getsz $devs[0]`; -for ($i = 1; $i < $num_devs; $i++) { - my $this_size = `blockdev --getsz $devs[$i]`; - $min_dev_size = ($min_dev_size < $this_size) ? - $min_dev_size : $this_size; -} - -$stripe_dev_size = $min_dev_size * $num_devs; -$stripe_dev_size -= $stripe_dev_size % ($chunk_size * $num_devs); - -$table = "0 $stripe_dev_size striped $num_devs $chunk_size"; -for ($i = 0; $i < $num_devs; $i++) { - $table .= " $devs[$i] 0"; -} - -`echo $table | dmsetup create $dev_name`; -]] - diff --git a/Documentation/device-mapper/switch.txt b/Documentation/device-mapper/switch.rst similarity index 84% rename from Documentation/device-mapper/switch.txt rename to Documentation/device-mapper/switch.rst index 5bd4831db4a8..7dde06be1a4f 100644 --- a/Documentation/device-mapper/switch.txt +++ b/Documentation/device-mapper/switch.rst @@ -1,3 +1,4 @@ +========= dm-switch ========= @@ -67,27 +68,25 @@ b-tree can achieve. Construction Parameters ======================= - [...] - [ ]+ + [...] [ ]+ + + The number of paths across which to distribute the I/O. - - The number of paths across which to distribute the I/O. + + The number of 512-byte sectors in a region. Each region can be redirected + to any of the available paths. - - The number of 512-byte sectors in a region. Each region can be redirected - to any of the available paths. + + The number of optional arguments. Currently, no optional arguments + are supported and so this must be zero. - - The number of optional arguments. Currently, no optional arguments - are supported and so this must be zero. + + The block device that represents a specific path to the device. - - The block device that represents a specific path to the device. - - - The offset of the start of data on the specific (in units - of 512-byte sectors). This number is added to the sector number when - forwarding the request to the specific path. Typically it is zero. + + The offset of the start of data on the specific (in units + of 512-byte sectors). This number is added to the sector number when + forwarding the request to the specific path. Typically it is zero. Messages ======== @@ -122,17 +121,21 @@ Example Assume that you have volumes vg1/switch0 vg1/switch1 vg1/switch2 with the same size. -Create a switch device with 64kB region size: +Create a switch device with 64kB region size:: + dmsetup create switch --table "0 `blockdev --getsz /dev/vg1/switch0` switch 3 128 0 /dev/vg1/switch0 0 /dev/vg1/switch1 0 /dev/vg1/switch2 0" Set mappings for the first 7 entries to point to devices switch0, switch1, -switch2, switch0, switch1, switch2, switch1: +switch2, switch0, switch1, switch2, switch1:: + dmsetup message switch 0 set_region_mappings 0:0 :1 :2 :0 :1 :2 :1 -Set repetitive mapping. This command: +Set repetitive mapping. This command:: + dmsetup message switch 0 set_region_mappings 1000:1 :2 R2,10 -is equivalent to: + +is equivalent to:: + dmsetup message switch 0 set_region_mappings 1000:1 :2 :1 :2 :1 :2 :1 :2 \ :1 :2 :1 :2 :1 :2 :1 :2 :1 :2 - diff --git a/Documentation/device-mapper/thin-provisioning.txt b/Documentation/device-mapper/thin-provisioning.rst similarity index 92% rename from Documentation/device-mapper/thin-provisioning.txt rename to Documentation/device-mapper/thin-provisioning.rst index 883e7ca5f745..bafebf79da4b 100644 --- a/Documentation/device-mapper/thin-provisioning.txt +++ b/Documentation/device-mapper/thin-provisioning.rst @@ -1,3 +1,7 @@ +================= +Thin provisioning +================= + Introduction ============ @@ -95,6 +99,8 @@ previously.) Using an existing pool device ----------------------------- +:: + dmsetup create pool \ --table "0 20971520 thin-pool $metadata_dev $data_dev \ $data_block_size $low_water_mark" @@ -154,7 +160,7 @@ Thin provisioning i) Creating a new thinly-provisioned volume. To create a new thinly- provisioned volume you must send a message to an - active pool device, /dev/mapper/pool in this example. + active pool device, /dev/mapper/pool in this example:: dmsetup message /dev/mapper/pool 0 "create_thin 0" @@ -164,7 +170,7 @@ i) Creating a new thinly-provisioned volume. ii) Using a thinly-provisioned volume. - Thinly-provisioned volumes are activated using the 'thin' target: + Thinly-provisioned volumes are activated using the 'thin' target:: dmsetup create thin --table "0 2097152 thin /dev/mapper/pool 0" @@ -181,6 +187,8 @@ i) Creating an internal snapshot. must suspend it before creating the snapshot to avoid corruption. This is NOT enforced at the moment, so please be careful! + :: + dmsetup suspend /dev/mapper/thin dmsetup message /dev/mapper/pool 0 "create_snap 1 0" dmsetup resume /dev/mapper/thin @@ -198,14 +206,14 @@ ii) Using an internal snapshot. activating or removing them both. (This differs from conventional device-mapper snapshots.) - Activate it exactly the same way as any other thinly-provisioned volume: + Activate it exactly the same way as any other thinly-provisioned volume:: dmsetup create snap --table "0 2097152 thin /dev/mapper/pool 1" External snapshots ------------------ -You can use an external _read only_ device as an origin for a +You can use an external **read only** device as an origin for a thinly-provisioned volume. Any read to an unprovisioned area of the thin device will be passed through to the origin. Writes trigger the allocation of new blocks as usual. @@ -223,11 +231,13 @@ i) Creating a snapshot of an external device This is the same as creating a thin device. You don't mention the origin at this stage. + :: + dmsetup message /dev/mapper/pool 0 "create_thin 0" ii) Using a snapshot of an external device. - Append an extra parameter to the thin target specifying the origin: + Append an extra parameter to the thin target specifying the origin:: dmsetup create snap --table "0 2097152 thin /dev/mapper/pool 0 /dev/image" @@ -240,6 +250,8 @@ Deactivation All devices using a pool must be deactivated before the pool itself can be. +:: + dmsetup remove thin dmsetup remove snap dmsetup remove pool @@ -252,25 +264,32 @@ Reference i) Constructor - thin-pool \ - [ []*] + :: + + thin-pool \ + [ []*] Optional feature arguments: - skip_block_zeroing: Skip the zeroing of newly-provisioned blocks. + skip_block_zeroing: + Skip the zeroing of newly-provisioned blocks. - ignore_discard: Disable discard support. + ignore_discard: + Disable discard support. - no_discard_passdown: Don't pass discards down to the underlying - data device, but just remove the mapping. + no_discard_passdown: + Don't pass discards down to the underlying + data device, but just remove the mapping. - read_only: Don't allow any changes to be made to the pool + read_only: + Don't allow any changes to be made to the pool metadata. This mode is only available after the thin-pool has been created and first used in full read/write mode. It cannot be specified on initial thin-pool creation. - error_if_no_space: Error IOs, instead of queueing, if no space. + error_if_no_space: + Error IOs, instead of queueing, if no space. Data block size must be between 64KB (128 sectors) and 1GB (2097152 sectors) inclusive. @@ -278,10 +297,12 @@ i) Constructor ii) Status - / - / - ro|rw|out_of_data_space [no_]discard_passdown [error|queue]_if_no_space - needs_check|- metadata_low_watermark + :: + + / + / + ro|rw|out_of_data_space [no_]discard_passdown [error|queue]_if_no_space + needs_check|- metadata_low_watermark transaction id: A 64-bit number used by userspace to help synchronise with metadata @@ -336,13 +357,11 @@ ii) Status iii) Messages create_thin - Create a new thinly-provisioned device. is an arbitrary unique 24-bit identifier chosen by the caller. create_snap - Create a new snapshot of another thinly-provisioned device. is an arbitrary unique 24-bit identifier chosen by the caller. @@ -350,11 +369,9 @@ iii) Messages of which the new device will be a snapshot. delete - Deletes a thin device. Irreversible. set_transaction_id - Userland volume managers, such as LVM, need a way to synchronise their external metadata with the internal metadata of the pool target. The thin-pool target offers to store an @@ -364,14 +381,12 @@ iii) Messages compare-and-swap message. reserve_metadata_snap - Reserve a copy of the data mapping btree for use by userland. This allows userland to inspect the mappings as they were when this message was executed. Use the pool's status command to get the root block associated with the metadata snapshot. release_metadata_snap - Release a previously reserved copy of the data mapping btree. 'thin' target @@ -379,7 +394,9 @@ iii) Messages i) Constructor - thin [] + :: + + thin [] pool dev: the thin-pool device, e.g. /dev/mapper/my_pool or 253:0 @@ -401,8 +418,7 @@ provisioned as and when needed. ii) Status - - + If the pool has encountered device errors and failed, the status will just contain the string 'Fail'. The userspace recovery tools should then be used. diff --git a/Documentation/device-mapper/unstriped.txt b/Documentation/device-mapper/unstriped.rst similarity index 60% rename from Documentation/device-mapper/unstriped.txt rename to Documentation/device-mapper/unstriped.rst index 0b2a306c54ee..0a8d3eb3f072 100644 --- a/Documentation/device-mapper/unstriped.txt +++ b/Documentation/device-mapper/unstriped.rst @@ -1,3 +1,7 @@ +================================ +Device-mapper "unstriped" target +================================ + Introduction ============ @@ -34,46 +38,46 @@ striped target to combine the 4 devices into one. It then will use the unstriped target ontop of the striped device to access the individual backing loop devices. We write data to the newly exposed unstriped devices and verify the data written matches the correct -underlying device on the striped array. - -#!/bin/bash - -MEMBER_SIZE=$((128 * 1024 * 1024)) -NUM=4 -SEQ_END=$((${NUM}-1)) -CHUNK=256 -BS=4096 - -RAID_SIZE=$((${MEMBER_SIZE}*${NUM}/512)) -DM_PARMS="0 ${RAID_SIZE} striped ${NUM} ${CHUNK}" -COUNT=$((${MEMBER_SIZE} / ${BS})) - -for i in $(seq 0 ${SEQ_END}); do - dd if=/dev/zero of=member-${i} bs=${MEMBER_SIZE} count=1 oflag=direct - losetup /dev/loop${i} member-${i} - DM_PARMS+=" /dev/loop${i} 0" -done - -echo $DM_PARMS | dmsetup create raid0 -for i in $(seq 0 ${SEQ_END}); do - echo "0 1 unstriped ${NUM} ${CHUNK} ${i} /dev/mapper/raid0 0" | dmsetup create set-${i} -done; - -for i in $(seq 0 ${SEQ_END}); do - dd if=/dev/urandom of=/dev/mapper/set-${i} bs=${BS} count=${COUNT} oflag=direct - diff /dev/mapper/set-${i} member-${i} -done; - -for i in $(seq 0 ${SEQ_END}); do - dmsetup remove set-${i} -done - -dmsetup remove raid0 - -for i in $(seq 0 ${SEQ_END}); do - losetup -d /dev/loop${i} - rm -f member-${i} -done +underlying device on the striped array:: + + #!/bin/bash + + MEMBER_SIZE=$((128 * 1024 * 1024)) + NUM=4 + SEQ_END=$((${NUM}-1)) + CHUNK=256 + BS=4096 + + RAID_SIZE=$((${MEMBER_SIZE}*${NUM}/512)) + DM_PARMS="0 ${RAID_SIZE} striped ${NUM} ${CHUNK}" + COUNT=$((${MEMBER_SIZE} / ${BS})) + + for i in $(seq 0 ${SEQ_END}); do + dd if=/dev/zero of=member-${i} bs=${MEMBER_SIZE} count=1 oflag=direct + losetup /dev/loop${i} member-${i} + DM_PARMS+=" /dev/loop${i} 0" + done + + echo $DM_PARMS | dmsetup create raid0 + for i in $(seq 0 ${SEQ_END}); do + echo "0 1 unstriped ${NUM} ${CHUNK} ${i} /dev/mapper/raid0 0" | dmsetup create set-${i} + done; + + for i in $(seq 0 ${SEQ_END}); do + dd if=/dev/urandom of=/dev/mapper/set-${i} bs=${BS} count=${COUNT} oflag=direct + diff /dev/mapper/set-${i} member-${i} + done; + + for i in $(seq 0 ${SEQ_END}); do + dmsetup remove set-${i} + done + + dmsetup remove raid0 + + for i in $(seq 0 ${SEQ_END}); do + losetup -d /dev/loop${i} + rm -f member-${i} + done Another example --------------- @@ -81,7 +85,7 @@ Another example Intel NVMe drives contain two cores on the physical device. Each core of the drive has segregated access to its LBA range. The current LBA model has a RAID 0 128k chunk on each core, resulting -in a 256k stripe across the two cores: +in a 256k stripe across the two cores:: Core 0: Core 1: __________ __________ @@ -108,17 +112,24 @@ Example dmsetup usage unstriped ontop of Intel NVMe device that has 2 cores ----------------------------------------------------- -dmsetup create nvmset0 --table '0 512 unstriped 2 256 0 /dev/nvme0n1 0' -dmsetup create nvmset1 --table '0 512 unstriped 2 256 1 /dev/nvme0n1 0' + +:: + + dmsetup create nvmset0 --table '0 512 unstriped 2 256 0 /dev/nvme0n1 0' + dmsetup create nvmset1 --table '0 512 unstriped 2 256 1 /dev/nvme0n1 0' There will now be two devices that expose Intel NVMe core 0 and 1 -respectively: -/dev/mapper/nvmset0 -/dev/mapper/nvmset1 +respectively:: + + /dev/mapper/nvmset0 + /dev/mapper/nvmset1 unstriped ontop of striped with 4 drives using 128K chunk size -------------------------------------------------------------- -dmsetup create raid_disk0 --table '0 512 unstriped 4 256 0 /dev/mapper/striped 0' -dmsetup create raid_disk1 --table '0 512 unstriped 4 256 1 /dev/mapper/striped 0' -dmsetup create raid_disk2 --table '0 512 unstriped 4 256 2 /dev/mapper/striped 0' -dmsetup create raid_disk3 --table '0 512 unstriped 4 256 3 /dev/mapper/striped 0' + +:: + + dmsetup create raid_disk0 --table '0 512 unstriped 4 256 0 /dev/mapper/striped 0' + dmsetup create raid_disk1 --table '0 512 unstriped 4 256 1 /dev/mapper/striped 0' + dmsetup create raid_disk2 --table '0 512 unstriped 4 256 2 /dev/mapper/striped 0' + dmsetup create raid_disk3 --table '0 512 unstriped 4 256 3 /dev/mapper/striped 0' diff --git a/Documentation/device-mapper/verity.txt b/Documentation/device-mapper/verity.rst similarity index 98% rename from Documentation/device-mapper/verity.txt rename to Documentation/device-mapper/verity.rst index b3d2e4a42255..a4d1c1476d72 100644 --- a/Documentation/device-mapper/verity.txt +++ b/Documentation/device-mapper/verity.rst @@ -1,5 +1,6 @@ +========= dm-verity -========== +========= Device-Mapper's "verity" target provides transparent integrity checking of block devices using a cryptographic digest provided by the kernel crypto API. @@ -7,6 +8,9 @@ This target is read-only. Construction Parameters ======================= + +:: + @@ -160,7 +164,9 @@ calculating the parent node. The tree looks something like: -alg = sha256, num_blocks = 32768, block_size = 4096 + alg = sha256, num_blocks = 32768, block_size = 4096 + +:: [ root ] / . . . \ @@ -189,6 +195,7 @@ block boundary) are the hash blocks which are stored a depth at a time The full specification of kernel parameters and on-disk metadata format is available at the cryptsetup project's wiki page + https://gitlab.com/cryptsetup/cryptsetup/wikis/DMVerity Status @@ -198,7 +205,8 @@ If any check failed, C (for Corruption) is returned. Example ======= -Set up a device: +Set up a device:: + # dmsetup create vroot --readonly --table \ "0 2097152 verity 1 /dev/sda1 /dev/sda2 4096 4096 262144 1 sha256 "\ "4392712ba01368efdf14b05c76f9e4df0d53664630b5d48632ed17a137f39076 "\ @@ -209,11 +217,13 @@ the hash tree or activate the kernel device. This is available from the cryptsetup upstream repository https://gitlab.com/cryptsetup/cryptsetup/ (as a libcryptsetup extension). -Create hash on the device: +Create hash on the device:: + # veritysetup format /dev/sda1 /dev/sda2 ... Root hash: 4392712ba01368efdf14b05c76f9e4df0d53664630b5d48632ed17a137f39076 -Activate the device: +Activate the device:: + # veritysetup create vroot /dev/sda1 /dev/sda2 \ 4392712ba01368efdf14b05c76f9e4df0d53664630b5d48632ed17a137f39076 diff --git a/Documentation/device-mapper/writecache.txt b/Documentation/device-mapper/writecache.rst similarity index 96% rename from Documentation/device-mapper/writecache.txt rename to Documentation/device-mapper/writecache.rst index 01532b3008ae..d3d7690f5e8d 100644 --- a/Documentation/device-mapper/writecache.txt +++ b/Documentation/device-mapper/writecache.rst @@ -1,3 +1,7 @@ +================= +Writecache target +================= + The writecache target caches writes on persistent memory or on SSD. It doesn't cache reads because reads are supposed to be cached in page cache in normal RAM. @@ -6,15 +10,18 @@ When the device is constructed, the first sector should be zeroed or the first sector should contain valid superblock from previous invocation. Constructor parameters: + 1. type of the cache device - "p" or "s" - p - persistent memory - s - SSD + + - p - persistent memory + - s - SSD 2. the underlying device that will be cached 3. the cache device 4. block size (4096 is recommended; the maximum block size is the page size) 5. the number of optional parameters (the parameters with an argument count as two) + start_sector n (default: 0) offset from the start of cache device in 512-byte sectors high_watermark n (default: 50) @@ -43,6 +50,7 @@ Constructor parameters: applicable only to persistent memory - don't use the FUA flag when writing back data and send the FLUSH request afterwards + - some underlying devices perform better with fua, some with nofua. The user should test it @@ -60,6 +68,7 @@ Messages: flush the cache device on next suspend. Use this message when you are going to remove the cache device. The proper sequence for removing the cache device is: + 1. send the "flush_on_suspend" message 2. load an inactive table with a linear target that maps to the underlying device diff --git a/Documentation/device-mapper/zero.txt b/Documentation/device-mapper/zero.rst similarity index 83% rename from Documentation/device-mapper/zero.txt rename to Documentation/device-mapper/zero.rst index 20fb38e7fa7e..11fb5cf4597c 100644 --- a/Documentation/device-mapper/zero.txt +++ b/Documentation/device-mapper/zero.rst @@ -1,3 +1,4 @@ +======= dm-zero ======= @@ -18,20 +19,19 @@ filesystem limitations. To create a sparse device, start by creating a dm-zero device that's the desired size of the sparse device. For this example, we'll assume a 10TB -sparse device. +sparse device:: -TEN_TERABYTES=`expr 10 \* 1024 \* 1024 \* 1024 \* 2` # 10 TB in sectors -echo "0 $TEN_TERABYTES zero" | dmsetup create zero1 + TEN_TERABYTES=`expr 10 \* 1024 \* 1024 \* 1024 \* 2` # 10 TB in sectors + echo "0 $TEN_TERABYTES zero" | dmsetup create zero1 Then create a snapshot of the zero device, using any available block-device as the COW device. The size of the COW device will determine the amount of real space available to the sparse device. For this example, we'll assume /dev/sdb1 -is an available 10GB partition. +is an available 10GB partition:: -echo "0 $TEN_TERABYTES snapshot /dev/mapper/zero1 /dev/sdb1 p 128" | \ - dmsetup create sparse1 + echo "0 $TEN_TERABYTES snapshot /dev/mapper/zero1 /dev/sdb1 p 128" | \ + dmsetup create sparse1 This will create a 10TB sparse device called /dev/mapper/sparse1 that has 10GB of actual storage space available. If more than 10GB of data is written to this device, it will start returning I/O errors. - diff --git a/Documentation/filesystems/ubifs-authentication.md b/Documentation/filesystems/ubifs-authentication.md index 028b3e2e25f9..23e698167141 100644 --- a/Documentation/filesystems/ubifs-authentication.md +++ b/Documentation/filesystems/ubifs-authentication.md @@ -417,9 +417,9 @@ will then have to be provided beforehand in the normal way. [DMC-CBC-ATTACK] http://www.jakoblell.com/blog/2013/12/22/practical-malleability-attack-against-cbc-encrypted-luks-partitions/ -[DM-INTEGRITY] https://www.kernel.org/doc/Documentation/device-mapper/dm-integrity.txt +[DM-INTEGRITY] https://www.kernel.org/doc/Documentation/device-mapper/dm-integrity.rst -[DM-VERITY] https://www.kernel.org/doc/Documentation/device-mapper/verity.txt +[DM-VERITY] https://www.kernel.org/doc/Documentation/device-mapper/verity.rst [FSCRYPT-POLICY2] https://www.spinics.net/lists/linux-ext4/msg58710.html diff --git a/drivers/md/Kconfig b/drivers/md/Kconfig index 2557f198e175..5d58498fb84c 100644 --- a/drivers/md/Kconfig +++ b/drivers/md/Kconfig @@ -443,7 +443,7 @@ config DM_INIT Enable "dm-mod.create=" parameter to create mapped devices at init time. This option is useful to allow mounting rootfs without requiring an initramfs. - See Documentation/device-mapper/dm-init.txt for dm-mod.create="..." + See Documentation/device-mapper/dm-init.rst for dm-mod.create="..." format. If unsure, say N. diff --git a/drivers/md/dm-init.c b/drivers/md/dm-init.c index 4b76f84424c3..eedaef255ba3 100644 --- a/drivers/md/dm-init.c +++ b/drivers/md/dm-init.c @@ -25,7 +25,7 @@ static char *create; * Format: dm-mod.create=,,,,
[,
+][;,,,,
[,
+]+] * Table format: * - * See Documentation/device-mapper/dm-init.txt for dm-mod.create="..." format + * See Documentation/device-mapper/dm-init.rst for dm-mod.create="..." format * details. */ diff --git a/drivers/md/dm-raid.c b/drivers/md/dm-raid.c index 9fdef6897316..7a87a640f8ba 100644 --- a/drivers/md/dm-raid.c +++ b/drivers/md/dm-raid.c @@ -3558,7 +3558,7 @@ static void raid_status(struct dm_target *ti, status_type_t type, * v1.5.0+: * * Sync action: - * See Documentation/device-mapper/dm-raid.txt for + * See Documentation/device-mapper/dm-raid.rst for * information on each of these states. */ DMEMIT(" %s", sync_action); From patchwork Mon Apr 22 13:27:45 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Mauro Carvalho Chehab X-Patchwork-Id: 10912697 X-Patchwork-Delegate: snitzer@redhat.com Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 8B8DB112C for ; Tue, 23 Apr 2019 10:29:51 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6D2B3285CC for ; Tue, 23 Apr 2019 10:29:51 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5C0CA285CD; Tue, 23 Apr 2019 10:29:51 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI,WEIRD_PORT autolearn=unavailable version=3.3.1 Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 3D07728806 for ; Tue, 23 Apr 2019 10:29:45 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 77B9E30B4A09; Tue, 23 Apr 2019 10:29:43 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5261560C64; Tue, 23 Apr 2019 10:29:43 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 17FB23FA4A; Tue, 23 Apr 2019 10:29:43 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x3MDSumF021180 for ; Mon, 22 Apr 2019 09:28:56 -0400 Received: by smtp.corp.redhat.com (Postfix) id 180C35D730; Mon, 22 Apr 2019 13:28:56 +0000 (UTC) Delivered-To: dm-devel@redhat.com Received: from mx1.redhat.com (ext-mx11.extmail.prod.ext.phx2.redhat.com [10.5.110.40]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E6BED5D71D; Mon, 22 Apr 2019 13:28:48 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 22A9C308427C; Mon, 22 Apr 2019 13:28:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc: To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=0c5Xkvp//mcfaopbZajab54WGQddjZ0ytzGoej0m0k8=; b=GEr7MZjRaPWmzaaT/IJkzcZ0fX haZrk/XNLRcY6BkYcQEbMv4whU1UQaimd1NINN7Uet6ZOzXZ9UkAdS62e0Ab3t3I0GESPj9PyGljI 7qLXIDrbq4pjEg8tn350//xvi3z+k/MOOiS99SRnDA5e/JTdLzTz+aiEHtSpxj+4qknpJxeLq8hAD XrLpw8VwpA8uWeRceSQN4BPKEnCJzw/jPTr3nkPosHGvu9HBE+BQnmRVF9uZMXrM8rUE8YgPrdmqD AaYuieMJTK69n4NZBgFpTon/AbiBFQgf7GZ3S46RoczaVeu3WOqQEj8P0mKKGnjR1Y6xhrhvwjJrl zJVUqqtA==; Received: from 179.176.125.229.dynamic.adsl.gvt.net.br ([179.176.125.229] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtpsa (Exim 4.90_1 #2 (Red Hat Linux)) id 1hIYzZ-0005Hk-U5; Mon, 22 Apr 2019 13:28:19 +0000 Received: from mchehab by bombadil.infradead.org with local (Exim 4.92) (envelope-from ) id 1hIYzT-0005o1-Vz; Mon, 22 Apr 2019 10:28:12 -0300 From: Mauro Carvalho Chehab To: Linux Doc Mailing List Date: Mon, 22 Apr 2019 10:27:45 -0300 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Greylist: Sender passed SPF test, Sender IP whitelisted by DNSRBL, ACL 216 matched, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.40]); Mon, 22 Apr 2019 13:28:37 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.40]); Mon, 22 Apr 2019 13:28:37 +0000 (UTC) for IP:'198.137.202.133' DOMAIN:'bombadil.infradead.org' HELO:'bombadil.infradead.org' FROM:'mchehab@bombadil.infradead.org' RCPT:'' X-RedHat-Spam-Score: 0.202 (DKIM_INVALID, DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS, WEIRD_PORT) 198.137.202.133 bombadil.infradead.org 198.137.202.133 bombadil.infradead.org X-Scanned-By: MIMEDefang 2.84 on 10.5.110.40 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: dm-devel@redhat.com X-Mailman-Approved-At: Tue, 23 Apr 2019 06:28:28 -0400 Cc: Mike Snitzer , "Rafael J. Wysocki" , Linus Walleij , Farhan Ali , Will Deacon , dri-devel@lists.freedesktop.org, Jaroslav Kysela , Mauro Carvalho Chehab , Christoph Hellwig , Marek Szyprowski , linux-arch@vger.kernel.org, linux-sh@vger.kernel.org, James Morris , Halil Pasic , tboot-devel@lists.sourceforge.net, Alan Stern , openipmi-developer@lists.sourceforge.net, Guenter Roeck , Boqun Feng , Nicholas Piggin , Alex Williamson , Matt Mackall , Thomas Gleixner , Sean Paul , Greg Kroah-Hartman , linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org, linux-crypto@vger.kernel.org, Mark Rutland , linux-fbdev@vger.kernel.org, linux-ia64@vger.kernel.org, David Airlie , "James E.J. Bottomley" , dm-devel@redhat.com, Harry Wei , Manivannan Sadhasivam , Alasdair Kergon , linux-s390@vger.kernel.org, Alex Shi , Yoshinori Sato , Helge Deller , Sumit Semwal , Bartosz Golaszewski , Eric Farman , linux-watchdog@vger.kernel.org, Corey Minyard , Mauro Carvalho Chehab , linaro-mm-sig@lists.linaro.org, linux-gpio@vger.kernel.org, Bjorn Helgaas , linux-arm-kernel@lists.infradead.org, Tony Luck , Cornelia Huck , "David S. Miller" , Martin Schwidefsky , Andrea Parri , linux-pci@vger.kernel.org, Akira Yokosawa , Heiko Carstens , platform-driver-x86@vger.kernel.org, "Paul E. McKenney" , Jonathan Corbet , Kishon Vijay Abraham I , Peter Zijlstra , Emese Revfy , Darren Hart , Jade Alglave , "Serge E. Hallyn" , Fenghua Yu , Kees Cook , Arnd Bergmann , Bartlomiej Zolnierkiewicz , Ning Sun , Borislav Petkov , Luc Maranget , Kurt Schwemmer , Guan Xuetao , linux-parisc@vger.kernel.org, iommu@lists.linux-foundation.org, Stuart Hayes , Logan Gunthorpe , =?utf-8?q?Andreas_F=C3=A4rber?= , Rich Felker , kvm@vger.kernel.org, Maxime Ripard , Jerry Hoemann , David Howells , linux-mm@kvack.org, Kirti Wankhede , kernel-hardening@lists.openwall.com, "H. Peter Anvin" , sparclinux@vger.kernel.org, Steffen Klassert , Herbert Xu , x86@kernel.org, Russell King , Ingo Molnar , devicetree@vger.kernel.org, Daniel Lustig , Maarten Lankhorst , linux-block@vger.kernel.org, Rob Herring , Wim Van Sebroeck , Jens Axboe , netdev@vger.kernel.org, linux-security-module@vger.kernel.org, Daniel Vetter , Johannes Berg , Robin Murphy , Andy Shevchenko Subject: [dm-devel] [PATCH v2 56/79] docs: Documentation/*.txt: rename all ReST files to *.rst X-BeenThere: dm-devel@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: device-mapper development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dm-devel-bounces@redhat.com Errors-To: dm-devel-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.49]); Tue, 23 Apr 2019 10:29:44 +0000 (UTC) X-Virus-Scanned: ClamAV using ClamSMTP Those files are actually at ReST format. Ok, currently, they don't belong to any place yet at the organized book series, but we don't want patches to break them as ReST files. So, rename them and add a :orphan: in order to shut up warning messages like those: ... Documentation/svga.rst: WARNING: document isn't included in any toctree Documentation/switchtec.rst: WARNING: document isn't included in any toctree ... Later patches will move them to a better place and remove the :orphan: markup. Signed-off-by: Mauro Carvalho Chehab --- Documentation/ABI/removed/sysfs-class-rfkill | 2 +- Documentation/ABI/stable/sysfs-class-rfkill | 2 +- Documentation/ABI/stable/sysfs-devices-node | 2 +- Documentation/ABI/testing/procfs-diskstats | 2 +- Documentation/ABI/testing/sysfs-block | 2 +- .../ABI/testing/sysfs-class-switchtec | 2 +- .../ABI/testing/sysfs-devices-system-cpu | 4 +- .../{DMA-API-HOWTO.txt => DMA-API-HOWTO.rst} | 2 + Documentation/{DMA-API.txt => DMA-API.rst} | 8 ++- .../{DMA-ISA-LPC.txt => DMA-ISA-LPC.rst} | 4 +- ...{DMA-attributes.txt => DMA-attributes.rst} | 2 + Documentation/{IPMI.txt => IPMI.rst} | 2 + .../{IRQ-affinity.txt => IRQ-affinity.rst} | 2 + .../{IRQ-domain.txt => IRQ-domain.rst} | 2 + Documentation/{IRQ.txt => IRQ.rst} | 2 + .../{Intel-IOMMU.txt => Intel-IOMMU.rst} | 2 + Documentation/PCI/pci.txt | 8 +-- Documentation/{SAK.txt => SAK.rst} | 2 + Documentation/{SM501.txt => SM501.rst} | 2 + .../admin-guide/kernel-parameters.txt | 6 +- Documentation/admin-guide/l1tf.rst | 2 +- .../{atomic_bitops.txt => atomic_bitops.rst} | 2 + Documentation/block/biodoc.txt | 2 +- .../{bt8xxgpio.txt => bt8xxgpio.rst} | 2 + Documentation/{btmrvl.txt => btmrvl.rst} | 2 + ...-mapping.txt => bus-virt-phys-mapping.rst} | 4 +- ...g-warn-once.txt => clearing-warn-once.rst} | 2 + Documentation/{cpu-load.txt => cpu-load.rst} | 2 + .../{cputopology.txt => cputopology.rst} | 2 + Documentation/{crc32.txt => crc32.rst} | 2 + Documentation/{dcdbas.txt => dcdbas.rst} | 2 + ...ging-modules.txt => debugging-modules.rst} | 2 + ...hci1394.txt => debugging-via-ohci1394.rst} | 2 + Documentation/{dell_rbu.txt => dell_rbu.rst} | 2 + Documentation/device-mapper/statistics.rst | 4 +- .../devicetree/bindings/phy/phy-bindings.txt | 2 +- Documentation/{digsig.txt => digsig.rst} | 2 + Documentation/driver-api/usb/dma.rst | 6 +- Documentation/driver-model/device.rst | 2 +- Documentation/{efi-stub.txt => efi-stub.rst} | 2 + Documentation/{eisa.txt => eisa.rst} | 2 + Documentation/fb/vesafb.rst | 2 +- Documentation/filesystems/sysfs.txt | 2 +- ...ex-requeue-pi.txt => futex-requeue-pi.rst} | 2 + .../{gcc-plugins.txt => gcc-plugins.rst} | 2 + Documentation/gpu/drm-mm.rst | 2 +- Documentation/{highuid.txt => highuid.rst} | 2 + .../{hw_random.txt => hw_random.rst} | 2 + .../{hwspinlock.txt => hwspinlock.rst} | 2 + Documentation/ia64/IRQ-redir.txt | 2 +- .../{intel_txt.txt => intel_txt.rst} | 2 + .../{io-mapping.txt => io-mapping.rst} | 2 + .../{io_ordering.txt => io_ordering.rst} | 2 + Documentation/{iostats.txt => iostats.rst} | 2 + ...flags-tracing.txt => irqflags-tracing.rst} | 2 + Documentation/{isa.txt => isa.rst} | 2 + Documentation/{isapnp.txt => isapnp.rst} | 2 + ...hreads.txt => kernel-per-CPU-kthreads.rst} | 4 +- Documentation/{kobject.txt => kobject.rst} | 4 +- Documentation/{kprobes.txt => kprobes.rst} | 2 + Documentation/{kref.txt => kref.rst} | 2 + Documentation/laptops/thinkpad-acpi.txt | 6 +- Documentation/{ldm.txt => ldm.rst} | 2 + Documentation/locking/rt-mutex.rst | 2 +- ...kup-watchdogs.txt => lockup-watchdogs.rst} | 2 + Documentation/{lsm.txt => lsm.rst} | 2 + Documentation/{lzo.txt => lzo.rst} | 2 + Documentation/{mailbox.txt => mailbox.rst} | 2 + Documentation/memory-barriers.txt | 6 +- ...hameleon-bus.txt => men-chameleon-bus.rst} | 2 + Documentation/networking/scaling.rst | 4 +- .../{nommu-mmap.txt => nommu-mmap.rst} | 2 + Documentation/{ntb.txt => ntb.rst} | 2 + Documentation/{numastat.txt => numastat.rst} | 2 + Documentation/{padata.txt => padata.rst} | 2 + ...port-lowlevel.txt => parport-lowlevel.rst} | 2 + ...-semaphore.txt => percpu-rw-semaphore.rst} | 2 + Documentation/{phy.txt => phy.rst} | 2 + Documentation/{pi-futex.txt => pi-futex.rst} | 2 + Documentation/{pnp.txt => pnp.rst} | 2 + ...reempt-locking.txt => preempt-locking.rst} | 2 + Documentation/{pwm.txt => pwm.rst} | 2 + Documentation/{rbtree.txt => rbtree.rst} | 2 + .../{remoteproc.txt => remoteproc.rst} | 4 +- Documentation/{rfkill.txt => rfkill.rst} | 2 + ...ust-futex-ABI.txt => robust-futex-ABI.rst} | 2 + ...{robust-futexes.txt => robust-futexes.rst} | 2 + Documentation/{rpmsg.txt => rpmsg.rst} | 2 + Documentation/{rtc.txt => rtc.rst} | 2 + Documentation/s390/vfio-ccw.rst | 6 +- Documentation/{sgi-ioc4.txt => sgi-ioc4.rst} | 2 + Documentation/{siphash.txt => siphash.rst} | 2 + .../{smsc_ece1099.txt => smsc_ece1099.rst} | 2 + .../{speculation.txt => speculation.rst} | 2 + .../{static-keys.txt => static-keys.rst} | 2 + Documentation/{svga.txt => svga.rst} | 2 + .../{switchtec.txt => switchtec.rst} | 4 +- .../{sync_file.txt => sync_file.rst} | 2 + Documentation/sysctl/kernel.txt | 4 +- Documentation/sysctl/vm.txt | 2 +- Documentation/{tee.txt => tee.rst} | 2 + .../{this_cpu_ops.txt => this_cpu_ops.rst} | 2 + Documentation/trace/kprobetrace.rst | 2 +- .../translations/ko_KR/memory-barriers.txt | 6 +- Documentation/translations/zh_CN/IRQ.txt | 4 +- .../translations/zh_CN/filesystems/sysfs.txt | 2 +- .../translations/zh_CN/io_ordering.txt | 4 +- ...access.txt => unaligned-memory-access.rst} | 2 + ...ed-device.txt => vfio-mediated-device.rst} | 4 +- Documentation/{vfio.txt => vfio.rst} | 2 + .../{video-output.txt => video-output.rst} | 2 + Documentation/watchdog/hpwdt.rst | 2 +- Documentation/x86/topology.txt | 2 +- Documentation/{xillybus.txt => xillybus.rst} | 2 + Documentation/{xz.txt => xz.rst} | 2 + Documentation/{zorro.txt => zorro.rst} | 2 + MAINTAINERS | 56 +++++++++---------- arch/Kconfig | 4 +- arch/arm/Kconfig | 4 +- arch/ia64/hp/common/sba_iommu.c | 12 ++-- arch/ia64/sn/pci/pci_dma.c | 4 +- arch/parisc/Kconfig | 2 +- arch/parisc/kernel/pci-dma.c | 2 +- arch/sh/Kconfig | 2 +- arch/sparc/Kconfig | 2 +- arch/unicore32/include/asm/io.h | 2 +- arch/x86/Kconfig | 4 +- arch/x86/include/asm/dma-mapping.h | 4 +- arch/x86/kernel/amd_gart_64.c | 2 +- block/partitions/Kconfig | 2 +- drivers/base/core.c | 2 +- drivers/char/Kconfig | 4 +- drivers/char/hw_random/core.c | 2 +- drivers/char/ipmi/Kconfig | 2 +- drivers/char/ipmi/ipmi_si_hotmod.c | 2 +- drivers/char/ipmi/ipmi_si_intf.c | 2 +- drivers/dma-buf/Kconfig | 2 +- drivers/gpio/Kconfig | 2 +- drivers/parisc/sba_iommu.c | 16 +++--- drivers/pci/switch/Kconfig | 2 +- drivers/platform/x86/Kconfig | 4 +- drivers/platform/x86/dcdbas.c | 2 +- drivers/platform/x86/dell_rbu.c | 2 +- drivers/pnp/isapnp/Kconfig | 2 +- drivers/vfio/Kconfig | 2 +- drivers/vfio/mdev/Kconfig | 2 +- include/asm-generic/bitops/atomic.h | 2 +- include/linux/dma-mapping.h | 2 +- include/linux/hw_random.h | 2 +- include/linux/io-mapping.h | 2 +- include/linux/jump_label.h | 2 +- include/linux/kobject.h | 2 +- include/linux/kobject_ns.h | 2 +- include/linux/rbtree.h | 2 +- include/linux/rbtree_augmented.h | 2 +- include/media/videobuf-dma-sg.h | 2 +- init/Kconfig | 2 +- kernel/dma/debug.c | 2 +- kernel/padata.c | 2 +- lib/Kconfig | 2 +- lib/Kconfig.debug | 2 +- lib/crc32.c | 2 +- lib/kobject.c | 4 +- lib/lzo/lzo1x_decompress_safe.c | 2 +- lib/xz/Kconfig | 2 +- mm/Kconfig | 2 +- mm/nommu.c | 2 +- samples/kprobes/kprobe_example.c | 2 +- samples/kprobes/kretprobe_example.c | 2 +- scripts/gcc-plugins/Kconfig | 2 +- security/Kconfig | 2 +- tools/include/linux/rbtree.h | 2 +- tools/include/linux/rbtree_augmented.h | 2 +- 173 files changed, 334 insertions(+), 168 deletions(-) rename Documentation/{DMA-API-HOWTO.txt => DMA-API-HOWTO.rst} (99%) rename Documentation/{DMA-API.txt => DMA-API.rst} (99%) rename Documentation/{DMA-ISA-LPC.txt => DMA-ISA-LPC.rst} (98%) rename Documentation/{DMA-attributes.txt => DMA-attributes.rst} (99%) rename Documentation/{IPMI.txt => IPMI.rst} (99%) rename Documentation/{IRQ-affinity.txt => IRQ-affinity.rst} (99%) rename Documentation/{IRQ-domain.txt => IRQ-domain.rst} (99%) rename Documentation/{IRQ.txt => IRQ.rst} (99%) rename Documentation/{Intel-IOMMU.txt => Intel-IOMMU.rst} (99%) rename Documentation/{SAK.txt => SAK.rst} (99%) rename Documentation/{SM501.txt => SM501.rst} (99%) rename Documentation/{atomic_bitops.txt => atomic_bitops.rst} (99%) rename Documentation/{bt8xxgpio.txt => bt8xxgpio.rst} (99%) rename Documentation/{btmrvl.txt => btmrvl.rst} (99%) rename Documentation/{bus-virt-phys-mapping.txt => bus-virt-phys-mapping.rst} (99%) rename Documentation/{clearing-warn-once.txt => clearing-warn-once.rst} (96%) rename Documentation/{cpu-load.txt => cpu-load.rst} (99%) rename Documentation/{cputopology.txt => cputopology.rst} (99%) rename Documentation/{crc32.txt => crc32.rst} (99%) rename Documentation/{dcdbas.txt => dcdbas.rst} (99%) rename Documentation/{debugging-modules.txt => debugging-modules.rst} (98%) rename Documentation/{debugging-via-ohci1394.txt => debugging-via-ohci1394.rst} (99%) rename Documentation/{dell_rbu.txt => dell_rbu.rst} (99%) rename Documentation/{digsig.txt => digsig.rst} (99%) rename Documentation/{efi-stub.txt => efi-stub.rst} (99%) rename Documentation/{eisa.txt => eisa.rst} (99%) rename Documentation/{futex-requeue-pi.txt => futex-requeue-pi.rst} (99%) rename Documentation/{gcc-plugins.txt => gcc-plugins.rst} (99%) rename Documentation/{highuid.txt => highuid.rst} (99%) rename Documentation/{hw_random.txt => hw_random.rst} (99%) rename Documentation/{hwspinlock.txt => hwspinlock.rst} (99%) rename Documentation/{intel_txt.txt => intel_txt.rst} (99%) rename Documentation/{io-mapping.txt => io-mapping.rst} (99%) rename Documentation/{io_ordering.txt => io_ordering.rst} (99%) rename Documentation/{iostats.txt => iostats.rst} (99%) rename Documentation/{irqflags-tracing.txt => irqflags-tracing.rst} (99%) rename Documentation/{isa.txt => isa.rst} (99%) rename Documentation/{isapnp.txt => isapnp.rst} (98%) rename Documentation/{kernel-per-CPU-kthreads.txt => kernel-per-CPU-kthreads.rst} (99%) rename Documentation/{kobject.txt => kobject.rst} (99%) rename Documentation/{kprobes.txt => kprobes.rst} (99%) rename Documentation/{kref.txt => kref.rst} (99%) rename Documentation/{ldm.txt => ldm.rst} (99%) rename Documentation/{lockup-watchdogs.txt => lockup-watchdogs.rst} (99%) rename Documentation/{lsm.txt => lsm.rst} (99%) rename Documentation/{lzo.txt => lzo.rst} (99%) rename Documentation/{mailbox.txt => mailbox.rst} (99%) rename Documentation/{men-chameleon-bus.txt => men-chameleon-bus.rst} (99%) rename Documentation/{nommu-mmap.txt => nommu-mmap.rst} (99%) rename Documentation/{ntb.txt => ntb.rst} (99%) rename Documentation/{numastat.txt => numastat.rst} (99%) rename Documentation/{padata.txt => padata.rst} (99%) rename Documentation/{parport-lowlevel.txt => parport-lowlevel.rst} (99%) rename Documentation/{percpu-rw-semaphore.txt => percpu-rw-semaphore.rst} (99%) rename Documentation/{phy.txt => phy.rst} (99%) rename Documentation/{pi-futex.txt => pi-futex.rst} (99%) rename Documentation/{pnp.txt => pnp.rst} (99%) rename Documentation/{preempt-locking.txt => preempt-locking.rst} (99%) rename Documentation/{pwm.txt => pwm.rst} (99%) rename Documentation/{rbtree.txt => rbtree.rst} (99%) rename Documentation/{remoteproc.txt => remoteproc.rst} (99%) rename Documentation/{rfkill.txt => rfkill.rst} (99%) rename Documentation/{robust-futex-ABI.txt => robust-futex-ABI.rst} (99%) rename Documentation/{robust-futexes.txt => robust-futexes.rst} (99%) rename Documentation/{rpmsg.txt => rpmsg.rst} (99%) rename Documentation/{rtc.txt => rtc.rst} (99%) rename Documentation/{sgi-ioc4.txt => sgi-ioc4.rst} (99%) rename Documentation/{siphash.txt => siphash.rst} (99%) rename Documentation/{smsc_ece1099.txt => smsc_ece1099.rst} (99%) rename Documentation/{speculation.txt => speculation.rst} (99%) rename Documentation/{static-keys.txt => static-keys.rst} (99%) rename Documentation/{svga.txt => svga.rst} (99%) rename Documentation/{switchtec.txt => switchtec.rst} (98%) rename Documentation/{sync_file.txt => sync_file.rst} (99%) rename Documentation/{tee.txt => tee.rst} (99%) rename Documentation/{this_cpu_ops.txt => this_cpu_ops.rst} (99%) rename Documentation/{unaligned-memory-access.txt => unaligned-memory-access.rst} (99%) rename Documentation/{vfio-mediated-device.txt => vfio-mediated-device.rst} (99%) rename Documentation/{vfio.txt => vfio.rst} (99%) rename Documentation/{video-output.txt => video-output.rst} (99%) rename Documentation/{xillybus.txt => xillybus.rst} (99%) rename Documentation/{xz.txt => xz.rst} (99%) rename Documentation/{zorro.txt => zorro.rst} (99%) diff --git a/Documentation/ABI/removed/sysfs-class-rfkill b/Documentation/ABI/removed/sysfs-class-rfkill index 3ce6231f20b2..1652b2381dda 100644 --- a/Documentation/ABI/removed/sysfs-class-rfkill +++ b/Documentation/ABI/removed/sysfs-class-rfkill @@ -1,6 +1,6 @@ rfkill - radio frequency (RF) connector kill switch support -For details to this subsystem look at Documentation/rfkill.txt. +For details to this subsystem look at Documentation/rfkill.rst. What: /sys/class/rfkill/rfkill[0-9]+/claim Date: 09-Jul-2007 diff --git a/Documentation/ABI/stable/sysfs-class-rfkill b/Documentation/ABI/stable/sysfs-class-rfkill index 80151a409d67..68fd0afdad0d 100644 --- a/Documentation/ABI/stable/sysfs-class-rfkill +++ b/Documentation/ABI/stable/sysfs-class-rfkill @@ -1,6 +1,6 @@ rfkill - radio frequency (RF) connector kill switch support -For details to this subsystem look at Documentation/rfkill.txt. +For details to this subsystem look at Documentation/rfkill.rst. For the deprecated /sys/class/rfkill/*/claim knobs of this interface look in Documentation/ABI/removed/sysfs-class-rfkill. diff --git a/Documentation/ABI/stable/sysfs-devices-node b/Documentation/ABI/stable/sysfs-devices-node index f7ce68fbd4b9..de1d022c0864 100644 --- a/Documentation/ABI/stable/sysfs-devices-node +++ b/Documentation/ABI/stable/sysfs-devices-node @@ -61,7 +61,7 @@ Date: October 2002 Contact: Linux Memory Management list Description: The node's hit/miss statistics, in units of pages. - See Documentation/numastat.txt + See Documentation/numastat.rst What: /sys/devices/system/node/nodeX/distance Date: October 2002 diff --git a/Documentation/ABI/testing/procfs-diskstats b/Documentation/ABI/testing/procfs-diskstats index abac31d216de..26661dd5188b 100644 --- a/Documentation/ABI/testing/procfs-diskstats +++ b/Documentation/ABI/testing/procfs-diskstats @@ -29,4 +29,4 @@ Description: 17 - sectors discarded 18 - time spent discarding - For more details refer to Documentation/iostats.txt + For more details refer to Documentation/iostats.rst diff --git a/Documentation/ABI/testing/sysfs-block b/Documentation/ABI/testing/sysfs-block index dfad7427817c..d300a6b9d17c 100644 --- a/Documentation/ABI/testing/sysfs-block +++ b/Documentation/ABI/testing/sysfs-block @@ -15,7 +15,7 @@ Description: 9 - I/Os currently in progress 10 - time spent doing I/Os (ms) 11 - weighted time spent doing I/Os (ms) - For more details refer Documentation/iostats.txt + For more details refer Documentation/iostats.rst What: /sys/block///stat diff --git a/Documentation/ABI/testing/sysfs-class-switchtec b/Documentation/ABI/testing/sysfs-class-switchtec index 48cb4c15e430..c8d80db1e32c 100644 --- a/Documentation/ABI/testing/sysfs-class-switchtec +++ b/Documentation/ABI/testing/sysfs-class-switchtec @@ -1,6 +1,6 @@ switchtec - Microsemi Switchtec PCI Switch Management Endpoint -For details on this subsystem look at Documentation/switchtec.txt. +For details on this subsystem look at Documentation/switchtec.rst. What: /sys/class/switchtec Date: 05-Jan-2017 diff --git a/Documentation/ABI/testing/sysfs-devices-system-cpu b/Documentation/ABI/testing/sysfs-devices-system-cpu index 4fb76c0e8d30..4ee760342c62 100644 --- a/Documentation/ABI/testing/sysfs-devices-system-cpu +++ b/Documentation/ABI/testing/sysfs-devices-system-cpu @@ -34,7 +34,7 @@ Description: CPU topology files that describe kernel limits related to present: cpus that have been identified as being present in the system. - See Documentation/cputopology.txt for more information. + See Documentation/cputopology.rst for more information. What: /sys/devices/system/cpu/probe @@ -103,7 +103,7 @@ Description: CPU topology files that describe a logical CPU's relationship thread_siblings_list: human-readable list of cpu#'s hardware threads within the same core as cpu# - See Documentation/cputopology.txt for more information. + See Documentation/cputopology.rst for more information. What: /sys/devices/system/cpu/cpuidle/current_driver diff --git a/Documentation/DMA-API-HOWTO.txt b/Documentation/DMA-API-HOWTO.rst similarity index 99% rename from Documentation/DMA-API-HOWTO.txt rename to Documentation/DMA-API-HOWTO.rst index cb712a02f59f..0b72bf9051ed 100644 --- a/Documentation/DMA-API-HOWTO.txt +++ b/Documentation/DMA-API-HOWTO.rst @@ -1,3 +1,5 @@ +:orphan: + ========================= Dynamic DMA mapping Guide ========================= diff --git a/Documentation/DMA-API.txt b/Documentation/DMA-API.rst similarity index 99% rename from Documentation/DMA-API.txt rename to Documentation/DMA-API.rst index 0076150fdccb..ede74c6ae87d 100644 --- a/Documentation/DMA-API.txt +++ b/Documentation/DMA-API.rst @@ -1,3 +1,5 @@ +:orphan: + ============================================ Dynamic DMA mapping using the generic device ============================================ @@ -5,7 +7,7 @@ Dynamic DMA mapping using the generic device :Author: James E.J. Bottomley This document describes the DMA API. For a more gentle introduction -of the API (and actual examples), see Documentation/DMA-API-HOWTO.txt. +of the API (and actual examples), see Documentation/DMA-API-HOWTO.rst. This API is split into two pieces. Part I describes the basic API. Part II describes extensions for supporting non-consistent memory @@ -463,7 +465,7 @@ without the _attrs suffixes, except that they pass an optional dma_attrs. The interpretation of DMA attributes is architecture-specific, and -each attribute should be documented in Documentation/DMA-attributes.txt. +each attribute should be documented in Documentation/DMA-attributes.rst. If dma_attrs are 0, the semantics of each of these functions is identical to those of the corresponding function @@ -476,7 +478,7 @@ for DMA:: #include /* DMA_ATTR_FOO should be defined in linux/dma-mapping.h and - * documented in Documentation/DMA-attributes.txt */ + * documented in Documentation/DMA-attributes.rst */ ... unsigned long attr; diff --git a/Documentation/DMA-ISA-LPC.txt b/Documentation/DMA-ISA-LPC.rst similarity index 98% rename from Documentation/DMA-ISA-LPC.txt rename to Documentation/DMA-ISA-LPC.rst index b1ec7b16c21f..205a379c2d62 100644 --- a/Documentation/DMA-ISA-LPC.txt +++ b/Documentation/DMA-ISA-LPC.rst @@ -1,3 +1,5 @@ +:orphan: + ============================ DMA with ISA and LPC devices ============================ @@ -17,7 +19,7 @@ To do ISA style DMA you need to include two headers:: #include The first is the generic DMA API used to convert virtual addresses to -bus addresses (see Documentation/DMA-API.txt for details). +bus addresses (see Documentation/DMA-API.rst for details). The second contains the routines specific to ISA DMA transfers. Since this is not present on all platforms make sure you construct your diff --git a/Documentation/DMA-attributes.txt b/Documentation/DMA-attributes.rst similarity index 99% rename from Documentation/DMA-attributes.txt rename to Documentation/DMA-attributes.rst index 8f8d97f65d73..471c5c38f9d9 100644 --- a/Documentation/DMA-attributes.txt +++ b/Documentation/DMA-attributes.rst @@ -1,3 +1,5 @@ +:orphan: + ============== DMA attributes ============== diff --git a/Documentation/IPMI.txt b/Documentation/IPMI.rst similarity index 99% rename from Documentation/IPMI.txt rename to Documentation/IPMI.rst index 5ef1047e2e66..f6c2d11710fe 100644 --- a/Documentation/IPMI.txt +++ b/Documentation/IPMI.rst @@ -1,3 +1,5 @@ +:orphan: + ===================== The Linux IPMI Driver ===================== diff --git a/Documentation/IRQ-affinity.txt b/Documentation/IRQ-affinity.rst similarity index 99% rename from Documentation/IRQ-affinity.txt rename to Documentation/IRQ-affinity.rst index 29da5000836a..49ba271349d6 100644 --- a/Documentation/IRQ-affinity.txt +++ b/Documentation/IRQ-affinity.rst @@ -1,3 +1,5 @@ +:orphan: + ================ SMP IRQ affinity ================ diff --git a/Documentation/IRQ-domain.txt b/Documentation/IRQ-domain.rst similarity index 99% rename from Documentation/IRQ-domain.txt rename to Documentation/IRQ-domain.rst index 507775cce753..a610a8ea9a92 100644 --- a/Documentation/IRQ-domain.txt +++ b/Documentation/IRQ-domain.rst @@ -1,3 +1,5 @@ +:orphan: + =============================================== The irq_domain interrupt number mapping library =============================================== diff --git a/Documentation/IRQ.txt b/Documentation/IRQ.rst similarity index 99% rename from Documentation/IRQ.txt rename to Documentation/IRQ.rst index 4273806a606b..a9f3e192c2cb 100644 --- a/Documentation/IRQ.txt +++ b/Documentation/IRQ.rst @@ -1,3 +1,5 @@ +:orphan: + =============== What is an IRQ? =============== diff --git a/Documentation/Intel-IOMMU.txt b/Documentation/Intel-IOMMU.rst similarity index 99% rename from Documentation/Intel-IOMMU.txt rename to Documentation/Intel-IOMMU.rst index 9dae6b47e398..b001104c25c8 100644 --- a/Documentation/Intel-IOMMU.txt +++ b/Documentation/Intel-IOMMU.rst @@ -1,3 +1,5 @@ +:orphan: + =================== Linux IOMMU Support =================== diff --git a/Documentation/PCI/pci.txt b/Documentation/PCI/pci.txt index bbbae19f10b0..8f0009b6ea1d 100644 --- a/Documentation/PCI/pci.txt +++ b/Documentation/PCI/pci.txt @@ -295,7 +295,7 @@ from the PCI device config space. Use the values in the pci_dev structure as the PCI "bus address" might have been remapped to a "host physical" address by the arch/chip-set specific kernel support. -See Documentation/io-mapping.txt for how to access device registers +See Documentation/io-mapping.rst for how to access device registers or device memory. The device driver needs to call pci_request_region() to verify @@ -319,7 +319,7 @@ Also see pci_request_selected_regions() below. 3.3 Set the DMA mask size ~~~~~~~~~~~~~~~~~~~~~~~~~ [ If anything below doesn't make sense, please refer to - Documentation/DMA-API.txt. This section is just a reminder that + Documentation/DMA-API.rst. This section is just a reminder that drivers need to indicate DMA capabilities of the device and is not an authoritative source for DMA interfaces. ] @@ -345,7 +345,7 @@ Many 64-bit "PCI" devices (before PCI-X) and some PCI-X devices are 3.4 Setup shared control data ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Once the DMA masks are set, the driver can allocate "consistent" (a.k.a. shared) -memory. See Documentation/DMA-API.txt for a full description of +memory. See Documentation/DMA-API.rst for a full description of the DMA APIs. This section is just a reminder that it needs to be done before enabling DMA on the device. @@ -475,7 +475,7 @@ owners if there is one. Then clean up "consistent" buffers which contain the control data. -See Documentation/DMA-API.txt for details on unmapping interfaces. +See Documentation/DMA-API.rst for details on unmapping interfaces. 4.5 Unregister from other subsystems diff --git a/Documentation/SAK.txt b/Documentation/SAK.rst similarity index 99% rename from Documentation/SAK.txt rename to Documentation/SAK.rst index 260e1d3687bd..c6fe715f5518 100644 --- a/Documentation/SAK.txt +++ b/Documentation/SAK.rst @@ -1,3 +1,5 @@ +:orphan: + ========================================= Linux Secure Attention Key (SAK) handling ========================================= diff --git a/Documentation/SM501.txt b/Documentation/SM501.rst similarity index 99% rename from Documentation/SM501.txt rename to Documentation/SM501.rst index 882507453ba4..772a9b5c7d49 100644 --- a/Documentation/SM501.txt +++ b/Documentation/SM501.rst @@ -1,3 +1,5 @@ +:orphan: + .. include:: ============ diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt index 4a2260eac131..bf6d34fb7180 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt @@ -3077,7 +3077,7 @@ See Documentation/sysctl/vm.txt for details. ohci1394_dma=early [HW] enable debugging via the ohci1394 driver. - See Documentation/debugging-via-ohci1394.txt for more + See Documentation/debugging-via-ohci1394.rst for more info. olpc_ec_timeout= [OLPC] ms delay when issuing EC commands @@ -4986,8 +4986,8 @@ Can be used multiple times for multiple devices. vga= [BOOT,X86-32] Select a particular video mode - See Documentation/x86/boot.txt and - Documentation/svga.txt. + See Documentation/x86/boot.rst and + Documentation/svga.rst. Use vga=ask for menu. This is actually a boot loader parameter; the value is passed to the kernel using a special protocol. diff --git a/Documentation/admin-guide/l1tf.rst b/Documentation/admin-guide/l1tf.rst index f5b2a54a0dc2..ab162d65e178 100644 --- a/Documentation/admin-guide/l1tf.rst +++ b/Documentation/admin-guide/l1tf.rst @@ -268,7 +268,7 @@ Guest mitigation mechanisms /proc/irq/$NR/smp_affinity[_list] files. Limited documentation is available at: - https://www.kernel.org/doc/Documentation/IRQ-affinity.txt + https://www.kernel.org/doc/Documentation/IRQ-affinity.rst .. _smt_control: diff --git a/Documentation/atomic_bitops.txt b/Documentation/atomic_bitops.rst similarity index 99% rename from Documentation/atomic_bitops.txt rename to Documentation/atomic_bitops.rst index 093cdaefdb37..ca90f2d16602 100644 --- a/Documentation/atomic_bitops.txt +++ b/Documentation/atomic_bitops.rst @@ -1,3 +1,5 @@ +:orphan: + ============= Atomic bitops ============= diff --git a/Documentation/block/biodoc.txt b/Documentation/block/biodoc.txt index ac18b488cb5e..ac504de0cb93 100644 --- a/Documentation/block/biodoc.txt +++ b/Documentation/block/biodoc.txt @@ -184,7 +184,7 @@ a virtual address mapping (unlike the earlier scheme of virtual address do not have a corresponding kernel virtual address space mapping) and low-memory pages. -Note: Please refer to Documentation/DMA-API-HOWTO.txt for a discussion +Note: Please refer to Documentation/DMA-API-HOWTO.rst for a discussion on PCI high mem DMA aspects and mapping of scatter gather lists, and support for 64 bit PCI. diff --git a/Documentation/bt8xxgpio.txt b/Documentation/bt8xxgpio.rst similarity index 99% rename from Documentation/bt8xxgpio.txt rename to Documentation/bt8xxgpio.rst index a845feb074de..efda63a77f18 100644 --- a/Documentation/bt8xxgpio.txt +++ b/Documentation/bt8xxgpio.rst @@ -1,3 +1,5 @@ +:orphan: + =================================================================== A driver for a selfmade cheap BT8xx based PCI GPIO-card (bt8xxgpio) =================================================================== diff --git a/Documentation/btmrvl.txt b/Documentation/btmrvl.rst similarity index 99% rename from Documentation/btmrvl.txt rename to Documentation/btmrvl.rst index ec57740ead0c..e6dd1c96e842 100644 --- a/Documentation/btmrvl.txt +++ b/Documentation/btmrvl.rst @@ -1,3 +1,5 @@ +:orphan: + ============= btmrvl driver ============= diff --git a/Documentation/bus-virt-phys-mapping.txt b/Documentation/bus-virt-phys-mapping.rst similarity index 99% rename from Documentation/bus-virt-phys-mapping.txt rename to Documentation/bus-virt-phys-mapping.rst index 4bb07c2f3e7d..0f22390b980a 100644 --- a/Documentation/bus-virt-phys-mapping.txt +++ b/Documentation/bus-virt-phys-mapping.rst @@ -1,3 +1,5 @@ +:orphan: + ========================================================== How to access I/O mapped memory from within device drivers ========================================================== @@ -8,7 +10,7 @@ How to access I/O mapped memory from within device drivers The virt_to_bus() and bus_to_virt() functions have been superseded by the functionality provided by the PCI DMA interface - (see Documentation/DMA-API-HOWTO.txt). They continue + (see Documentation/DMA-API-HOWTO.rst). They continue to be documented below for historical purposes, but new code must not use them. --davidm 00/12/12 diff --git a/Documentation/clearing-warn-once.txt b/Documentation/clearing-warn-once.rst similarity index 96% rename from Documentation/clearing-warn-once.txt rename to Documentation/clearing-warn-once.rst index 211fd926cf00..cdfa892c7fdf 100644 --- a/Documentation/clearing-warn-once.txt +++ b/Documentation/clearing-warn-once.rst @@ -1,3 +1,5 @@ +:orphan: + Clearing WARN_ONCE ------------------ diff --git a/Documentation/cpu-load.txt b/Documentation/cpu-load.rst similarity index 99% rename from Documentation/cpu-load.txt rename to Documentation/cpu-load.rst index 2d01ce43d2a2..6b2815b78683 100644 --- a/Documentation/cpu-load.txt +++ b/Documentation/cpu-load.rst @@ -1,3 +1,5 @@ +:orphan: + ======== CPU load ======== diff --git a/Documentation/cputopology.txt b/Documentation/cputopology.rst similarity index 99% rename from Documentation/cputopology.txt rename to Documentation/cputopology.rst index c6e7e9196a8b..cce9cedd2996 100644 --- a/Documentation/cputopology.txt +++ b/Documentation/cputopology.rst @@ -1,3 +1,5 @@ +:orphan: + =========================================== How CPU topology info is exported via sysfs =========================================== diff --git a/Documentation/crc32.txt b/Documentation/crc32.rst similarity index 99% rename from Documentation/crc32.txt rename to Documentation/crc32.rst index 8a6860f33b4e..f7c73d713a35 100644 --- a/Documentation/crc32.txt +++ b/Documentation/crc32.rst @@ -1,3 +1,5 @@ +:orphan: + ================================= brief tutorial on CRC computation ================================= diff --git a/Documentation/dcdbas.txt b/Documentation/dcdbas.rst similarity index 99% rename from Documentation/dcdbas.txt rename to Documentation/dcdbas.rst index 309cc57a7c1c..abbc2bfd58a7 100644 --- a/Documentation/dcdbas.txt +++ b/Documentation/dcdbas.rst @@ -1,3 +1,5 @@ +:orphan: + =================================== Dell Systems Management Base Driver =================================== diff --git a/Documentation/debugging-modules.txt b/Documentation/debugging-modules.rst similarity index 98% rename from Documentation/debugging-modules.txt rename to Documentation/debugging-modules.rst index 172ad4aec493..994f4b021a81 100644 --- a/Documentation/debugging-modules.txt +++ b/Documentation/debugging-modules.rst @@ -1,3 +1,5 @@ +:orphan: + Debugging Modules after 2.6.3 ----------------------------- diff --git a/Documentation/debugging-via-ohci1394.txt b/Documentation/debugging-via-ohci1394.rst similarity index 99% rename from Documentation/debugging-via-ohci1394.txt rename to Documentation/debugging-via-ohci1394.rst index 981ad4f89fd3..ead0196d94b7 100644 --- a/Documentation/debugging-via-ohci1394.txt +++ b/Documentation/debugging-via-ohci1394.rst @@ -1,3 +1,5 @@ +:orphan: + =========================================================================== Using physical DMA provided by OHCI-1394 FireWire controllers for debugging =========================================================================== diff --git a/Documentation/dell_rbu.txt b/Documentation/dell_rbu.rst similarity index 99% rename from Documentation/dell_rbu.txt rename to Documentation/dell_rbu.rst index 5d1ce7bcd04d..1104726616a1 100644 --- a/Documentation/dell_rbu.txt +++ b/Documentation/dell_rbu.rst @@ -1,3 +1,5 @@ +:orphan: + ============================================================= Usage of the new open sourced rbu (Remote BIOS Update) driver ============================================================= diff --git a/Documentation/device-mapper/statistics.rst b/Documentation/device-mapper/statistics.rst index 3d80a9f850cc..39f74af35abb 100644 --- a/Documentation/device-mapper/statistics.rst +++ b/Documentation/device-mapper/statistics.rst @@ -13,7 +13,7 @@ the range specified. The I/O statistics counters for each step-sized area of a region are in the same format as `/sys/block/*/stat` or `/proc/diskstats` (see: -Documentation/iostats.txt). But two extra counters (12 and 13) are +Documentation/iostats.rst). But two extra counters (12 and 13) are provided: total time spent reading and writing. When the histogram argument is used, the 14th parameter is reported that represents the histogram of latencies. All these counters may be accessed by sending @@ -151,7 +151,7 @@ Messages The first 11 counters have the same meaning as `/sys/block/*/stat or /proc/diskstats`. - Please refer to Documentation/iostats.txt for details. + Please refer to Documentation/iostats.rst for details. 1. the number of reads completed 2. the number of reads merged diff --git a/Documentation/devicetree/bindings/phy/phy-bindings.txt b/Documentation/devicetree/bindings/phy/phy-bindings.txt index a403b81d0679..5e2a53bcba0e 100644 --- a/Documentation/devicetree/bindings/phy/phy-bindings.txt +++ b/Documentation/devicetree/bindings/phy/phy-bindings.txt @@ -1,5 +1,5 @@ This document explains only the device tree data binding. For general -information about PHY subsystem refer to Documentation/phy.txt +information about PHY subsystem refer to Documentation/phy.rst PHY device node =============== diff --git a/Documentation/digsig.txt b/Documentation/digsig.rst similarity index 99% rename from Documentation/digsig.txt rename to Documentation/digsig.rst index f6a8902d3ef7..3597711d0df1 100644 --- a/Documentation/digsig.txt +++ b/Documentation/digsig.rst @@ -1,3 +1,5 @@ +:orphan: + ================================== Digital Signature Verification API ================================== diff --git a/Documentation/driver-api/usb/dma.rst b/Documentation/driver-api/usb/dma.rst index 59d5aee89e37..12955a77c7fe 100644 --- a/Documentation/driver-api/usb/dma.rst +++ b/Documentation/driver-api/usb/dma.rst @@ -10,7 +10,7 @@ API overview The big picture is that USB drivers can continue to ignore most DMA issues, though they still must provide DMA-ready buffers (see -``Documentation/DMA-API-HOWTO.txt``). That's how they've worked through +``Documentation/DMA-API-HOWTO.rst``). That's how they've worked through the 2.4 (and earlier) kernels, or they can now be DMA-aware. DMA-aware usb drivers: @@ -60,7 +60,7 @@ and effects like cache-trashing can impose subtle penalties. force a consistent memory access ordering by using memory barriers. It's not using a streaming DMA mapping, so it's good for small transfers on systems where the I/O would otherwise thrash an IOMMU mapping. (See - ``Documentation/DMA-API-HOWTO.txt`` for definitions of "coherent" and + ``Documentation/DMA-API-HOWTO.rst`` for definitions of "coherent" and "streaming" DMA mappings.) Asking for 1/Nth of a page (as well as asking for N pages) is reasonably @@ -91,7 +91,7 @@ Working with existing buffers Existing buffers aren't usable for DMA without first being mapped into the DMA address space of the device. However, most buffers passed to your driver can safely be used with such DMA mapping. (See the first section -of Documentation/DMA-API-HOWTO.txt, titled "What memory is DMA-able?") +of Documentation/DMA-API-HOWTO.rst, titled "What memory is DMA-able?") - When you're using scatterlists, you can map everything at once. On some systems, this kicks in an IOMMU and turns the scatterlists into single diff --git a/Documentation/driver-model/device.rst b/Documentation/driver-model/device.rst index 2b868d49d349..17bcc483c4b1 100644 --- a/Documentation/driver-model/device.rst +++ b/Documentation/driver-model/device.rst @@ -53,7 +53,7 @@ Attributes of devices can be exported by a device driver through sysfs. Please see Documentation/filesystems/sysfs.txt for more information on how sysfs works. -As explained in Documentation/kobject.txt, device attributes must be +As explained in Documentation/kobject.rst, device attributes must be created before the KOBJ_ADD uevent is generated. The only way to realize that is by defining an attribute group. diff --git a/Documentation/efi-stub.txt b/Documentation/efi-stub.rst similarity index 99% rename from Documentation/efi-stub.txt rename to Documentation/efi-stub.rst index 833edb0d0bc4..29256cad8af3 100644 --- a/Documentation/efi-stub.txt +++ b/Documentation/efi-stub.rst @@ -1,3 +1,5 @@ +:orphan: + ================= The EFI Boot Stub ================= diff --git a/Documentation/eisa.txt b/Documentation/eisa.rst similarity index 99% rename from Documentation/eisa.txt rename to Documentation/eisa.rst index f388545a85a7..d98949908405 100644 --- a/Documentation/eisa.txt +++ b/Documentation/eisa.rst @@ -1,3 +1,5 @@ +:orphan: + ================ EISA bus support ================ diff --git a/Documentation/fb/vesafb.rst b/Documentation/fb/vesafb.rst index 2ed0dfb661cf..a0b658091b07 100644 --- a/Documentation/fb/vesafb.rst +++ b/Documentation/fb/vesafb.rst @@ -30,7 +30,7 @@ How to use it? ============== Switching modes is done using the vga=... boot parameter. Read -Documentation/svga.txt for details. +Documentation/svga.rst for details. You should compile in both vgacon (for text mode) and vesafb (for graphics mode). Which of them takes over the console depends on diff --git a/Documentation/filesystems/sysfs.txt b/Documentation/filesystems/sysfs.txt index 5b5311f9358d..d159826c5cf3 100644 --- a/Documentation/filesystems/sysfs.txt +++ b/Documentation/filesystems/sysfs.txt @@ -16,7 +16,7 @@ a means to export kernel data structures, their attributes, and the linkages between them to userspace. sysfs is tied inherently to the kobject infrastructure. Please read -Documentation/kobject.txt for more information concerning the kobject +Documentation/kobject.rst for more information concerning the kobject interface. diff --git a/Documentation/futex-requeue-pi.txt b/Documentation/futex-requeue-pi.rst similarity index 99% rename from Documentation/futex-requeue-pi.txt rename to Documentation/futex-requeue-pi.rst index 14ab5787b9a7..a90dbff26629 100644 --- a/Documentation/futex-requeue-pi.txt +++ b/Documentation/futex-requeue-pi.rst @@ -1,3 +1,5 @@ +:orphan: + ================ Futex Requeue PI ================ diff --git a/Documentation/gcc-plugins.txt b/Documentation/gcc-plugins.rst similarity index 99% rename from Documentation/gcc-plugins.txt rename to Documentation/gcc-plugins.rst index 8502f24396fb..e08d013c6de2 100644 --- a/Documentation/gcc-plugins.txt +++ b/Documentation/gcc-plugins.rst @@ -1,3 +1,5 @@ +:orphan: + ========================= GCC plugin infrastructure ========================= diff --git a/Documentation/gpu/drm-mm.rst b/Documentation/gpu/drm-mm.rst index 54a696d961a7..adadaf796dce 100644 --- a/Documentation/gpu/drm-mm.rst +++ b/Documentation/gpu/drm-mm.rst @@ -321,7 +321,7 @@ struct :c:type:`struct file_operations ` get_unmapped_area field with a pointer on :c:func:`drm_gem_cma_get_unmapped_area`. More detailed information about get_unmapped_area can be found in -Documentation/nommu-mmap.txt +Documentation/nommu-mmap.rst Memory Coherency ---------------- diff --git a/Documentation/highuid.txt b/Documentation/highuid.rst similarity index 99% rename from Documentation/highuid.txt rename to Documentation/highuid.rst index 6ee70465c0ea..f2fcf729f64c 100644 --- a/Documentation/highuid.txt +++ b/Documentation/highuid.rst @@ -1,3 +1,5 @@ +:orphan: + =================================================== Notes on the change from 16-bit UIDs to 32-bit UIDs =================================================== diff --git a/Documentation/hw_random.txt b/Documentation/hw_random.rst similarity index 99% rename from Documentation/hw_random.txt rename to Documentation/hw_random.rst index 121de96e395e..fb5e32fae384 100644 --- a/Documentation/hw_random.txt +++ b/Documentation/hw_random.rst @@ -1,3 +1,5 @@ +:orphan: + ========================================================== Linux support for random number generator in i8xx chipsets ========================================================== diff --git a/Documentation/hwspinlock.txt b/Documentation/hwspinlock.rst similarity index 99% rename from Documentation/hwspinlock.txt rename to Documentation/hwspinlock.rst index ed640a278185..68297473647c 100644 --- a/Documentation/hwspinlock.txt +++ b/Documentation/hwspinlock.rst @@ -1,3 +1,5 @@ +:orphan: + =========================== Hardware Spinlock Framework =========================== diff --git a/Documentation/ia64/IRQ-redir.txt b/Documentation/ia64/IRQ-redir.txt index f7bd72261283..364ce9879f54 100644 --- a/Documentation/ia64/IRQ-redir.txt +++ b/Documentation/ia64/IRQ-redir.txt @@ -5,7 +5,7 @@ IRQ affinity on IA64 platforms By writing to /proc/irq/IRQ#/smp_affinity the interrupt routing can be controlled. The behavior on IA64 platforms is slightly different from -that described in Documentation/IRQ-affinity.txt for i386 systems. +that described in Documentation/IRQ-affinity.rst for i386 systems. Because of the usage of SAPIC mode and physical destination mode the IRQ target is one particular CPU and cannot be a mask of several diff --git a/Documentation/intel_txt.txt b/Documentation/intel_txt.rst similarity index 99% rename from Documentation/intel_txt.txt rename to Documentation/intel_txt.rst index d83c1a2122c9..5a55007ecf08 100644 --- a/Documentation/intel_txt.txt +++ b/Documentation/intel_txt.rst @@ -1,3 +1,5 @@ +:orphan: + ===================== Intel(R) TXT Overview ===================== diff --git a/Documentation/io-mapping.txt b/Documentation/io-mapping.rst similarity index 99% rename from Documentation/io-mapping.txt rename to Documentation/io-mapping.rst index a966239f04e4..82a2cacf9a29 100644 --- a/Documentation/io-mapping.txt +++ b/Documentation/io-mapping.rst @@ -1,3 +1,5 @@ +:orphan: + ======================== The io_mapping functions ======================== diff --git a/Documentation/io_ordering.txt b/Documentation/io_ordering.rst similarity index 99% rename from Documentation/io_ordering.txt rename to Documentation/io_ordering.rst index 2ab303ce9a0d..18ef889c100e 100644 --- a/Documentation/io_ordering.txt +++ b/Documentation/io_ordering.rst @@ -1,3 +1,5 @@ +:orphan: + ============================================== Ordering I/O writes to memory-mapped addresses ============================================== diff --git a/Documentation/iostats.txt b/Documentation/iostats.rst similarity index 99% rename from Documentation/iostats.txt rename to Documentation/iostats.rst index 49df45f90e8a..d2489cb8e1b3 100644 --- a/Documentation/iostats.txt +++ b/Documentation/iostats.rst @@ -1,3 +1,5 @@ +:orphan: + ===================== I/O statistics fields ===================== diff --git a/Documentation/irqflags-tracing.txt b/Documentation/irqflags-tracing.rst similarity index 99% rename from Documentation/irqflags-tracing.txt rename to Documentation/irqflags-tracing.rst index bdd208259fb3..b9c2acd5e835 100644 --- a/Documentation/irqflags-tracing.txt +++ b/Documentation/irqflags-tracing.rst @@ -1,3 +1,5 @@ +:orphan: + ======================= IRQ-flags state tracing ======================= diff --git a/Documentation/isa.txt b/Documentation/isa.rst similarity index 99% rename from Documentation/isa.txt rename to Documentation/isa.rst index def4a7b690b5..f3a412d266b0 100644 --- a/Documentation/isa.txt +++ b/Documentation/isa.rst @@ -1,3 +1,5 @@ +:orphan: + =========== ISA Drivers =========== diff --git a/Documentation/isapnp.txt b/Documentation/isapnp.rst similarity index 98% rename from Documentation/isapnp.txt rename to Documentation/isapnp.rst index 8d0840ac847b..136a5e92be27 100644 --- a/Documentation/isapnp.txt +++ b/Documentation/isapnp.rst @@ -1,3 +1,5 @@ +:orphan: + ========================================================== ISA Plug & Play support by Jaroslav Kysela ========================================================== diff --git a/Documentation/kernel-per-CPU-kthreads.txt b/Documentation/kernel-per-CPU-kthreads.rst similarity index 99% rename from Documentation/kernel-per-CPU-kthreads.txt rename to Documentation/kernel-per-CPU-kthreads.rst index 5623b9916411..765c7b9bd7fd 100644 --- a/Documentation/kernel-per-CPU-kthreads.txt +++ b/Documentation/kernel-per-CPU-kthreads.rst @@ -1,3 +1,5 @@ +:orphan: + ========================================== Reducing OS jitter due to per-cpu kthreads ========================================== @@ -10,7 +12,7 @@ them to a "housekeeping" CPU dedicated to such work. References ========== -- Documentation/IRQ-affinity.txt: Binding interrupts to sets of CPUs. +- Documentation/IRQ-affinity.rst: Binding interrupts to sets of CPUs. - Documentation/cgroup-v1: Using cgroups to bind tasks to sets of CPUs. diff --git a/Documentation/kobject.txt b/Documentation/kobject.rst similarity index 99% rename from Documentation/kobject.txt rename to Documentation/kobject.rst index ff4c25098119..09cd1fc3e9e0 100644 --- a/Documentation/kobject.txt +++ b/Documentation/kobject.rst @@ -1,3 +1,5 @@ +:orphan: + ===================================================================== Everything you never wanted to know about kobjects, ksets, and ktypes ===================================================================== @@ -210,7 +212,7 @@ statically and will warn the developer of this improper usage. If all that you want to use a kobject for is to provide a reference counter for your structure, please use the struct kref instead; a kobject would be overkill. For more information on how to use struct kref, please see the -file Documentation/kref.txt in the Linux kernel source tree. +file Documentation/kref.rst in the Linux kernel source tree. Creating "simple" kobjects diff --git a/Documentation/kprobes.txt b/Documentation/kprobes.rst similarity index 99% rename from Documentation/kprobes.txt rename to Documentation/kprobes.rst index 8baab8832c5b..ba15bd08a84a 100644 --- a/Documentation/kprobes.txt +++ b/Documentation/kprobes.rst @@ -1,3 +1,5 @@ +:orphan: + ======================= Kernel Probes (Kprobes) ======================= diff --git a/Documentation/kref.txt b/Documentation/kref.rst similarity index 99% rename from Documentation/kref.txt rename to Documentation/kref.rst index 3af384156d7e..470e3c1bacdc 100644 --- a/Documentation/kref.txt +++ b/Documentation/kref.rst @@ -1,3 +1,5 @@ +:orphan: + =================================================== Adding reference counters (krefs) to kernel objects =================================================== diff --git a/Documentation/laptops/thinkpad-acpi.txt b/Documentation/laptops/thinkpad-acpi.txt index 6cced88de6da..3de3c95f01f6 100644 --- a/Documentation/laptops/thinkpad-acpi.txt +++ b/Documentation/laptops/thinkpad-acpi.txt @@ -610,7 +610,7 @@ Sysfs notes: 2010. rfkill controller switch "tpacpi_bluetooth_sw": refer to - Documentation/rfkill.txt for details. + Documentation/rfkill.rst for details. Video output control -- /proc/acpi/ibm/video @@ -1338,7 +1338,7 @@ Sysfs notes: 2010. rfkill controller switch "tpacpi_wwan_sw": refer to - Documentation/rfkill.txt for details. + Documentation/rfkill.rst for details. EXPERIMENTAL: UWB @@ -1357,7 +1357,7 @@ present and enabled in the BIOS. Sysfs notes: rfkill controller switch "tpacpi_uwb_sw": refer to - Documentation/rfkill.txt for details. + Documentation/rfkill.rst for details. Adaptive keyboard ----------------- diff --git a/Documentation/ldm.txt b/Documentation/ldm.rst similarity index 99% rename from Documentation/ldm.txt rename to Documentation/ldm.rst index 12c571368e73..33fa13db5f67 100644 --- a/Documentation/ldm.txt +++ b/Documentation/ldm.rst @@ -1,3 +1,5 @@ +:orphan: + ========================================== LDM - Logical Disk Manager (Dynamic Disks) ========================================== diff --git a/Documentation/locking/rt-mutex.rst b/Documentation/locking/rt-mutex.rst index c365dc302081..6e3dcff802f9 100644 --- a/Documentation/locking/rt-mutex.rst +++ b/Documentation/locking/rt-mutex.rst @@ -4,7 +4,7 @@ RT-mutex subsystem with PI support RT-mutexes with priority inheritance are used to support PI-futexes, which enable pthread_mutex_t priority inheritance attributes -(PTHREAD_PRIO_INHERIT). [See Documentation/pi-futex.txt for more details +(PTHREAD_PRIO_INHERIT). [See Documentation/pi-futex.rst for more details about PI-futexes.] This technology was developed in the -rt tree and streamlined for diff --git a/Documentation/lockup-watchdogs.txt b/Documentation/lockup-watchdogs.rst similarity index 99% rename from Documentation/lockup-watchdogs.txt rename to Documentation/lockup-watchdogs.rst index 290840c160af..a60598bfd50f 100644 --- a/Documentation/lockup-watchdogs.txt +++ b/Documentation/lockup-watchdogs.rst @@ -1,3 +1,5 @@ +:orphan: + =============================================================== Softlockup detector and hardlockup detector (aka nmi_watchdog) =============================================================== diff --git a/Documentation/lsm.txt b/Documentation/lsm.rst similarity index 99% rename from Documentation/lsm.txt rename to Documentation/lsm.rst index ad4dfd020e0d..4f0b1a6ea76c 100644 --- a/Documentation/lsm.txt +++ b/Documentation/lsm.rst @@ -1,3 +1,5 @@ +:orphan: + ======================================================== Linux Security Modules: General Security Hooks for Linux ======================================================== diff --git a/Documentation/lzo.txt b/Documentation/lzo.rst similarity index 99% rename from Documentation/lzo.txt rename to Documentation/lzo.rst index ca983328976b..36965db785af 100644 --- a/Documentation/lzo.txt +++ b/Documentation/lzo.rst @@ -1,3 +1,5 @@ +:orphan: + =========================================================== LZO stream format as understood by Linux's LZO decompressor =========================================================== diff --git a/Documentation/mailbox.txt b/Documentation/mailbox.rst similarity index 99% rename from Documentation/mailbox.txt rename to Documentation/mailbox.rst index 0ed95009cc30..02e754db3567 100644 --- a/Documentation/mailbox.txt +++ b/Documentation/mailbox.rst @@ -1,3 +1,5 @@ +:orphan: + ============================ The Common Mailbox Framework ============================ diff --git a/Documentation/memory-barriers.txt b/Documentation/memory-barriers.txt index 9d8146b6de73..ce301317680c 100644 --- a/Documentation/memory-barriers.txt +++ b/Documentation/memory-barriers.txt @@ -549,8 +549,8 @@ There are certain things that the Linux kernel memory barriers do not guarantee: [*] For information on bus mastering DMA and coherency please read: Documentation/PCI/pci.txt - Documentation/DMA-API-HOWTO.txt - Documentation/DMA-API.txt + Documentation/DMA-API-HOWTO.rst + Documentation/DMA-API.rst DATA DEPENDENCY BARRIERS (HISTORICAL) @@ -1953,7 +1953,7 @@ There are some more advanced barrier functions: here. See the subsection "Kernel I/O barrier effects" for more information on - relaxed I/O accessors and the Documentation/DMA-API.txt file for more + relaxed I/O accessors and the Documentation/DMA-API.rst file for more information on consistent memory. diff --git a/Documentation/men-chameleon-bus.txt b/Documentation/men-chameleon-bus.rst similarity index 99% rename from Documentation/men-chameleon-bus.txt rename to Documentation/men-chameleon-bus.rst index 1b1f048aa748..2d6175229e58 100644 --- a/Documentation/men-chameleon-bus.txt +++ b/Documentation/men-chameleon-bus.rst @@ -1,3 +1,5 @@ +:orphan: + ================= MEN Chameleon Bus ================= diff --git a/Documentation/networking/scaling.rst b/Documentation/networking/scaling.rst index f78d7bf27ff5..05f0feb99320 100644 --- a/Documentation/networking/scaling.rst +++ b/Documentation/networking/scaling.rst @@ -81,7 +81,7 @@ of queues to IRQs can be determined from /proc/interrupts. By default, an IRQ may be handled on any CPU. Because a non-negligible part of packet processing takes place in receive interrupt handling, it is advantageous to spread receive interrupts between CPUs. To manually adjust the IRQ -affinity of each interrupt see Documentation/IRQ-affinity.txt. Some systems +affinity of each interrupt see Documentation/IRQ-affinity.rst. Some systems will be running irqbalance, a daemon that dynamically optimizes IRQ assignments and as a result may override any manual settings. @@ -160,7 +160,7 @@ can be configured for each receive queue using a sysfs file entry:: This file implements a bitmap of CPUs. RPS is disabled when it is zero (the default), in which case packets are processed on the interrupting -CPU. Documentation/IRQ-affinity.txt explains how CPUs are assigned to +CPU. Documentation/IRQ-affinity.rst explains how CPUs are assigned to the bitmap. diff --git a/Documentation/nommu-mmap.txt b/Documentation/nommu-mmap.rst similarity index 99% rename from Documentation/nommu-mmap.txt rename to Documentation/nommu-mmap.rst index 530fed08de2c..f7f75813dc9c 100644 --- a/Documentation/nommu-mmap.txt +++ b/Documentation/nommu-mmap.rst @@ -1,3 +1,5 @@ +:orphan: + ============================= No-MMU memory mapping support ============================= diff --git a/Documentation/ntb.txt b/Documentation/ntb.rst similarity index 99% rename from Documentation/ntb.txt rename to Documentation/ntb.rst index 074a423c853c..1fa60198fd83 100644 --- a/Documentation/ntb.txt +++ b/Documentation/ntb.rst @@ -1,3 +1,5 @@ +:orphan: + =========== NTB Drivers =========== diff --git a/Documentation/numastat.txt b/Documentation/numastat.rst similarity index 99% rename from Documentation/numastat.txt rename to Documentation/numastat.rst index aaf1667489f8..61f4c9ffb138 100644 --- a/Documentation/numastat.txt +++ b/Documentation/numastat.rst @@ -1,3 +1,5 @@ +:orphan: + =============================== Numa policy hit/miss statistics =============================== diff --git a/Documentation/padata.txt b/Documentation/padata.rst similarity index 99% rename from Documentation/padata.txt rename to Documentation/padata.rst index b103d0c82000..f8369d18c846 100644 --- a/Documentation/padata.txt +++ b/Documentation/padata.rst @@ -1,3 +1,5 @@ +:orphan: + ======================================= The padata parallel execution mechanism ======================================= diff --git a/Documentation/parport-lowlevel.txt b/Documentation/parport-lowlevel.rst similarity index 99% rename from Documentation/parport-lowlevel.txt rename to Documentation/parport-lowlevel.rst index 0633d70ffda7..b8574d83d328 100644 --- a/Documentation/parport-lowlevel.txt +++ b/Documentation/parport-lowlevel.rst @@ -1,3 +1,5 @@ +:orphan: + =============================== PARPORT interface documentation =============================== diff --git a/Documentation/percpu-rw-semaphore.txt b/Documentation/percpu-rw-semaphore.rst similarity index 99% rename from Documentation/percpu-rw-semaphore.txt rename to Documentation/percpu-rw-semaphore.rst index 247de6410855..5c39c88d3719 100644 --- a/Documentation/percpu-rw-semaphore.txt +++ b/Documentation/percpu-rw-semaphore.rst @@ -1,3 +1,5 @@ +:orphan: + ==================== Percpu rw semaphores ==================== diff --git a/Documentation/phy.txt b/Documentation/phy.rst similarity index 99% rename from Documentation/phy.txt rename to Documentation/phy.rst index 457c3e0f86d6..129a45ccc857 100644 --- a/Documentation/phy.txt +++ b/Documentation/phy.rst @@ -1,3 +1,5 @@ +:orphan: + ============= PHY subsystem ============= diff --git a/Documentation/pi-futex.txt b/Documentation/pi-futex.rst similarity index 99% rename from Documentation/pi-futex.txt rename to Documentation/pi-futex.rst index c33ba2befbf8..884ba7f2aa10 100644 --- a/Documentation/pi-futex.txt +++ b/Documentation/pi-futex.rst @@ -1,3 +1,5 @@ +:orphan: + ====================== Lightweight PI-futexes ====================== diff --git a/Documentation/pnp.txt b/Documentation/pnp.rst similarity index 99% rename from Documentation/pnp.txt rename to Documentation/pnp.rst index bab2d10631f0..a66f19b2833c 100644 --- a/Documentation/pnp.txt +++ b/Documentation/pnp.rst @@ -1,3 +1,5 @@ +:orphan: + ================================= Linux Plug and Play Documentation ================================= diff --git a/Documentation/preempt-locking.txt b/Documentation/preempt-locking.rst similarity index 99% rename from Documentation/preempt-locking.txt rename to Documentation/preempt-locking.rst index dce336134e54..e9ccd412df59 100644 --- a/Documentation/preempt-locking.txt +++ b/Documentation/preempt-locking.rst @@ -1,3 +1,5 @@ +:orphan: + =========================================================================== Proper Locking Under a Preemptible Kernel: Keeping Kernel Code Preempt-Safe =========================================================================== diff --git a/Documentation/pwm.txt b/Documentation/pwm.rst similarity index 99% rename from Documentation/pwm.txt rename to Documentation/pwm.rst index 8fbf0aa3ba2d..78d06b7f5427 100644 --- a/Documentation/pwm.txt +++ b/Documentation/pwm.rst @@ -1,3 +1,5 @@ +:orphan: + ====================================== Pulse Width Modulation (PWM) interface ====================================== diff --git a/Documentation/rbtree.txt b/Documentation/rbtree.rst similarity index 99% rename from Documentation/rbtree.txt rename to Documentation/rbtree.rst index 523d54b60087..5d39f696eaab 100644 --- a/Documentation/rbtree.txt +++ b/Documentation/rbtree.rst @@ -1,3 +1,5 @@ +:orphan: + ================================= Red-black Trees (rbtree) in Linux ================================= diff --git a/Documentation/remoteproc.txt b/Documentation/remoteproc.rst similarity index 99% rename from Documentation/remoteproc.txt rename to Documentation/remoteproc.rst index 77fb03acdbb4..71eb7728fcf3 100644 --- a/Documentation/remoteproc.txt +++ b/Documentation/remoteproc.rst @@ -1,3 +1,5 @@ +:orphan: + ========================== Remote Processor Framework ========================== @@ -22,7 +24,7 @@ for remote processors that supports this kind of communication. This way, platform-specific remoteproc drivers only need to provide a few low-level handlers, and then all rpmsg drivers will then just work (for more information about the virtio-based rpmsg bus and its drivers, -please read Documentation/rpmsg.txt). +please read Documentation/rpmsg.rst). Registration of other types of virtio devices is now also possible. Firmwares just need to publish what kind of virtio devices do they support, and then remoteproc will add those devices. This makes it possible to reuse the diff --git a/Documentation/rfkill.txt b/Documentation/rfkill.rst similarity index 99% rename from Documentation/rfkill.txt rename to Documentation/rfkill.rst index 7d3684e81df6..4da9994e9bb4 100644 --- a/Documentation/rfkill.txt +++ b/Documentation/rfkill.rst @@ -1,3 +1,5 @@ +:orphan: + =============================== rfkill - RF kill switch support =============================== diff --git a/Documentation/robust-futex-ABI.txt b/Documentation/robust-futex-ABI.rst similarity index 99% rename from Documentation/robust-futex-ABI.txt rename to Documentation/robust-futex-ABI.rst index 8a5d34abf726..6d359b46610c 100644 --- a/Documentation/robust-futex-ABI.txt +++ b/Documentation/robust-futex-ABI.rst @@ -1,3 +1,5 @@ +:orphan: + ==================== The robust futex ABI ==================== diff --git a/Documentation/robust-futexes.txt b/Documentation/robust-futexes.rst similarity index 99% rename from Documentation/robust-futexes.txt rename to Documentation/robust-futexes.rst index 6c42c75103eb..f60ef0e78687 100644 --- a/Documentation/robust-futexes.txt +++ b/Documentation/robust-futexes.rst @@ -1,3 +1,5 @@ +:orphan: + ======================================== A description of what robust futexes are ======================================== diff --git a/Documentation/rpmsg.txt b/Documentation/rpmsg.rst similarity index 99% rename from Documentation/rpmsg.txt rename to Documentation/rpmsg.rst index 24b7a9e1a5f9..ad53931f3e43 100644 --- a/Documentation/rpmsg.txt +++ b/Documentation/rpmsg.rst @@ -1,3 +1,5 @@ +:orphan: + ============================================ Remote Processor Messaging (rpmsg) Framework ============================================ diff --git a/Documentation/rtc.txt b/Documentation/rtc.rst similarity index 99% rename from Documentation/rtc.txt rename to Documentation/rtc.rst index 688c95b11919..b79daa10c7a1 100644 --- a/Documentation/rtc.txt +++ b/Documentation/rtc.rst @@ -1,3 +1,5 @@ +:orphan: + ======================================= Real Time Clock (RTC) Drivers for Linux ======================================= diff --git a/Documentation/s390/vfio-ccw.rst b/Documentation/s390/vfio-ccw.rst index 1f6d0b56d53e..87b5bb49b2f3 100644 --- a/Documentation/s390/vfio-ccw.rst +++ b/Documentation/s390/vfio-ccw.rst @@ -38,7 +38,7 @@ every detail. More information/reference could be found here: qemu/hw/s390x/css.c For vfio mediated device framework: -- Documentation/vfio-mediated-device.txt +- Documentation/vfio-mediated-device.rst Motivation of vfio-ccw ---------------------- @@ -322,5 +322,5 @@ Reference 2. ESA/390 Common I/O Device Commands manual (IBM Form. No. SA22-7204) 3. https://en.wikipedia.org/wiki/Channel_I/O 4. Documentation/s390/cds.rst -5. Documentation/vfio.txt -6. Documentation/vfio-mediated-device.txt +5. Documentation/vfio.rst +6. Documentation/vfio-mediated-device.rst diff --git a/Documentation/sgi-ioc4.txt b/Documentation/sgi-ioc4.rst similarity index 99% rename from Documentation/sgi-ioc4.txt rename to Documentation/sgi-ioc4.rst index 72709222d3c0..e6ed2e9b055b 100644 --- a/Documentation/sgi-ioc4.txt +++ b/Documentation/sgi-ioc4.rst @@ -1,3 +1,5 @@ +:orphan: + ==================================== SGI IOC4 PCI (multi function) device ==================================== diff --git a/Documentation/siphash.txt b/Documentation/siphash.rst similarity index 99% rename from Documentation/siphash.txt rename to Documentation/siphash.rst index 9965821ab333..833eef3a7956 100644 --- a/Documentation/siphash.txt +++ b/Documentation/siphash.rst @@ -1,3 +1,5 @@ +:orphan: + =========================== SipHash - a short input PRF =========================== diff --git a/Documentation/smsc_ece1099.txt b/Documentation/smsc_ece1099.rst similarity index 99% rename from Documentation/smsc_ece1099.txt rename to Documentation/smsc_ece1099.rst index 079277421eaf..a403fcd7c64d 100644 --- a/Documentation/smsc_ece1099.txt +++ b/Documentation/smsc_ece1099.rst @@ -1,3 +1,5 @@ +:orphan: + ================================================= Msc Keyboard Scan Expansion/GPIO Expansion device ================================================= diff --git a/Documentation/speculation.txt b/Documentation/speculation.rst similarity index 99% rename from Documentation/speculation.txt rename to Documentation/speculation.rst index 50d7ea857cff..e240f01b0983 100644 --- a/Documentation/speculation.txt +++ b/Documentation/speculation.rst @@ -1,3 +1,5 @@ +:orphan: + This document explains potential effects of speculation, and how undesirable effects can be mitigated portably using common APIs. diff --git a/Documentation/static-keys.txt b/Documentation/static-keys.rst similarity index 99% rename from Documentation/static-keys.txt rename to Documentation/static-keys.rst index 9803e14639bf..bdf545e3a37f 100644 --- a/Documentation/static-keys.txt +++ b/Documentation/static-keys.rst @@ -1,3 +1,5 @@ +:orphan: + =========== Static Keys =========== diff --git a/Documentation/svga.txt b/Documentation/svga.rst similarity index 99% rename from Documentation/svga.txt rename to Documentation/svga.rst index b6c2f9acca92..1bfd54d9fb59 100644 --- a/Documentation/svga.txt +++ b/Documentation/svga.rst @@ -1,3 +1,5 @@ +:orphan: + .. include:: ================================= diff --git a/Documentation/switchtec.txt b/Documentation/switchtec.rst similarity index 98% rename from Documentation/switchtec.txt rename to Documentation/switchtec.rst index 30d6a64e53f7..6879c92de8e2 100644 --- a/Documentation/switchtec.txt +++ b/Documentation/switchtec.rst @@ -1,3 +1,5 @@ +:orphan: + ======================== Linux Switchtec Support ======================== @@ -97,6 +99,6 @@ the following configuration settings: NT EP BAR 2 will be dynamically configured as a Direct Window, and the configuration file does not need to configure it explicitly. -Please refer to Documentation/ntb.txt in Linux source tree for an overall +Please refer to Documentation/ntb.rst in Linux source tree for an overall understanding of the Linux NTB stack. ntb_hw_switchtec works as an NTB Hardware Driver in this stack. diff --git a/Documentation/sync_file.txt b/Documentation/sync_file.rst similarity index 99% rename from Documentation/sync_file.txt rename to Documentation/sync_file.rst index 496fb2c3b3e6..a65a67cc06fa 100644 --- a/Documentation/sync_file.txt +++ b/Documentation/sync_file.rst @@ -1,3 +1,5 @@ +:orphan: + =================== Sync File API Guide =================== diff --git a/Documentation/sysctl/kernel.txt b/Documentation/sysctl/kernel.txt index f0c86fbb3b48..86fd3e35afa7 100644 --- a/Documentation/sysctl/kernel.txt +++ b/Documentation/sysctl/kernel.txt @@ -44,7 +44,7 @@ show up in /proc/sys/kernel: - kexec_load_disabled - kptr_restrict - l2cr [ PPC only ] -- modprobe ==> Documentation/debugging-modules.txt +- modprobe ==> Documentation/debugging-modules.rst - modules_disabled - msg_next_id [ sysv ipc ] - msgmax @@ -327,7 +327,7 @@ when a hard lockup is detected. 0 - don't panic on hard lockup 1 - panic on hard lockup -See Documentation/lockup-watchdogs.txt for more information. This can +See Documentation/lockup-watchdogs.rst for more information. This can also be set using the nmi_watchdog kernel parameter. ============================================================== diff --git a/Documentation/sysctl/vm.txt b/Documentation/sysctl/vm.txt index 690b3247ab23..6758767c85a8 100644 --- a/Documentation/sysctl/vm.txt +++ b/Documentation/sysctl/vm.txt @@ -566,7 +566,7 @@ trimming of allocations is initiated. The default value is 1. -See Documentation/nommu-mmap.txt for more information. +See Documentation/nommu-mmap.rst for more information. ============================================================== diff --git a/Documentation/tee.txt b/Documentation/tee.rst similarity index 99% rename from Documentation/tee.txt rename to Documentation/tee.rst index 56ea85ffebf2..b04ec6804fb1 100644 --- a/Documentation/tee.txt +++ b/Documentation/tee.rst @@ -1,3 +1,5 @@ +:orphan: + ============= TEE subsystem ============= diff --git a/Documentation/this_cpu_ops.txt b/Documentation/this_cpu_ops.rst similarity index 99% rename from Documentation/this_cpu_ops.txt rename to Documentation/this_cpu_ops.rst index 5cb8b883ae83..a489d25ff549 100644 --- a/Documentation/this_cpu_ops.txt +++ b/Documentation/this_cpu_ops.rst @@ -1,3 +1,5 @@ +:orphan: + =================== this_cpu operations =================== diff --git a/Documentation/trace/kprobetrace.rst b/Documentation/trace/kprobetrace.rst index 235ce2ab131a..af7ed1ca8273 100644 --- a/Documentation/trace/kprobetrace.rst +++ b/Documentation/trace/kprobetrace.rst @@ -40,7 +40,7 @@ Synopsis of kprobe_events MEMADDR : Address where the probe is inserted. MAXACTIVE : Maximum number of instances of the specified function that can be probed simultaneously, or 0 for the default value - as defined in Documentation/kprobes.txt section 1.3.1. + as defined in Documentation/kprobes.rst section 1.3.1. FETCHARGS : Arguments. Each probe can have up to 128 args. %REG : Fetch register REG diff --git a/Documentation/translations/ko_KR/memory-barriers.txt b/Documentation/translations/ko_KR/memory-barriers.txt index db0b9d8619f1..f6ca27920b92 100644 --- a/Documentation/translations/ko_KR/memory-barriers.txt +++ b/Documentation/translations/ko_KR/memory-barriers.txt @@ -570,8 +570,8 @@ ACQUIRE 는 해당 오퍼레이션의 로드 부분에만 적용되고 RELEASE [*] 버스 마스터링 DMA 와 일관성에 대해서는 다음을 참고하시기 바랍니다: Documentation/PCI/pci.txt - Documentation/DMA-API-HOWTO.txt - Documentation/DMA-API.txt + Documentation/DMA-API-HOWTO.rst + Documentation/DMA-API.rst 데이터 의존성 배리어 (역사적) @@ -1904,7 +1904,7 @@ Mandatory 배리어들은 SMP 시스템에서도 UP 시스템에서도 SMP 효 writel_relaxed() 와 같은 완화된 I/O 접근자들에 대한 자세한 내용을 위해서는 "커널 I/O 배리어의 효과" 섹션을, consistent memory 에 대한 자세한 내용을 - 위해선 Documentation/DMA-API.txt 문서를 참고하세요. + 위해선 Documentation/DMA-API.rst 문서를 참고하세요. MMIO 쓰기 배리어 diff --git a/Documentation/translations/zh_CN/IRQ.txt b/Documentation/translations/zh_CN/IRQ.txt index 956026d5cf82..0d9ec142e185 100644 --- a/Documentation/translations/zh_CN/IRQ.txt +++ b/Documentation/translations/zh_CN/IRQ.txt @@ -1,4 +1,4 @@ -Chinese translated version of Documentation/IRQ.txt +Chinese translated version of Documentation/IRQ.rst If you have any comment or update to the content, please contact the original document maintainer directly. However, if you have a problem @@ -9,7 +9,7 @@ or if there is a problem with the translation. Maintainer: Eric W. Biederman Chinese maintainer: Fu Wei --------------------------------------------------------------------- -Documentation/IRQ.txt 的中文翻译 +Documentation/IRQ.rst 的中文翻译 如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使用英文 交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻 diff --git a/Documentation/translations/zh_CN/filesystems/sysfs.txt b/Documentation/translations/zh_CN/filesystems/sysfs.txt index 452271dda141..f5482e082399 100644 --- a/Documentation/translations/zh_CN/filesystems/sysfs.txt +++ b/Documentation/translations/zh_CN/filesystems/sysfs.txt @@ -40,7 +40,7 @@ sysfs 是一个最初基于 ramfs 且位于内存的文件系统。它提供导 数据结构及其属性,以及它们之间的关联到用户空间的方法。 sysfs 始终与 kobject 的底层结构紧密相关。请阅读 -Documentation/kobject.txt 文档以获得更多关于 kobject 接口的 +Documentation/kobject.rst 文档以获得更多关于 kobject 接口的 信息。 diff --git a/Documentation/translations/zh_CN/io_ordering.txt b/Documentation/translations/zh_CN/io_ordering.txt index 1f8127bdd415..4e9727990c10 100644 --- a/Documentation/translations/zh_CN/io_ordering.txt +++ b/Documentation/translations/zh_CN/io_ordering.txt @@ -1,4 +1,4 @@ -Chinese translated version of Documentation/io_ordering.txt +Chinese translated version of Documentation/io_ordering.rst If you have any comment or update to the content, please contact the original document maintainer directly. However, if you have a problem @@ -8,7 +8,7 @@ or if there is a problem with the translation. Chinese maintainer: Lin Yongting --------------------------------------------------------------------- -Documentation/io_ordering.txt 的中文翻译 +Documentation/io_ordering.rst 的中文翻译 如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使用英文 交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻 diff --git a/Documentation/unaligned-memory-access.txt b/Documentation/unaligned-memory-access.rst similarity index 99% rename from Documentation/unaligned-memory-access.txt rename to Documentation/unaligned-memory-access.rst index 1ee82419d8aa..848013a8bc10 100644 --- a/Documentation/unaligned-memory-access.txt +++ b/Documentation/unaligned-memory-access.rst @@ -1,3 +1,5 @@ +:orphan: + ========================= Unaligned Memory Accesses ========================= diff --git a/Documentation/vfio-mediated-device.txt b/Documentation/vfio-mediated-device.rst similarity index 99% rename from Documentation/vfio-mediated-device.txt rename to Documentation/vfio-mediated-device.rst index c3f69bcaf96e..0ea57427e7e6 100644 --- a/Documentation/vfio-mediated-device.txt +++ b/Documentation/vfio-mediated-device.rst @@ -1,3 +1,5 @@ +:orphan: + .. include:: ===================== @@ -408,7 +410,7 @@ card. References ========== -1. See Documentation/vfio.txt for more information on VFIO. +1. See Documentation/vfio.rst for more information on VFIO. 2. struct mdev_driver in include/linux/mdev.h 3. struct mdev_parent_ops in include/linux/mdev.h 4. struct vfio_iommu_driver_ops in include/linux/vfio.h diff --git a/Documentation/vfio.txt b/Documentation/vfio.rst similarity index 99% rename from Documentation/vfio.txt rename to Documentation/vfio.rst index f1a4d3c3ba0b..8a3fbd7d96f0 100644 --- a/Documentation/vfio.txt +++ b/Documentation/vfio.rst @@ -1,3 +1,5 @@ +:orphan: + ================================== VFIO - "Virtual Function I/O" [1]_ ================================== diff --git a/Documentation/video-output.txt b/Documentation/video-output.rst similarity index 99% rename from Documentation/video-output.txt rename to Documentation/video-output.rst index 56d6fa2e2368..5f7e3a9faea6 100644 --- a/Documentation/video-output.txt +++ b/Documentation/video-output.rst @@ -1,3 +1,5 @@ +:orphan: + Video Output Switcher Control ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/Documentation/watchdog/hpwdt.rst b/Documentation/watchdog/hpwdt.rst index 94a96371113e..f4ba329f011f 100644 --- a/Documentation/watchdog/hpwdt.rst +++ b/Documentation/watchdog/hpwdt.rst @@ -44,7 +44,7 @@ Last reviewed: 08/20/2018 NOTE: More information about watchdog drivers in general, including the ioctl interface to /dev/watchdog can be found in - Documentation/watchdog/watchdog-api.rst and Documentation/IPMI.txt. + Documentation/watchdog/watchdog-api.rst and Documentation/IPMI.rst. Due to limitations in the iLO hardware, the NMI pretimeout if enabled, can only be set to 9 seconds. Attempts to set pretimeout to other diff --git a/Documentation/x86/topology.txt b/Documentation/x86/topology.txt index 2953e3ec9a02..5d67136a7866 100644 --- a/Documentation/x86/topology.txt +++ b/Documentation/x86/topology.txt @@ -6,7 +6,7 @@ representation in the kernel. Update/change when doing changes to the respective code. The architecture-agnostic topology definitions are in -Documentation/cputopology.txt. This file holds x86-specific +Documentation/cputopology.rst. This file holds x86-specific differences/specialities which must not necessarily apply to the generic definitions. Thus, the way to read up on Linux topology on x86 is to start with the generic one and look at this one in parallel for the x86 specifics. diff --git a/Documentation/xillybus.txt b/Documentation/xillybus.rst similarity index 99% rename from Documentation/xillybus.txt rename to Documentation/xillybus.rst index 2446ee303c09..d99f4a37e8b6 100644 --- a/Documentation/xillybus.txt +++ b/Documentation/xillybus.rst @@ -1,3 +1,5 @@ +:orphan: + ========================================== Xillybus driver for generic FPGA interface ========================================== diff --git a/Documentation/xz.txt b/Documentation/xz.rst similarity index 99% rename from Documentation/xz.txt rename to Documentation/xz.rst index b2220d03aa50..205edc6646d5 100644 --- a/Documentation/xz.txt +++ b/Documentation/xz.rst @@ -1,3 +1,5 @@ +:orphan: + ============================ XZ data compression in Linux ============================ diff --git a/Documentation/zorro.txt b/Documentation/zorro.rst similarity index 99% rename from Documentation/zorro.txt rename to Documentation/zorro.rst index 664072b017e3..1cf45d879c49 100644 --- a/Documentation/zorro.txt +++ b/Documentation/zorro.rst @@ -1,3 +1,5 @@ +:orphan: + ======================================== Writing Device Drivers for Zorro Devices ======================================== diff --git a/MAINTAINERS b/MAINTAINERS index 9c99c5f47381..66bcec263dbf 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -4513,7 +4513,7 @@ DELL SYSTEMS MANAGEMENT BASE DRIVER (dcdbas) M: Stuart Hayes L: platform-driver-x86@vger.kernel.org S: Maintained -F: Documentation/dcdbas.txt +F: Documentation/dcdbas.rst F: drivers/platform/x86/dcdbas.* DELL WMI NOTIFICATIONS DRIVER @@ -4889,7 +4889,7 @@ M: Greg Kroah-Hartman R: "Rafael J. Wysocki" T: git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git S: Supported -F: Documentation/kobject.txt +F: Documentation/kobject.rst F: drivers/base/ F: fs/debugfs/ F: fs/sysfs/ @@ -5948,7 +5948,7 @@ M: Ard Biesheuvel L: linux-efi@vger.kernel.org T: git git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git S: Maintained -F: Documentation/efi-stub.txt +F: Documentation/efi-stub.rst F: arch/*/kernel/efi.c F: arch/x86/boot/compressed/eboot.[ch] F: arch/*/include/asm/efi.h @@ -6494,7 +6494,7 @@ S: Maintained F: scripts/gcc-plugins/ F: scripts/gcc-plugin.sh F: scripts/Makefile.gcc-plugins -F: Documentation/gcc-plugins.txt +F: Documentation/gcc-plugins.rst GASKET DRIVER FRAMEWORK M: Rob Springer @@ -6908,7 +6908,7 @@ M: Herbert Xu L: linux-crypto@vger.kernel.org S: Odd fixes F: Documentation/devicetree/bindings/rng/ -F: Documentation/hw_random.txt +F: Documentation/hw_random.rst F: drivers/char/hw_random/ F: include/linux/hw_random.h @@ -6924,7 +6924,7 @@ L: linux-remoteproc@vger.kernel.org S: Maintained T: git git://git.kernel.org/pub/scm/linux/kernel/git/ohad/hwspinlock.git F: Documentation/devicetree/bindings/hwlock/ -F: Documentation/hwspinlock.txt +F: Documentation/hwspinlock.rst F: drivers/hwspinlock/ F: include/linux/hwspinlock.h @@ -8107,7 +8107,7 @@ L: tboot-devel@lists.sourceforge.net W: http://tboot.sourceforge.net T: hg http://tboot.hg.sourceforge.net:8000/hgroot/tboot/tboot S: Supported -F: Documentation/intel_txt.txt +F: Documentation/intel_txt.rst F: include/linux/tboot.h F: arch/x86/kernel/tboot.c @@ -8191,7 +8191,7 @@ L: openipmi-developer@lists.sourceforge.net (moderated for non-subscribers) W: http://openipmi.sourceforge.net/ S: Supported F: Documentation/devicetree/bindings/ipmi/ -F: Documentation/IPMI.txt +F: Documentation/IPMI.rst F: drivers/char/ipmi/ F: include/linux/ipmi* F: include/uapi/linux/ipmi* @@ -8232,7 +8232,7 @@ IRQ DOMAINS (IRQ NUMBER MAPPING LIBRARY) M: Marc Zyngier S: Maintained T: git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/core -F: Documentation/IRQ-domain.txt +F: Documentation/IRQ-domain.rst F: include/linux/irqdomain.h F: kernel/irq/irqdomain.c F: kernel/irq/msi.c @@ -8257,7 +8257,7 @@ F: drivers/irqchip/ ISA M: William Breathitt Gray S: Maintained -F: Documentation/isa.txt +F: Documentation/isa.rst F: drivers/base/isa.c F: include/linux/isa.h @@ -8272,7 +8272,7 @@ F: drivers/media/radio/radio-isa* ISAPNP M: Jaroslav Kysela S: Maintained -F: Documentation/isapnp.txt +F: Documentation/isapnp.rst F: drivers/pnp/isapnp/ F: include/linux/isapnp.h @@ -8711,7 +8711,7 @@ M: Anil S Keshavamurthy M: "David S. Miller" M: Masami Hiramatsu S: Maintained -F: Documentation/kprobes.txt +F: Documentation/kprobes.rst F: include/linux/kprobes.h F: include/asm-generic/kprobes.h F: kernel/kprobes.c @@ -9069,7 +9069,7 @@ L: linux-arch@vger.kernel.org S: Supported T: git git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git dev F: tools/memory-model/ -F: Documentation/atomic_bitops.txt +F: Documentation/atomic_bitops.rst F: Documentation/atomic_t.txt F: Documentation/core-api/atomic_ops.rst F: Documentation/core-api/refcount-vs-atomic.rst @@ -9183,7 +9183,7 @@ M: "Richard Russon (FlatCap)" L: linux-ntfs-dev@lists.sourceforge.net W: http://www.linux-ntfs.org/content/view/19/37/ S: Maintained -F: Documentation/ldm.txt +F: Documentation/ldm.rst F: block/partitions/ldm.* LSILOGIC MPT FUSION DRIVERS (FC/SAS/SPI) @@ -10109,7 +10109,7 @@ M: Johannes Thumshirn S: Maintained F: drivers/mcb/ F: include/linux/mcb.h -F: Documentation/men-chameleon-bus.txt +F: Documentation/men-chameleon-bus.rst MEN F21BMC (Board Management Controller) M: Andreas Werner @@ -11761,7 +11761,7 @@ L: linux-crypto@vger.kernel.org S: Maintained F: kernel/padata.c F: include/linux/padata.h -F: Documentation/padata.txt +F: Documentation/padata.rst PANASONIC LAPTOP ACPI EXTRAS DRIVER M: Harald Welte @@ -11785,7 +11785,7 @@ F: drivers/parport/ F: include/linux/parport*.h F: drivers/char/ppdev.c F: include/uapi/linux/ppdev.h -F: Documentation/parport*.txt +F: Documentation/parport*.rst PARAVIRT_OPS INTERFACE M: Juergen Gross @@ -11960,7 +11960,7 @@ M: Kurt Schwemmer M: Logan Gunthorpe L: linux-pci@vger.kernel.org S: Maintained -F: Documentation/switchtec.txt +F: Documentation/switchtec.rst F: Documentation/ABI/testing/sysfs-class-switchtec F: drivers/pci/switch/switchtec* F: include/uapi/linux/switchtec_ioctl.h @@ -12715,7 +12715,7 @@ M: Thierry Reding L: linux-pwm@vger.kernel.org S: Maintained T: git git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm.git -F: Documentation/pwm.txt +F: Documentation/pwm.rst F: Documentation/devicetree/bindings/pwm/ F: include/linux/pwm.h F: drivers/pwm/ @@ -13186,7 +13186,7 @@ Q: http://patchwork.ozlabs.org/project/rtc-linux/list/ T: git git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux.git S: Maintained F: Documentation/devicetree/bindings/rtc/ -F: Documentation/rtc.txt +F: Documentation/rtc.rst F: drivers/rtc/ F: include/linux/rtc.h F: include/uapi/linux/rtc.h @@ -13236,7 +13236,7 @@ L: linux-remoteproc@vger.kernel.org T: git git://git.kernel.org/pub/scm/linux/kernel/git/ohad/remoteproc.git S: Maintained F: Documentation/devicetree/bindings/remoteproc/ -F: Documentation/remoteproc.txt +F: Documentation/remoteproc.rst F: drivers/remoteproc/ F: include/linux/remoteproc.h @@ -13247,7 +13247,7 @@ L: linux-remoteproc@vger.kernel.org T: git git://git.kernel.org/pub/scm/linux/kernel/git/ohad/rpmsg.git S: Maintained F: drivers/rpmsg/ -F: Documentation/rpmsg.txt +F: Documentation/rpmsg.rst F: include/linux/rpmsg.h F: include/linux/rpmsg/ @@ -13327,7 +13327,7 @@ W: http://wireless.kernel.org/ T: git git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git S: Maintained -F: Documentation/rfkill.txt +F: Documentation/rfkill.rst F: Documentation/ABI/stable/sysfs-class-rfkill F: net/rfkill/ F: include/linux/rfkill.h @@ -14966,7 +14966,7 @@ SVGA HANDLING M: Martin Mares L: linux-video@atrey.karlin.mff.cuni.cz S: Maintained -F: Documentation/svga.txt +F: Documentation/svga.rst F: arch/x86/boot/video* SWIOTLB SUBSYSTEM @@ -15003,7 +15003,7 @@ F: drivers/dma-buf/dma-fence* F: drivers/dma-buf/sw_sync.c F: include/linux/sync_file.h F: include/uapi/linux/sync_file.h -F: Documentation/sync_file.txt +F: Documentation/sync_file.rst T: git git://anongit.freedesktop.org/drm/drm-misc SYNOPSYS ARC ARCHITECTURE @@ -15329,7 +15329,7 @@ S: Maintained F: include/linux/tee_drv.h F: include/uapi/linux/tee.h F: drivers/tee/ -F: Documentation/tee.txt +F: Documentation/tee.rst TEGRA ARCHITECTURE SUPPORT M: Thierry Reding @@ -16484,7 +16484,7 @@ M: Alex Williamson L: kvm@vger.kernel.org T: git git://github.com/awilliam/linux-vfio.git S: Maintained -F: Documentation/vfio.txt +F: Documentation/vfio.rst F: drivers/vfio/ F: include/linux/vfio.h F: include/uapi/linux/vfio.h @@ -16493,7 +16493,7 @@ VFIO MEDIATED DEVICE DRIVERS M: Kirti Wankhede L: kvm@vger.kernel.org S: Maintained -F: Documentation/vfio-mediated-device.txt +F: Documentation/vfio-mediated-device.rst F: drivers/vfio/mdev/ F: include/linux/mdev.h F: samples/vfio-mdev/ diff --git a/arch/Kconfig b/arch/Kconfig index ed382b01209b..ba0a53b543e3 100644 --- a/arch/Kconfig +++ b/arch/Kconfig @@ -141,7 +141,7 @@ config HAVE_64BIT_ALIGNED_ACCESS accesses are required to be 64 bit aligned in this way even though it is not a 64 bit architecture. - See Documentation/unaligned-memory-access.txt for more + See Documentation/unaligned-memory-access.rst for more information on the topic of unaligned memory accesses. config HAVE_EFFICIENT_UNALIGNED_ACCESS @@ -160,7 +160,7 @@ config HAVE_EFFICIENT_UNALIGNED_ACCESS problems with received packets if doing so would not help much. - See Documentation/unaligned-memory-access.txt for more + See Documentation/unaligned-memory-access.rst for more information on the topic of unaligned memory accesses. config ARCH_USE_BUILTIN_BSWAP diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index c6c424466f8a..7b905429626b 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1260,8 +1260,8 @@ config SMP uniprocessor machines. On a uniprocessor machine, the kernel will run faster if you say N here. - See also , - and the SMP-HOWTO available at + See also , + and the SMP-HOWTO available at . If you don't know what to do here, say N. diff --git a/arch/ia64/hp/common/sba_iommu.c b/arch/ia64/hp/common/sba_iommu.c index 5a361e51cb1e..0334db406d68 100644 --- a/arch/ia64/hp/common/sba_iommu.c +++ b/arch/ia64/hp/common/sba_iommu.c @@ -915,7 +915,7 @@ sba_mark_invalid(struct ioc *ioc, dma_addr_t iova, size_t byte_cnt) * @dir: dma direction * @attrs: optional dma attributes * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static dma_addr_t sba_map_page(struct device *dev, struct page *page, unsigned long poff, size_t size, @@ -1036,7 +1036,7 @@ sba_mark_clean(struct ioc *ioc, dma_addr_t iova, size_t size) * @dir: R/W or both. * @attrs: optional dma attributes * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static void sba_unmap_page(struct device *dev, dma_addr_t iova, size_t size, enum dma_data_direction dir, unsigned long attrs) @@ -1113,7 +1113,7 @@ static void sba_unmap_page(struct device *dev, dma_addr_t iova, size_t size, * @size: number of bytes mapped in driver buffer. * @dma_handle: IOVA of new buffer. * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static void * sba_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle, @@ -1170,7 +1170,7 @@ sba_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle, * @vaddr: virtual address IOVA of "consistent" buffer. * @dma_handler: IO virtual address of "consistent" buffer. * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static void sba_free_coherent(struct device *dev, size_t size, void *vaddr, dma_addr_t dma_handle, unsigned long attrs) @@ -1433,7 +1433,7 @@ static void sba_unmap_sg_attrs(struct device *dev, struct scatterlist *sglist, * @dir: R/W or both. * @attrs: optional dma attributes * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static int sba_map_sg_attrs(struct device *dev, struct scatterlist *sglist, int nents, enum dma_data_direction dir, @@ -1532,7 +1532,7 @@ static int sba_map_sg_attrs(struct device *dev, struct scatterlist *sglist, * @dir: R/W or both. * @attrs: optional dma attributes * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static void sba_unmap_sg_attrs(struct device *dev, struct scatterlist *sglist, int nents, enum dma_data_direction dir, diff --git a/arch/ia64/sn/pci/pci_dma.c b/arch/ia64/sn/pci/pci_dma.c index b7d42e4edc1f..f475fccea152 100644 --- a/arch/ia64/sn/pci/pci_dma.c +++ b/arch/ia64/sn/pci/pci_dma.c @@ -5,7 +5,7 @@ * * Copyright (C) 2000,2002-2005 Silicon Graphics, Inc. All rights reserved. * - * Routines for PCI DMA mapping. See Documentation/DMA-API.txt for + * Routines for PCI DMA mapping. See Documentation/DMA-API.rst for * a description of how these routines should be used. */ @@ -72,7 +72,7 @@ EXPORT_SYMBOL(sn_dma_set_mask); * that @dma_handle will have the %PCIIO_DMA_CMD flag set. * * This interface is usually used for "command" streams (e.g. the command - * queue for a SCSI controller). See Documentation/DMA-API.txt for + * queue for a SCSI controller). See Documentation/DMA-API.rst for * more information. */ static void *sn_dma_alloc_coherent(struct device *dev, size_t size, diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig index f996a6b2df40..e1189b9df371 100644 --- a/arch/parisc/Kconfig +++ b/arch/parisc/Kconfig @@ -273,7 +273,7 @@ config SMP machines, but will use only one CPU of a multiprocessor machine. On a uniprocessor machine, the kernel will run faster if you say N. - See also and the SMP-HOWTO + See also and the SMP-HOWTO available at . If you don't know what to do here, say N. diff --git a/arch/parisc/kernel/pci-dma.c b/arch/parisc/kernel/pci-dma.c index 239162355b58..2bb63062f6c3 100644 --- a/arch/parisc/kernel/pci-dma.c +++ b/arch/parisc/kernel/pci-dma.c @@ -3,7 +3,7 @@ ** PARISC 1.1 Dynamic DMA mapping support. ** This implementation is for PA-RISC platforms that do not support ** I/O TLBs (aka DMA address translation hardware). -** See Documentation/DMA-API-HOWTO.txt for interface definitions. +** See Documentation/DMA-API-HOWTO.rst for interface definitions. ** ** (c) Copyright 1999,2000 Hewlett-Packard Company ** (c) Copyright 2000 Grant Grundler diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index 9883516e682c..a72f4f9e91f3 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig @@ -677,7 +677,7 @@ config SMP People using multiprocessor machines who say Y here should also say Y to "Enhanced Real Time Clock Support", below. - See also and the SMP-HOWTO + See also and the SMP-HOWTO available at . If you don't know what to do here, say N. diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index 7c93f3121ee6..6391fdc4a98e 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig @@ -178,7 +178,7 @@ config SMP Y to "Enhanced Real Time Clock Support", below. The "Advanced Power Management" code will be disabled if you say Y here. - See also and the SMP-HOWTO + See also and the SMP-HOWTO available at . If you don't know what to do here, say N. diff --git a/arch/unicore32/include/asm/io.h b/arch/unicore32/include/asm/io.h index cb1d8fd2b16b..86877df4b1ee 100644 --- a/arch/unicore32/include/asm/io.h +++ b/arch/unicore32/include/asm/io.h @@ -31,7 +31,7 @@ extern void __uc32_iounmap(volatile void __iomem *addr); * ioremap and friends. * * ioremap takes a PCI memory address, as specified in - * Documentation/io-mapping.txt. + * Documentation/io-mapping.rst. * */ #define ioremap(cookie, size) __uc32_ioremap(cookie, size) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index bf8cb068acf8..24edda6eac18 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -392,7 +392,7 @@ config SMP Management" code will be disabled if you say Y here. See also , - and the SMP-HOWTO available at + and the SMP-HOWTO available at . If you don't know what to do here, say N. @@ -1940,7 +1940,7 @@ config EFI_STUB This kernel feature allows a bzImage to be loaded directly by EFI firmware without the use of a bootloader. - See Documentation/efi-stub.txt for more information. + See Documentation/efi-stub.rst for more information. config EFI_MIXED bool "EFI mixed-mode support" diff --git a/arch/x86/include/asm/dma-mapping.h b/arch/x86/include/asm/dma-mapping.h index 6b15a24930e0..dfa443fe17c2 100644 --- a/arch/x86/include/asm/dma-mapping.h +++ b/arch/x86/include/asm/dma-mapping.h @@ -3,8 +3,8 @@ #define _ASM_X86_DMA_MAPPING_H /* - * IOMMU interface. See Documentation/DMA-API-HOWTO.txt and - * Documentation/DMA-API.txt for documentation. + * IOMMU interface. See Documentation/DMA-API-HOWTO.rst and + * Documentation/DMA-API.rst for documentation. */ #include diff --git a/arch/x86/kernel/amd_gart_64.c b/arch/x86/kernel/amd_gart_64.c index bf7f13ea3c64..46d555c0c234 100644 --- a/arch/x86/kernel/amd_gart_64.c +++ b/arch/x86/kernel/amd_gart_64.c @@ -5,7 +5,7 @@ * This allows to use PCI devices that only support 32bit addresses on systems * with more than 4GB. * - * See Documentation/DMA-API-HOWTO.txt for the interface specification. + * See Documentation/DMA-API-HOWTO.rst for the interface specification. * * Copyright 2002 Andi Kleen, SuSE Labs. * Subject to the GNU General Public License v2 only. diff --git a/block/partitions/Kconfig b/block/partitions/Kconfig index 37b9710cc80a..51b28e1e225d 100644 --- a/block/partitions/Kconfig +++ b/block/partitions/Kconfig @@ -194,7 +194,7 @@ config LDM_PARTITION Normal partitions are now called Basic Disks under Windows 2000, XP, and Vista. - For a fuller description read . + For a fuller description read . If unsure, say N. diff --git a/drivers/base/core.c b/drivers/base/core.c index 4aeaa0c92bda..47abfd0d06aa 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c @@ -1063,7 +1063,7 @@ static void device_release(struct kobject *kobj) else if (dev->class && dev->class->dev_release) dev->class->dev_release(dev); else - WARN(1, KERN_ERR "Device '%s' does not have a release() function, it is broken and must be fixed. See Documentation/kobject.txt.\n", + WARN(1, KERN_ERR "Device '%s' does not have a release() function, it is broken and must be fixed. See Documentation/kobject.rst.\n", dev_name(dev)); kfree(p); } diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig index 466ebd84ad17..110824a27510 100644 --- a/drivers/char/Kconfig +++ b/drivers/char/Kconfig @@ -291,7 +291,7 @@ config RTC and set the RTC in an SMP compatible fashion. If you think you have a use for such a device (such as periodic data - sampling), then say Y here, and read + sampling), then say Y here, and read for details. To compile this driver as a module, choose M here: the @@ -313,7 +313,7 @@ config JS_RTC /dev/rtc. If you think you have a use for such a device (such as periodic data - sampling), then say Y here, and read + sampling), then say Y here, and read for details. To compile this driver as a module, choose M here: the diff --git a/drivers/char/hw_random/core.c b/drivers/char/hw_random/core.c index 95be7228f327..41acde92bedc 100644 --- a/drivers/char/hw_random/core.c +++ b/drivers/char/hw_random/core.c @@ -4,7 +4,7 @@ * Copyright 2006 Michael Buesch * Copyright 2005 (c) MontaVista Software, Inc. * - * Please read Documentation/hw_random.txt for details on use. + * Please read Documentation/hw_random.rst for details on use. * * This software may be used and distributed according to the terms * of the GNU General Public License, incorporated herein by reference. diff --git a/drivers/char/ipmi/Kconfig b/drivers/char/ipmi/Kconfig index 94719fc6ff9d..df47923e5119 100644 --- a/drivers/char/ipmi/Kconfig +++ b/drivers/char/ipmi/Kconfig @@ -13,7 +13,7 @@ menuconfig IPMI_HANDLER IPMI is a standard for managing sensors (temperature, voltage, etc.) in a system. - See for more details on the driver. + See for more details on the driver. If unsure, say N. diff --git a/drivers/char/ipmi/ipmi_si_hotmod.c b/drivers/char/ipmi/ipmi_si_hotmod.c index 03140f6cdf6f..bcf84522d5ef 100644 --- a/drivers/char/ipmi/ipmi_si_hotmod.c +++ b/drivers/char/ipmi/ipmi_si_hotmod.c @@ -18,7 +18,7 @@ static int hotmod_handler(const char *val, const struct kernel_param *kp); module_param_call(hotmod, hotmod_handler, NULL, NULL, 0200); MODULE_PARM_DESC(hotmod, "Add and remove interfaces. See" - " Documentation/IPMI.txt in the kernel sources for the" + " Documentation/IPMI.rst in the kernel sources for the" " gory details."); /* diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c index f124a2d2bb9f..5efb5c2ee78e 100644 --- a/drivers/char/ipmi/ipmi_si_intf.c +++ b/drivers/char/ipmi/ipmi_si_intf.c @@ -977,7 +977,7 @@ static inline int ipmi_thread_busy_wait(enum si_sm_result smi_result, * that are not BT and do not have interrupts. It starts spinning * when an operation is complete or until max_busy tells it to stop * (if that is enabled). See the paragraph on kimid_max_busy_us in - * Documentation/IPMI.txt for details. + * Documentation/IPMI.rst for details. */ static int ipmi_thread(void *data) { diff --git a/drivers/dma-buf/Kconfig b/drivers/dma-buf/Kconfig index 2e5a0faa2cb1..ae3c798ea787 100644 --- a/drivers/dma-buf/Kconfig +++ b/drivers/dma-buf/Kconfig @@ -15,7 +15,7 @@ config SYNC_FILE associated with a buffer. When a job is submitted to the GPU a fence is attached to the buffer and is transferred via userspace, using Sync Files fds, to the DRM driver for example. More details at - Documentation/sync_file.txt. + Documentation/sync_file.rst. config SW_SYNC bool "Sync File Validation Framework" diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig index 50020cacf1b4..bd2ff8333172 100644 --- a/drivers/gpio/Kconfig +++ b/drivers/gpio/Kconfig @@ -1284,7 +1284,7 @@ config GPIO_BT8XX The card needs to be physically altered for using it as a GPIO card. For more information on how to build a GPIO card from a BT8xx TV card, see the documentation file at - Documentation/bt8xxgpio.txt + Documentation/bt8xxgpio.rst If unsure, say N. diff --git a/drivers/parisc/sba_iommu.c b/drivers/parisc/sba_iommu.c index afaf8e6aefe6..00a2675db798 100644 --- a/drivers/parisc/sba_iommu.c +++ b/drivers/parisc/sba_iommu.c @@ -670,7 +670,7 @@ sba_mark_invalid(struct ioc *ioc, dma_addr_t iova, size_t byte_cnt) * @dev: instance of PCI owned by the driver that's asking * @mask: number of address bits this PCI device can handle * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static int sba_dma_supported( struct device *dev, u64 mask) { @@ -682,7 +682,7 @@ static int sba_dma_supported( struct device *dev, u64 mask) return(0); } - /* Documentation/DMA-API-HOWTO.txt tells drivers to try 64-bit + /* Documentation/DMA-API-HOWTO.rst tells drivers to try 64-bit * first, then fall back to 32-bit if that fails. * We are just "encouraging" 32-bit DMA masks here since we can * never allow IOMMU bypass unless we add special support for ZX1. @@ -710,7 +710,7 @@ static int sba_dma_supported( struct device *dev, u64 mask) * @size: number of bytes to map in driver buffer. * @direction: R/W or both. * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static dma_addr_t sba_map_single(struct device *dev, void *addr, size_t size, @@ -800,7 +800,7 @@ sba_map_page(struct device *dev, struct page *page, unsigned long offset, * @size: number of bytes mapped in driver buffer. * @direction: R/W or both. * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static void sba_unmap_page(struct device *dev, dma_addr_t iova, size_t size, @@ -879,7 +879,7 @@ sba_unmap_page(struct device *dev, dma_addr_t iova, size_t size, * @size: number of bytes mapped in driver buffer. * @dma_handle: IOVA of new buffer. * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static void *sba_alloc(struct device *hwdev, size_t size, dma_addr_t *dma_handle, gfp_t gfp, unsigned long attrs) @@ -910,7 +910,7 @@ static void *sba_alloc(struct device *hwdev, size_t size, dma_addr_t *dma_handle * @vaddr: virtual address IOVA of "consistent" buffer. * @dma_handler: IO virtual address of "consistent" buffer. * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static void sba_free(struct device *hwdev, size_t size, void *vaddr, @@ -945,7 +945,7 @@ int dump_run_sg = 0; * @nents: number of entries in list * @direction: R/W or both. * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static int sba_map_sg(struct device *dev, struct scatterlist *sglist, int nents, @@ -1029,7 +1029,7 @@ sba_map_sg(struct device *dev, struct scatterlist *sglist, int nents, * @nents: number of entries in list * @direction: R/W or both. * - * See Documentation/DMA-API-HOWTO.txt + * See Documentation/DMA-API-HOWTO.rst */ static void sba_unmap_sg(struct device *dev, struct scatterlist *sglist, int nents, diff --git a/drivers/pci/switch/Kconfig b/drivers/pci/switch/Kconfig index aee28a5bb98f..c1f5226cd0e5 100644 --- a/drivers/pci/switch/Kconfig +++ b/drivers/pci/switch/Kconfig @@ -9,7 +9,7 @@ config PCI_SW_SWITCHTEC Enables support for the management interface for the MicroSemi Switchtec series of PCIe switches. Supports userspace access to submit MRPC commands to the switch via /dev/switchtecX - devices. See for more + devices. See for more information. endmenu diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig index a1ed13183559..91b63cd4d48d 100644 --- a/drivers/platform/x86/Kconfig +++ b/drivers/platform/x86/Kconfig @@ -117,7 +117,7 @@ config DCDBAS Interrupts (SMIs) and Host Control Actions (system power cycle or power off after OS shutdown) on certain Dell systems. - See for more details on the driver + See for more details on the driver and the Dell systems on which Dell systems management software makes use of this driver. @@ -258,7 +258,7 @@ config DELL_RBU DELL system. Note you need a Dell OpenManage or Dell Update package (DUP) supporting application to communicate with the BIOS regarding the new image for the image update to take effect. - See for more details on the driver. + See for more details on the driver. config FUJITSU_LAPTOP diff --git a/drivers/platform/x86/dcdbas.c b/drivers/platform/x86/dcdbas.c index 88bd7efafe14..cc21295fa972 100644 --- a/drivers/platform/x86/dcdbas.c +++ b/drivers/platform/x86/dcdbas.c @@ -6,7 +6,7 @@ * and Host Control Actions (power cycle or power off after OS shutdown) on * Dell systems. * - * See Documentation/dcdbas.txt for more information. + * See Documentation/dcdbas.rst for more information. * * Copyright (C) 1995-2006 Dell Inc. * diff --git a/drivers/platform/x86/dell_rbu.c b/drivers/platform/x86/dell_rbu.c index 031c68903583..9beb45bcffee 100644 --- a/drivers/platform/x86/dell_rbu.c +++ b/drivers/platform/x86/dell_rbu.c @@ -23,7 +23,7 @@ * on every time the packet data is written. This driver requires an * application to break the BIOS image in to fixed sized packet chunks. * - * See Documentation/dell_rbu.txt for more info. + * See Documentation/dell_rbu.rst for more info. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License v2.0 as published by diff --git a/drivers/pnp/isapnp/Kconfig b/drivers/pnp/isapnp/Kconfig index a1af146d2d90..740607146e42 100644 --- a/drivers/pnp/isapnp/Kconfig +++ b/drivers/pnp/isapnp/Kconfig @@ -6,6 +6,6 @@ config ISAPNP depends on ISA || COMPILE_TEST help Say Y here if you would like support for ISA Plug and Play devices. - Some information is in . + Some information is in . If unsure, say Y. diff --git a/drivers/vfio/Kconfig b/drivers/vfio/Kconfig index 9de5ed38da83..edf824e6433e 100644 --- a/drivers/vfio/Kconfig +++ b/drivers/vfio/Kconfig @@ -25,7 +25,7 @@ menuconfig VFIO select ANON_INODES help VFIO provides a framework for secure userspace device drivers. - See Documentation/vfio.txt for more details. + See Documentation/vfio.rst for more details. If you don't know what to do here, say N. diff --git a/drivers/vfio/mdev/Kconfig b/drivers/vfio/mdev/Kconfig index 14fdb106a827..fd310018a0c2 100644 --- a/drivers/vfio/mdev/Kconfig +++ b/drivers/vfio/mdev/Kconfig @@ -5,7 +5,7 @@ config VFIO_MDEV default n help Provides a framework to virtualize devices. - See Documentation/vfio-mediated-device.txt for more details. + See Documentation/vfio-mediated-device.rst for more details. If you don't know what do here, say N. diff --git a/include/asm-generic/bitops/atomic.h b/include/asm-generic/bitops/atomic.h index dd90c9792909..6ee11717bb65 100644 --- a/include/asm-generic/bitops/atomic.h +++ b/include/asm-generic/bitops/atomic.h @@ -8,7 +8,7 @@ /* * Implementation of atomic bitops using atomic-fetch ops. - * See Documentation/atomic_bitops.txt for details. + * See Documentation/atomic_bitops.rst for details. */ static inline void set_bit(unsigned int nr, volatile unsigned long *p) diff --git a/include/linux/dma-mapping.h b/include/linux/dma-mapping.h index 6309a721394b..7ff3fcd73cec 100644 --- a/include/linux/dma-mapping.h +++ b/include/linux/dma-mapping.h @@ -14,7 +14,7 @@ /** * List of possible attributes associated with a DMA mapping. The semantics - * of each attribute should be defined in Documentation/DMA-attributes.txt. + * of each attribute should be defined in Documentation/DMA-attributes.rst. * * DMA_ATTR_WRITE_BARRIER: DMA to a memory region with this attribute * forces all pending DMA writes to complete. diff --git a/include/linux/hw_random.h b/include/linux/hw_random.h index c0b93e0ff0c0..e533eac9942b 100644 --- a/include/linux/hw_random.h +++ b/include/linux/hw_random.h @@ -1,7 +1,7 @@ /* Hardware Random Number Generator - Please read Documentation/hw_random.txt for details on use. + Please read Documentation/hw_random.rst for details on use. ---------------------------------------------------------- This software may be used and distributed according to the terms diff --git a/include/linux/io-mapping.h b/include/linux/io-mapping.h index 58df02bd93c9..b90c540696a4 100644 --- a/include/linux/io-mapping.h +++ b/include/linux/io-mapping.h @@ -28,7 +28,7 @@ * The io_mapping mechanism provides an abstraction for mapping * individual pages from an io device to the CPU in an efficient fashion. * - * See Documentation/io-mapping.txt + * See Documentation/io-mapping.rst */ struct io_mapping { diff --git a/include/linux/jump_label.h b/include/linux/jump_label.h index 3e113a1fa0f1..c3947cab2d27 100644 --- a/include/linux/jump_label.h +++ b/include/linux/jump_label.h @@ -68,7 +68,7 @@ * Lacking toolchain and or architecture support, static keys fall back to a * simple conditional branch. * - * Additional babbling in: Documentation/static-keys.txt + * Additional babbling in: Documentation/static-keys.rst */ #ifndef __ASSEMBLY__ diff --git a/include/linux/kobject.h b/include/linux/kobject.h index 1ab0d624fb36..07c3f4329df0 100644 --- a/include/linux/kobject.h +++ b/include/linux/kobject.h @@ -7,7 +7,7 @@ * Copyright (c) 2006-2008 Greg Kroah-Hartman * Copyright (c) 2006-2008 Novell Inc. * - * Please read Documentation/kobject.txt before using the kobject + * Please read Documentation/kobject.rst before using the kobject * interface, ESPECIALLY the parts about reference counts and object * destructors. */ diff --git a/include/linux/kobject_ns.h b/include/linux/kobject_ns.h index 069aa2ebef90..8c86c4641739 100644 --- a/include/linux/kobject_ns.h +++ b/include/linux/kobject_ns.h @@ -8,7 +8,7 @@ * * Split from kobject.h by David Howells (dhowells@redhat.com) * - * Please read Documentation/kobject.txt before using the kobject + * Please read Documentation/kobject.rst before using the kobject * interface, ESPECIALLY the parts about reference counts and object * destructors. */ diff --git a/include/linux/rbtree.h b/include/linux/rbtree.h index fcbeed4053ef..ba33f7068c50 100644 --- a/include/linux/rbtree.h +++ b/include/linux/rbtree.h @@ -23,7 +23,7 @@ I know it's not the cleaner way, but in C (not in C++) to get performances and genericity... - See Documentation/rbtree.txt for documentation and samples. + See Documentation/rbtree.rst for documentation and samples. */ #ifndef _LINUX_RBTREE_H diff --git a/include/linux/rbtree_augmented.h b/include/linux/rbtree_augmented.h index 9510c677ac70..36dfacd9905c 100644 --- a/include/linux/rbtree_augmented.h +++ b/include/linux/rbtree_augmented.h @@ -33,7 +33,7 @@ * rb_insert_augmented() and rb_erase_augmented() are intended to be public. * The rest are implementation details you are not expected to depend on. * - * See Documentation/rbtree.txt for documentation and samples. + * See Documentation/rbtree.rst for documentation and samples. */ struct rb_augment_callbacks { diff --git a/include/media/videobuf-dma-sg.h b/include/media/videobuf-dma-sg.h index 01bd142b979d..50a549e5b477 100644 --- a/include/media/videobuf-dma-sg.h +++ b/include/media/videobuf-dma-sg.h @@ -34,7 +34,7 @@ * does memory allocation too using vmalloc_32(). * * videobuf_dma_*() - * see Documentation/DMA-API-HOWTO.txt, these functions to + * see Documentation/DMA-API-HOWTO.rst, these functions to * basically the same. The map function does also build a * scatterlist for the buffer (and unmap frees it ...) * diff --git a/init/Kconfig b/init/Kconfig index 70fa2d57ef49..448f8daa1204 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -1807,7 +1807,7 @@ config MMAP_ALLOW_UNINITIALIZED userspace. Since that isn't generally a problem on no-MMU systems, it is normally safe to say Y here. - See Documentation/nommu-mmap.txt for more information. + See Documentation/nommu-mmap.rst for more information. config SYSTEM_DATA_VERIFICATION def_bool n diff --git a/kernel/dma/debug.c b/kernel/dma/debug.c index a218e43cc382..37f33cfb7da2 100644 --- a/kernel/dma/debug.c +++ b/kernel/dma/debug.c @@ -1083,7 +1083,7 @@ static void check_unmap(struct dma_debug_entry *ref) /* * Drivers should use dma_mapping_error() to check the returned * addresses of dma_map_single() and dma_map_page(). - * If not, print this warning message. See Documentation/DMA-API.txt. + * If not, print this warning message. See Documentation/DMA-API.rst. */ if (entry->map_err_type == MAP_ERR_NOT_CHECKED) { err_printk(ref->dev, entry, diff --git a/kernel/padata.c b/kernel/padata.c index 3e2633ae3bca..35123a3e9059 100644 --- a/kernel/padata.c +++ b/kernel/padata.c @@ -2,7 +2,7 @@ /* * padata.c - generic interface to process data streams in parallel * - * See Documentation/padata.txt for an api documentation. + * See Documentation/padata.rst for an api documentation. * * Copyright (C) 2008, 2009 secunet Security Networks AG * Copyright (C) 2008, 2009 Steffen Klassert diff --git a/lib/Kconfig b/lib/Kconfig index fb453afff32e..7e050a759b3e 100644 --- a/lib/Kconfig +++ b/lib/Kconfig @@ -402,7 +402,7 @@ config INTERVAL_TREE See: - Documentation/rbtree.txt + Documentation/rbtree.rst for more information. diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index aa05f47f5762..1c9edf887951 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -1662,7 +1662,7 @@ config PROVIDE_OHCI1394_DMA_INIT This code (~1k) is freed after boot. By then, the firewire stack in charge of the OHCI-1394 controllers should be used instead. - See Documentation/debugging-via-ohci1394.txt for more information. + See Documentation/debugging-via-ohci1394.rst for more information. menuconfig RUNTIME_TESTING_MENU bool "Runtime Testing" diff --git a/lib/crc32.c b/lib/crc32.c index 4a20455d1f61..0de37ccc70dd 100644 --- a/lib/crc32.c +++ b/lib/crc32.c @@ -24,7 +24,7 @@ * Version 2. See the file COPYING for more details. */ -/* see: Documentation/crc32.txt for a description of algorithms */ +/* see: Documentation/crc32.rst for a description of algorithms */ #include #include diff --git a/lib/kobject.c b/lib/kobject.c index aa89edcd2b63..c5870fae4ff3 100644 --- a/lib/kobject.c +++ b/lib/kobject.c @@ -6,7 +6,7 @@ * Copyright (c) 2006-2007 Greg Kroah-Hartman * Copyright (c) 2006-2007 Novell Inc. * - * Please see the file Documentation/kobject.txt for critical information + * Please see the file Documentation/kobject.rst for critical information * about using the kobject interface. */ @@ -639,7 +639,7 @@ static void kobject_cleanup(struct kobject *kobj) kobject_name(kobj), kobj, __func__, kobj->parent); if (t && !t->release) - pr_debug("kobject: '%s' (%p): does not have a release() function, it is broken and must be fixed. See Documentation/kobject.txt.\n", + pr_debug("kobject: '%s' (%p): does not have a release() function, it is broken and must be fixed. See Documentation/kobject.rst.\n", kobject_name(kobj), kobj); /* send "remove" if the caller did not do it but sent "add" */ diff --git a/lib/lzo/lzo1x_decompress_safe.c b/lib/lzo/lzo1x_decompress_safe.c index 9e07e9ef1aad..a05ca85a64f9 100644 --- a/lib/lzo/lzo1x_decompress_safe.c +++ b/lib/lzo/lzo1x_decompress_safe.c @@ -31,7 +31,7 @@ * depending on the base count. Since the base count is taken from a u8 * and a few bits, it is safe to assume that it will always be lower than * or equal to 2*255, thus we can always prevent any overflow by accepting - * two less 255 steps. See Documentation/lzo.txt for more information. + * two less 255 steps. See Documentation/lzo.rst for more information. */ #define MAX_255_COUNT ((((size_t)~0) / 255) - 2) diff --git a/lib/xz/Kconfig b/lib/xz/Kconfig index 12d2d777f36b..74f643b19f6a 100644 --- a/lib/xz/Kconfig +++ b/lib/xz/Kconfig @@ -4,7 +4,7 @@ config XZ_DEC help LZMA2 compression algorithm and BCJ filters are supported using the .xz file format as the container. For integrity checking, - CRC32 is supported. See Documentation/xz.txt for more information. + CRC32 is supported. See Documentation/xz.rst for more information. if XZ_DEC diff --git a/mm/Kconfig b/mm/Kconfig index 96d199aa55fb..254246e66fba 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -370,7 +370,7 @@ config NOMMU_INITIAL_TRIM_EXCESS This option specifies the initial value of this option. The default of 1 says that all excess pages should be trimmed. - See Documentation/nommu-mmap.txt for more information. + See Documentation/nommu-mmap.rst for more information. config TRANSPARENT_HUGEPAGE bool "Transparent Hugepage Support" diff --git a/mm/nommu.c b/mm/nommu.c index b492fd1fcf9f..d7cf834b0746 100644 --- a/mm/nommu.c +++ b/mm/nommu.c @@ -4,7 +4,7 @@ * Replacement code for mm functions to support CPU's that don't * have any form of memory management unit (thus no virtual memory). * - * See Documentation/nommu-mmap.txt + * See Documentation/nommu-mmap.rst * * Copyright (c) 2004-2008 David Howells * Copyright (c) 2000-2003 David McCullough diff --git a/samples/kprobes/kprobe_example.c b/samples/kprobes/kprobe_example.c index 02be8984c32f..3be113db45fe 100644 --- a/samples/kprobes/kprobe_example.c +++ b/samples/kprobes/kprobe_example.c @@ -4,7 +4,7 @@ * stack trace and selected registers when _do_fork() is called. * * For more information on theory of operation of kprobes, see - * Documentation/kprobes.txt + * Documentation/kprobes.rst * * You will see the trace data in /var/log/messages and on the console * whenever _do_fork() is invoked to create a new process. diff --git a/samples/kprobes/kretprobe_example.c b/samples/kprobes/kretprobe_example.c index 7f9060f435cd..710889e7e5c0 100644 --- a/samples/kprobes/kretprobe_example.c +++ b/samples/kprobes/kretprobe_example.c @@ -10,7 +10,7 @@ * If no func_name is specified, _do_fork is instrumented * * For more information on theory of operation of kretprobes, see - * Documentation/kprobes.txt + * Documentation/kprobes.rst * * Build and insert the kernel module as done in the kprobe example. * You will see the trace data in /var/log/messages and on the console diff --git a/scripts/gcc-plugins/Kconfig b/scripts/gcc-plugins/Kconfig index 74271dba4f94..a58e83d3d64c 100644 --- a/scripts/gcc-plugins/Kconfig +++ b/scripts/gcc-plugins/Kconfig @@ -21,7 +21,7 @@ menuconfig GCC_PLUGINS GCC plugins are loadable modules that provide extra features to the compiler. They are useful for runtime instrumentation and static analysis. - See Documentation/gcc-plugins.txt for details. + See Documentation/gcc-plugins.rst for details. if GCC_PLUGINS diff --git a/security/Kconfig b/security/Kconfig index 353cfef71d4e..775f5bfe2cd3 100644 --- a/security/Kconfig +++ b/security/Kconfig @@ -120,7 +120,7 @@ config INTEL_TXT See for more information about Intel(R) TXT. See for more information about tboot. - See Documentation/intel_txt.txt for a description of how to enable + See Documentation/intel_txt.rst for a description of how to enable Intel TXT support in a kernel boot. If you are unsure as to whether this is required, answer N. diff --git a/tools/include/linux/rbtree.h b/tools/include/linux/rbtree.h index 8e9ed4786269..617c4adb2caf 100644 --- a/tools/include/linux/rbtree.h +++ b/tools/include/linux/rbtree.h @@ -23,7 +23,7 @@ I know it's not the cleaner way, but in C (not in C++) to get performances and genericity... - See Documentation/rbtree.txt for documentation and samples. + See Documentation/rbtree.rst for documentation and samples. */ #ifndef __TOOLS_LINUX_PERF_RBTREE_H diff --git a/tools/include/linux/rbtree_augmented.h b/tools/include/linux/rbtree_augmented.h index d008e1404580..ca544b017bc0 100644 --- a/tools/include/linux/rbtree_augmented.h +++ b/tools/include/linux/rbtree_augmented.h @@ -35,7 +35,7 @@ * rb_insert_augmented() and rb_erase_augmented() are intended to be public. * The rest are implementation details you are not expected to depend on. * - * See Documentation/rbtree.txt for documentation and samples. + * See Documentation/rbtree.rst for documentation and samples. */ struct rb_augment_callbacks {