OSDN Git Service

LDP: Address fuzzy changes (numa)
authorAkihiro Motoki <amotoki@gmail.com>
Mon, 5 Apr 2021 21:50:23 +0000 (06:50 +0900)
committerAkihiro Motoki <amotoki@gmail.com>
Mon, 5 Apr 2021 21:54:08 +0000 (06:54 +0900)
manual/LDP_man-pages/draft/man2/get_mempolicy.2 [new file with mode: 0644]
manual/LDP_man-pages/draft/man2/mbind.2 [new file with mode: 0644]
manual/LDP_man-pages/draft/man2/migrate_pages.2
manual/LDP_man-pages/draft/man2/move_pages.2
manual/LDP_man-pages/draft/man2/set_mempolicy.2 [new file with mode: 0644]
manual/LDP_man-pages/po4a/numa/po/ja.po
manual/LDP_man-pages/stats/numa
manual/LDP_man-pages/untrans.html

diff --git a/manual/LDP_man-pages/draft/man2/get_mempolicy.2 b/manual/LDP_man-pages/draft/man2/get_mempolicy.2
new file mode 100644 (file)
index 0000000..d811600
--- /dev/null
@@ -0,0 +1,126 @@
+.\" Copyright 2003,2004 Andi Kleen, SuSE Labs.
+.\" and Copyright 2007 Lee Schermerhorn, Hewlett Packard
+.\"
+.\" %%%LICENSE_START(VERBATIM_PROF)
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date.  The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\" %%%LICENSE_END
+.\"
+.\" 2006-02-03, mtk, substantial wording changes and other improvements
+.\" 2007-08-27, Lee Schermerhorn <Lee.Schermerhorn@hp.com>
+.\"     more precise specification of behavior.
+.\"
+.\"*******************************************************************
+.\"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.\"
+.\" Japanese Version Copyright (c) 2006 Akihiro MOTOKI
+.\"         all rights reserved.
+.\" Translated 2006-08-14, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.39
+.\" Updated 2008-02-13, Akihiro MOTOKI, LDP v2.77
+.\" Updated 2008-08-06, Akihiro MOTOKI, LDP v3.05
+.\" Updated 2008-08-21, Akihiro MOTOKI, LDP v3.07
+.\" Updated 2008-11-19, Akihiro MOTOKI, LDP v3.13
+.\"
+.TH GET_MEMPOLICY 2 2017\-09\-15 Linux "Linux Programmer's Manual"
+.SH 名前
+get_mempolicy \- スレッドの NUMA メモリーのポリシーを取得する
+.SH 書式
+\fB#include <numaif.h>\fP
+.nf
+.PP
+\fBlong get_mempolicy(int *\fP\fImode\fP\fB, unsigned long *\fP\fInodemask\fP\fB,\fP
+\fB                  unsigned long \fP\fImaxnode\fP\fB, void *\fP\fIaddr\fP\fB,\fP
+\fB                  unsigned long \fP\fIflags\fP\fB);\fP
+.PP
+\fI\-lnuma\fP でリンクする。
+.fi
+.SH 説明
+\fBget_mempolicy\fP() は、呼び出し元スレッドもしくは指定されたメモリーアドレスの NUMA ポリシーを \fIflags\fP
+の設定に従って取得する。
+.PP
+NUMA (非対称メモリーアクセス) マシンでは、CPU により メモリーコントローラーが異なり、距離も異なっている。
+メモリーポリシーは、どのノードからメモリーをそのスレッドに 割り当てるかを定めるものである。
+.PP
+If \fIflags\fP is specified as 0, then information about the calling thread's
+default policy (as set by \fBset_mempolicy\fP(2))  is returned, in the buffers
+pointed to by \fImode\fP and \fInodemask\fP.  The value returned in these
+arguments may be used to restore the thread's policy to its state at the
+time of the call to \fBget_mempolicy\fP()  using \fBset_mempolicy\fP(2).  When
+\fIflags\fP is 0, \fIaddr\fP must be specified as NULL.
+.PP
+\fIflags\fP に \fBMPOL_F_MEMS_ALLOWED\fP (Linux 2.6.24 以降で利用可能) を指定すると、 \fImode\fP
+引き数は無視され、 そのスレッドがその後の \fBmbind\fP(2)  や \fBset_mempolicy\fP(2)  で (\fIモードフラグ\fP
+が指定されていない場合に) 指定できるノード (メモリー) の集合が \fInodemask\fP に返される。 \fBMPOL_F_MEMS_ALLOWED\fP
+を、 \fBMPOL_F_ADDR\fP や \fBMPOL_F_NODE\fP と同時に指定することはできない。
+.PP
+\fIflags\fP に \fBMPOL_F_ADDR\fP が指定された場合、 \fIaddr\fP
+で指定されたメモリーアドレスに適用されているポリシーに関する情報を返す。 \fBmbind\fP(2)  や \fBnuma\fP(3)
+で説明されているヘルパー関数を使って、 \fIaddr\fP を含むメモリー領域に対するポリシーが設定されていた場合には、
+返されるポリシーはスレッドのデフォルトポリシーと違うことがある。
+.PP
+\fImode\fP 引き数が NULL でない場合、 \fBget_mempolicy\fP()  は要求された NUMA ポリシーのモードと追加の
+\fIモードフラグ\fP を \fImode\fP が指す場所に格納する。 \fInodemask\fP が NULL 以外の場合、そのポリシーに対応するノードマスクを
+この引き数が指す場所に格納する。 \fImaxnode\fP には \fInodemask\fP に格納できるノード ID の数、つまり最大ノード ID に 1
+を足した値を指定する。 \fImaxnode\fP で指定された値は常に \fIsizeof(unsigned\ long)*8\fP の倍数に切り上げられる。
+.PP
+\fIflags\fP で \fBMPOL_F_NODE\fP と \fBMPOL_F_ADDR\fP の両方が指定された場合、 \fBget_mempolicy\fP()
+はアドレス \fIaddr\fP が割り当てられているノードのノード ID を \fImode\fP が指す場所に入れて返す。
+指定されたアドレスにどのページもまだ割り当てられていない場合、 \fBget_mempolicy\fP()
+は、あたかもそのスレッドがそのアドレスに対して読み込みアクセスを 実行したかのようにページの割り当てを行い、ページが割り当てられた ノードの ID
+を返す。
+.PP
+.\" Note:  code returns next interleave node via 'mode' argument -Lee Schermerhorn
+\fIflags\fP で \fBMPOL_F_NODE\fP は指定されたが、 \fBMPOL_F_ADDR\fP は指定されていない場合で、かつ
+そのスレッドの現在のポリシーが \fBMPOL_INTERLEAVE\fP の場合、 \fBget_mempolicy\fP()
+は、そのスレッドに対して割り当てられたカーネルの内部ページで 次にインターリーブ用に使用されるノードのノード ID を、 NULL でない
+\fImode\fP 引き数が指す場所に入れて返す。これには、読み込みアクセス用として \fBMAP_PRIVATE\fP フラグ付きで \fBmmap\fP(2)
+したプロセスメモリー領域や、 任意のアクセス用として \fBMAP_SHARED\fP フラグ付きで \fBmmap\fP(2)
+したメモリー領域の、メモリーマップされたファイルに対するページも含まれる。
+.PP
+他のフラグは予約されている。
+.PP
+設定可能なポリシーの概要については \fBset_mempolicy\fP(2)  を参照。
+.SH 返り値
+成功すると、 \fBget_mempolicy\fP()  は 0 を返す。エラーの場合、\-1 を返し、 \fIerrno\fP にエラーを示す値を設定する。
+.SH エラー
+.TP 
+\fBEFAULT\fP
+\fInodemask\fP と \fImaxnode\fP で指定されたメモリー領域の一部または全部が、 呼び出し元がアクセス可能なアドレス空間外を指している。
+.TP 
+\fBEINVAL\fP
+\fImaxnode\fP で指定された値がシステムがサポートするノード ID の数よりも少ない。 または、 \fIflags\fP に
+\fBMPOL_F_NODE\fP でも \fBMPOL_F_ADDR\fP でもない値が指定された。 または、 \fIflags\fP に \fBMPOL_F_ADDR\fP
+が指定されており、 \fIaddr\fP が NULL である。 または、 \fIflags\fP に \fBMPOL_F_ADDR\fP がされておらず、
+\fIaddr\fP が NULL でない。 または、 \fIflags\fP に \fBMPOL_F_NODE\fP が指定されており、 \fBMPOL_F_ADDR\fP
+が指定されておらず、 スレッドの現在のポリシーが \fBMPOL_INTERLEAVE\fP でない。 または、 \fIflags\fP に
+\fBMPOL_F_MEMS_ALLOWED\fP が指定されており、さらに \fBMPOL_F_ADDR\fP か \fBMPOL_F_NODE\fP
+のいずれかが指定されている。 (他にも \fBEINVAL\fP となる場合がある。)
+.SH バージョン
+\fBget_mempolicy\fP()  システムコールはバージョン 2.6.7 で Linux カーネルに追加された。
+.SH 準拠
+このシステムコールは Linux 固有である。
+.SH 注意
+ライブラリによるサポートについては \fBnuma\fP(7)  を参照。
+.SH 関連項目
+\fBgetcpu\fP(2), \fBmbind\fP(2), \fBmmap\fP(2), \fBset_mempolicy\fP(2), \fBnuma\fP(3),
+\fBnuma\fP(7), \fBnumactl\fP(8)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は
+\%https://www.kernel.org/doc/man\-pages/ に書かれている。
diff --git a/manual/LDP_man-pages/draft/man2/mbind.2 b/manual/LDP_man-pages/draft/man2/mbind.2
new file mode 100644 (file)
index 0000000..f26d226
--- /dev/null
@@ -0,0 +1,241 @@
+.\" Copyright 2003,2004 Andi Kleen, SuSE Labs.
+.\" and Copyright 2007 Lee Schermerhorn, Hewlett Packard
+.\"
+.\" %%%LICENSE_START(VERBATIM_PROF)
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date.  The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\" %%%LICENSE_END
+.\"
+.\" 2006-02-03, mtk, substantial wording changes and other improvements
+.\" 2007-08-27, Lee Schermerhorn <Lee.Schermerhorn@hp.com>
+.\"    more precise specification of behavior.
+.\"
+.\" FIXME
+.\" Linux 3.8 added MPOL_MF_LAZY, which needs to be documented.
+.\" Does it also apply for move_pages()?
+.\"
+.\"                commit b24f53a0bea38b266d219ee651b22dba727c44ae
+.\"                Author: Lee Schermerhorn <lee.schermerhorn@hp.com>
+.\"                Date:   Thu Oct 25 14:16:32 2012 +0200
+.\"
+.\"*******************************************************************
+.\"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.\"
+.\" Japanese Version Copyright (c) 2006 Akihiro MOTOKI
+.\"         all rights reserved.
+.\" Translated 2006-07-25, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.36
+.\" Updated 2008-08-21, Akihiro MOTOKI, LDP v3.07
+.\" Updated 2008-09-19, Akihiro MOTOKI, LDP v3.08
+.\" Updated 2013-03-26, Akihiro MOTOKI <amotoki@gmail.com>
+.\" Updated 2013-05-01, Akihiro MOTOKI <amotoki@gmail.com>
+.\"
+.TH MBIND 2 2020\-06\-09 Linux "Linux Programmer's Manual"
+.SH 名前
+mbind \- メモリー領域に対してメモリーポリシーを設定する
+.SH 書式
+.nf
+\fB#include <numaif.h>\fP
+.PP
+\fBlong mbind(void *\fP\fIaddr\fP\fB, unsigned long \fP\fIlen\fP\fB, int \fP\fImode\fP\fB,\fP
+\fB           const unsigned long *\fP\fInodemask\fP\fB, unsigned long \fP\fImaxnode\fP\fB,\fP
+\fB           unsigned \fP\fIflags\fP\fB);\fP
+.PP
+\fI\-lnuma\fP でリンクする。
+.fi
+.SH 説明
+\fBmbind\fP()  は、 \fIaddr\fP から始まる長さ \fIlen\fP バイトの範囲のメモリーに NUMA メモリーポリシーを設定する。 NUMA
+ポリシーはポリシーモードと 0 個以上のノードから構成される。 メモリーポリシーはどのノードからメモリーを割り当てるかを決定する。
+.PP
+\fIaddr\fP と \fIlen\fP で指定されたメモリー範囲に、 メモリーの「無名」領域 \(em \fBMAP_ANONYMOUS\fP 付きの
+\fBmmap\fP(2)  システムコールを使って作成されたメモリー領域 \(em や \fBMAP_PRIVATE\fP 付きの \fBmmap\fP(2)
+を使ってマップされたメモリーマップファイルが含まれている場合、アプリケーションがそのページへの書き込み (データの格納)
+を行った時には指定されたポリシーのみに基づいてページが割り当てられる。無名領域の場合、最初の読み出しアクセスの際には カーネル内の全データが 0
+である共有ページが使用される。 \fBMAP_PRIVATE\fP でマップされたファイルの場合、最初の読み出しアクセスがあると、
+ページ割り当てが発生するきっかけとなったスレッドのメモリポリシーにしたがってページの割り当てが行われる。 ページ割り当てのきっかけとなったスレッドは、
+\fBmbind\fP() を呼び出したスレッドと同じとは限らない。
+.PP
+指定されたメモリー範囲内にある \fBMAP_SHARED\fP のマッピングでは指定されたポリシーは無視され、
+ページ割り当てが発生するきっかけとなったスレッドのメモリポリシーに したがってページの割り当てが行われることになる。
+繰り返しになるが、ページ割り当てのきっかけとなったスレッドは、 \fBmbind\fP()  を呼び出したスレッドと同じとは限らない。
+.PP
+指定されたメモリー範囲に、 \fBshmget\fP(2)  システムコールを使って作成されたり、 \fBshmat\fP(2)  システムコールを使って付加
+(attach) されたりした共有メモリー領域が 含まれる場合、無名メモリー領域や共有メモリー領域に対するページ割り当ては、
+共有メモリーセグメントへポリシーの設定を行ったプロセスがページ割り当て のきっかけとなったかに関わらず、指定されたポリシーにしたがって割り当て
+が行われる。 しかしながら、共有メモリー領域が \fBSHM_HUGETLB\fP フラグを指定して作成された場合には、ヒュージページ (huge page)
+の割り当てが 指定されたポリシーにしたがって行われるのは、その領域に対して \fBmbind\fP()
+を呼び出したプロセスがページ割り当てのきっかけとなった場合のみである。
+.PP
+デフォルトでは、 \fBmbind\fP()  は新規のメモリー割り当てに対してのみ効果を持つ。
+ポリシーが設定される前にすでに使用されている範囲内のページに対しては、 ポリシーは影響しない。 このデフォルトの動作は、以下で説明するフラグ
+\fBMPOL_MF_MOVE\fP や \fBMPOL_MF_MOVE_ALL\fP により上書きされる可能性がある。
+.PP
+\fImode\fP 引き数には、 \fBMPOL_DEFAULT\fP, \fBMPOL_BIND\fP, \fBMPOL_INTERLEAVE\fP,
+\fBMPOL_PREFERRED\fP, \fBMPOL_LOCAL\fP (詳細は下記参照) のいずれか一つを指定しなければならない。
+\fBMPOL_DEFAULT\fP 以外のポリシーモードの場合、呼び出し元は \fInodemask\fP
+引き数でそのポリシーモードを適用するノードを指定する必要がある。
+.PP
+\fImode\fP 引き数には、追加で \fIモードフラグ\fP を含めることもできる。 サポートされている \fIモードフラグ\fP は以下の通りである。
+.TP 
+\fBMPOL_F_STATIC_NODES\fP (Linux\-2.6.26 以降)
+空でない \fInodemask\fP は、物理ノード ID である。 Linux では、そのスレッドが異なる CPU 集合コンテキスト (cpuset
+context)  に移動した場合でも、そのスレッドの現在の CPU 集合コンテキストで 許可されているノード集合が変化した場合でも、
+\fInodemask\fP をマッピングし直すことはない。
+.TP 
+\fBMPOL_F_RELATIVE_NODES\fP (Linux\-2.6.26 以降)
+空でない \fInodemask\fP は、そのスレッドの現在の CPU 集合で許可されているノード ID 集合 における相対的なノード ID である。
+.PP
+\fInodemask\fP は、最大で \fImaxnode\fP ビットから構成されるノードのビットマスクを指す。 ビットマスクの大きさは、直近の
+\fIsizeof(unsigned long)\fP の倍数に切り上げられるが、カーネルが使用するのは \fImaxnode\fP 個までのビットだけである。
+NULL 値の \fInodemask\fP もしくは値が 0 の \fImaxnode\fP はノードの空集合を表す。 \fImaxnode\fP の値が 0 の場合、
+\fInodemask\fP 引き数は無視される。 \fInodemask\fP が必須の場面では、 \fInodemask\fP に、オンラインで、そのスレッドの現在の
+CPU 集合コンテキストで 許可されており (\fBMPOL_F_STATIC_NODES\fP モードフラグが指定されていない場合)、メモリーがあるノードが
+少なくとも一つ入っていなければならない。
+.PP
+\fImode\fP 引き数には、以下の値のいずれかひとつを含めなければならない。
+.TP 
+\fBMPOL_DEFAULT\fP
+このモードはデフォルトではないメモリーポリシーを削除し、 デフォルトの動作に戻すことを指定するものである。 \fBmbind\fP()
+経由で、あるメモリー領域に対して \fBMPOL_DEFAULT\fP が適用された場合、スレッドのメモリポリシーを使用することを意味する。
+スレッドのメモリポリシーは、 \fBset_mempolicy\fP(2)  で変更されているかもしれない。 スレッドのメモリポリシーのモードも
+\fBMPOL_DEFAULT\fP の場合、システム全体のデフォルトポリシーが使用される。 システム全体のデフォルトポリシーでは、割り当てのきっかけとなった
+CPU のノードからページの割り当てを行う。 \fBMPOL_DEFAULT\fP では、引き数 \fInodemask\fP と \fImaxnode\fP
+にノードの空集合を指定しなければならない。
+.TP 
+\fBMPOL_BIND\fP
+.\" commit 19770b32609b6bf97a3dece2529089494cbfc549
+This mode specifies a strict policy that restricts memory allocation to the
+nodes specified in \fInodemask\fP.  If \fInodemask\fP specifies more than one
+node, page allocations will come from the node with sufficient free memory
+that is closest to the node where the allocation takes place.  Pages will
+not be allocated from any node not specified in the IR nodemask .  (Before
+Linux 2.6.26, page allocations came from the node with the lowest numeric
+node ID first, until that node contained no free memory.  Allocations then
+came from the node with the next highest node ID specified in \fInodemask\fP
+and so forth, until none of the specified nodes contained free memory.)
+.TP 
+\fBMPOL_INTERLEAVE\fP
+このモードは、メモリー割り当てが \fInodemask\fP に指定されたノード間で交互に行われることを指定するものである。
+このポリシーでは、複数のノードにページを広げて配置し、これらのページへの メモリーアクセスを分散することで、遅延ではなく、帯域を最適化する。
+効果を得るには、メモリー領域をある程度大きくすべきであり、 メモリーアクセスのパターンがかなり均一な場合でも 少なくとも 1\ MB
+以上にすべきである。 このモードでも、一つのページへのアクセスに関しては 一つのノードのメモリー帯域が上限となることは変わりない。
+.TP 
+\fBMPOL_PREFERRED\fP
+このモードは、割り当て時に優先されるノードを設定する。 カーネルはまず優先ノードにページ割り当てを行おうとし、
+優先ノードに空きメモリーが少ない場合に他のノードに割り当てを行う。 \fInodemask\fP に複数のノード ID が指定された場合は、
+\fInodemask\fP 内の最初のノードが優先ノードとして選択される。 引き数 \fInodemask\fP, \fImaxnode\fP
+で空集合が指定された場合は、割り当てのきっかけとなった CPU のノードに メモリー割り当てが行われる。
+.TP 
+\fBMPOL_LOCAL\fP (Linux 3.8 以降)
+.\" commit 479e2802d09f1e18a97262c4c6f8f17ae5884bd8
+.\" commit f2a07f40dbc603c15f8b06e6ec7f768af67b424f
+This mode specifies "local allocation"; the memory is allocated on the node
+of the CPU that triggered the allocation (the "local node").  The
+\fInodemask\fP and \fImaxnode\fP arguments must specify the empty set.  If the
+"local node" is low on free memory, the kernel will try to allocate memory
+from other nodes.  The kernel will allocate memory from the "local node"
+whenever memory for this node is available.  If the "local node" is not
+allowed by the thread's current cpuset context, the kernel will try to
+allocate memory from other nodes.  The kernel will allocate memory from the
+"local node" whenever it becomes allowed by the thread's current cpuset
+context.  By contrast, \fBMPOL_DEFAULT\fP reverts to the memory policy of the
+thread (which may be set via \fBset_mempolicy\fP(2)); that policy may be
+something other than "local allocation".
+.PP
+.\" According to the kernel code, the following is not true
+.\" --Lee Schermerhorn
+.\" In 2.6.16 or later the kernel will also try to move pages
+.\" to the requested node with this flag.
+\fIflags\fP に \fBMPOL_MF_STRICT\fP が 指定され、 \fImode\fP が \fBMPOL_DEFAULT\fP でない場合、
+指定されたポリシーに従っていないメモリー領域にページが存在すると、 \fBmbind\fP()  はエラー \fBEIO\fP で失敗する。
+.PP
+\fIflags\fP に \fBMPOL_MF_MOVE\fP が指定されると、カーネルはそのメモリー領域内の既存の全てのページを移動し、
+指定されたポリシーに従うようにしようとする。 他のプロセスと共有されているページは移動されない。 \fBMPOL_MF_STRICT\fP
+も指定された場合、移動できなかったページがあると、 \fBmbind\fP()  はエラー \fBEIO\fP で失敗する。
+.PP
+.\" ---------------------------------------------------------------
+\fIflags\fP に \fBMPOL_MF_MOVE_ALL\fP が指定されると、カーネルはそのメモリー領域内の既存の全てのページを、
+他のプロセスがページを使用しているかどうかに関わらず移動する。 このフラグを使用するには、呼び出し元のスレッドは特権 (\fBCAP_SYS_NICE\fP)
+を持っていなければならない。 \fBMPOL_MF_STRICT\fP も指定された場合、移動できなかったページがあると、 \fBmbind\fP()  はエラー
+\fBEIO\fP で失敗する。
+.SH 返り値
+.\" ---------------------------------------------------------------
+成功すると、 \fBmbind\fP()  は 0 を返す。エラーの場合、\-1 を返し、 \fIerrno\fP にエラーを示す値を設定する。
+.SH エラー
+.\"  I think I got all of the error returns.  --Lee Schermerhorn
+.TP 
+\fBEFAULT\fP
+\fInodemask\fP と \fImaxnode\fP で指定されたメモリー領域の一部または全部が、 呼び出し元がアクセス可能なアドレス空間外を指している。
+もしくは \fIaddr\fP と \fIlen\fP で指定されたメモリー領域にマップされていない部分 (unmapped hole)  があった、
+.TP 
+\fBEINVAL\fP
+.\" As at 2.6.23, this limit is "a page worth of bits", e.g.,
+.\" 8 * 4096 bits, assuming a 4kB page size.
+\fIflags\fP や \fImode\fP に不正な値が指定された。 \fIaddr + len\fP が \fIaddr\fP より小さい。 \fIaddr\fP
+がシステムのページサイズの倍数になっていない。 または \fImode\fP が \fBMPOL_DEFAULT\fP で \fInodemask\fP
+に空でない集合が指定された。 \fImode\fP が \fBMPOL_BIND\fP か \fBMPOL_INTERLEAVE\fP で \fInodemask\fP
+が空であった。 \fImaxnode\fP がカーネルに適用された上限を超えている。 \fInodemask\fP に、サポートされている最大ノード ID
+より大きいノードが指定された。 \fInodemask\fP に、オンラインで、かつそのスレッドの現在の CPU 集合コンテキストで
+許可されているノードが一つも含まれていないか、 メモリーを含むノードが一つも指定されていない。 \fImode\fP 引き数に
+\fBMPOL_F_STATIC_NODES\fP と \fBMPOL_F_RELATIVE_NODES\fP の両方が指定された。
+.TP 
+\fBEIO\fP
+\fBMPOL_MF_STRICT\fP が指定されたが、このポリシーに従っていないノードに すでにページが存在していた。 もしくは
+\fBMPOL_MF_MOVE\fP か \fBMPOL_MF_MOVE_ALL\fP が指定されたが、カーネルが指定された領域内の既存の全てのページを
+移動することができなかった。
+.TP 
+\fBENOMEM\fP
+利用可能なカーネルメモリーが十分でなかった。
+.TP 
+\fBEPERM\fP
+.\" ---------------------------------------------------------------
+\fIflags\fP 引き数に \fBMPOL_MF_MOVE_ALL\fP フラグが含まれているが、呼び出し元が \fBCAP_SYS_NICE\fP
+特権を持たない。
+.SH バージョン
+\fBmbind\fP()  システムコールはバージョン 2.6.7 で Linux カーネルに追加された。
+.SH 準拠
+このシステムコールは Linux 固有である。
+.SH 注意
+ライブラリによるサポートについては \fBnuma\fP(7)  を参照。
+.PP
+NUMA ポリシーは、 \fBMAP_SHARED\fP フラグが指定されてマップされたメモリーマップファイルの領域では サポートされていない。
+.PP
+\fBMPOL_DEFAULT\fP モードは、 \fBmbind\fP()  と \fBset_mempolicy\fP(2)  で異なる効果を持つことができる。
+\fBset_mempolicy\fP(2)  で \fBMPOL_DEFAULT\fP が指定された場合、そのスレッドのメモリポリシーはシステムの
+デフォルトポリシー、すなわちローカルからの割り当て、に戻る。 \fBmbind\fP()  を使ってメモリーのある領域に \fBMPOL_DEFAULT\fP
+が指定された場合、その範囲に対してそれ以降に行われるページの割り当てでは、 \fBset_mempolicy\fP(2)
+で設定したのと同じように、そのスレッドのメモリポリシーが適用される。 これにより、特定のメモリー領域についてだけ明示的なポリシーを削除し、
+デフォルトのポリシーに「戻す」ことができる。 あるメモリー領域に対して「ローカルからの割り当て」を明示的に設定するには、 \fImode\fP に
+\fBMPOL_LOCAL\fP か \fBMPOL_PREFERRED\fP を指定し、 \fInodemask\fP に空集合のノードを指定すればよい。 この方法は
+\fBset_mempolicy\fP(2)  でも通用する。
+.PP
+2.6.16 でヒュージページポリシーへの対応が追加された。 インターリーブポリシーがヒュージページのマッピングで効果を持つには、
+ポリシーが適用されるメモリーが数十メガバイト以上である必要がある。
+.PP
+.\" commit dcf1763546d76c372f3136c8d6b2b6e77f140cf0
+Linux 5.7 より前では、 \fBMPOL_MF_STRICT\fP はヒュージページのマッピングでは無視されていた。
+.PP
+\fBMPOL_MF_MOVE\fP と \fBMPOL_MF_MOVE_ALL\fP は Linux 2.6.16 以降でのみ利用可能である。
+.SH 関連項目
+\fBget_mempolicy\fP(2), \fBgetcpu\fP(2), \fBmmap\fP(2), \fBset_mempolicy\fP(2),
+\fBshmat\fP(2), \fBshmget\fP(2), \fBnuma\fP(3), \fBcpuset\fP(7), \fBnuma\fP(7),
+\fBnumactl\fP(8)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は
+\%https://www.kernel.org/doc/man\-pages/ に書かれている。
index f2482d5..8e50080 100644 (file)
@@ -69,8 +69,8 @@ migrate_pages \- プロセスの全ページを別のノード集合に移動す
 .SH エラー
 .TP 
 \fBEFAULT\fP
-Part or all of the memory range specified by \fIold_nodes\fP/\fInew_nodes\fP and
-\fImaxnode\fP points outside your accessible address space.
+\fIold_nodes\fP/\fInew_nodes\fP と \fImaxnode\fP で指定されたメモリー領域の一部または全部が、
+呼び出し元がアクセス可能なアドレス空間外を指している。
 .TP 
 \fBEINVAL\fP
 .\" As at 3.5, this limit is "a page worth of bits", e.g.,
@@ -115,7 +115,7 @@ context, or none of the specified nodes contain memory.
 \fBnuma_maps\fP(5), \fBcpuset\fP(7), \fBnuma\fP(7), \fBmigratepages\fP(8),
 \fBnumastat\fP(8)
 .PP
-\fIDocumentation/vm/page_migration.rst\fP in the Linux kernel source tree
+Linux カーネルソースの \fIDocumentation/vm/page_migration.rst\fP
 .SH この文書について
 この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は
 \%https://www.kernel.org/doc/man\-pages/ に書かれている。
index 4e8a66f..ae69a83 100644 (file)
@@ -48,9 +48,8 @@ is 0, then \fBmove_pages\fP()  moves pages of the calling process.
 .PP
 To move pages in another process requires the following privileges:
 .IP * 3
-In kernels up to and including Linux 4.12: the caller must be privileged
-(\fBCAP_SYS_NICE\fP)  or the real or effective user ID of the calling process
-must match the real or saved\-set user ID of the target process.
+Linux 4.12 以前のカーネルでは、呼び出し元が特権 (\fBCAP_SYS_NICE\fP)  を持っているか、呼び出したプロセスの実ユーザー ID
+か実効ユーザー ID が ページ移動対象のプロセスの実ユーザー ID か保存 set\-user\-ID のどちらかと一致しなければならない。
 .IP *
 .\" commit 197e7e521384a23b9e585178f3f11c9fa08274b9
 The older rules allowed the caller to discover various virtual address
diff --git a/manual/LDP_man-pages/draft/man2/set_mempolicy.2 b/manual/LDP_man-pages/draft/man2/set_mempolicy.2
new file mode 100644 (file)
index 0000000..dbfbf3c
--- /dev/null
@@ -0,0 +1,175 @@
+.\" Copyright 2003,2004 Andi Kleen, SuSE Labs.
+.\" and Copyright 2007 Lee Schermerhorn, Hewlett Packard
+.\"
+.\" %%%LICENSE_START(VERBATIM_PROF)
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date.  The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\" %%%LICENSE_END
+.\"
+.\" 2006-02-03, mtk, substantial wording changes and other improvements
+.\" 2007-08-27, Lee Schermerhorn <Lee.Schermerhorn@hp.com>
+.\"     more precise specification of behavior.
+.\"
+.\"*******************************************************************
+.\"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.\"
+.\" Translated 2006-08-14, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.39
+.\" Updated 2007-01-07, Akihiro MOTOKI, LDP v2.43
+.\" Updated 2008-02-13, Akihiro MOTOKI, LDP v2.77
+.\" Updated 2008-08-06, Akihiro MOTOKI, LDP v3.05
+.\" Updated 2008-08-21, Akihiro MOTOKI, LDP v3.07
+.\" Updated 2008-09-02, Akihiro MOTOKI, LDP v3.08
+.\" Updated 2008-11-19, Akihiro MOTOKI, LDP v3.13
+.\"
+.TH SET_MEMPOLICY 2 2020\-12\-21 Linux "Linux Programmer's Manual"
+.SH 名前
+set_mempolicy \- スレッドとその子スレッドの NUMA メモリーの デフォルトポリシーを設定する
+.SH 書式
+.nf
+\fB#include <numaif.h>\fP
+.PP
+\fBlong set_mempolicy(int \fP\fImode\fP\fB, const unsigned long *\fP\fInodemask\fP\fB,\fP
+\fB                   unsigned long \fP\fImaxnode\fP\fB);\fP
+.PP
+\fI\-lnuma\fP でリンクする。
+.fi
+.SH 説明
+\fBset_mempolicy\fP()  は、呼び出し元スレッドの NUMA ポリシーを \fIpolicy\fP に設定する。 NUMA
+ポリシーはポリシーモードと 0 個以上のノードから構成され、 設定内容は引き数 \fImode\fP, \fInodemask\fP, \fImaxnode\fP
+により指定される。
+.PP
+NUMA (非対称メモリーアクセス) マシンでは、CPU により メモリーコントローラーが異なり、距離も異なっている。
+メモリーポリシーは、どのノードからメモリーをそのスレッドに 割り当てるかを定めるものである。
+.PP
+\fBset_mempolicy\fP()  は、スレッドのデフォルトポリシーを定める。スレッドのポリシーは、 \fBmbind\fP(2)
+で設定される特定のポリシーにより制御されるメモリー領域以外のスレッドのアドレス空間におけるページの割り当てに適用される。
+スレッドのデフォルトポリシーは、 \fBMAP_PRIVATE\fP フラグを指定した \fBmmap\fP(2)
+を使ってマップされたメモリーマップファイルに対する読み出し専用 (ロードされるだけ) のページの割り当てにも適用される。 また、
+\fBMAP_SHARED\fP フラグを指定した \fBmmap\fP(2)  を使ってマップされたメモリーマップファイルに対するページの割り当てにも 適用される
+(この場合はページのアクセス種別に関わらず適用される) 。 設定したポリシーは、スレッドに新規のページが割り当てられるときにのみ
+適用される。無名メモリー (anonymous memory) の場合、新規ページの割り当ては
+アプリケーションが初めてページにアクセスした際に行われる。
+.PP
+\fImode\fP 引き数には、 \fBMPOL_DEFAULT\fP, \fBMPOL_BIND\fP, \fBMPOL_INTERLEAVE\fP,
+\fBMPOL_PREFERRED\fP, \fBMPOL_LOCAL\fP (詳細は下記参照) のいずれか一つを指定しなければならない。
+\fBMPOL_DEFAULT\fP 以外のポリシーモードの場合、呼び出し元は \fInodemask\fP
+引き数でそのポリシーモードを適用するノードを指定する必要がある。
+.PP
+\fImode\fP 引き数には、追加で \fIモードフラグ\fP を含めることもできる。 サポートされている \fIモードフラグ\fP は以下の通りである。
+.TP 
+\fBMPOL_F_STATIC_NODES\fP (Linux 2.6.26 以降)
+空でない \fInodemask\fP は、物理ノード ID である。 Linux では、そのプロセスが異なる CPU 集合コンテキスト (cpuset
+context)  に移動した場合でも、そのプロセスの現在の CPU 集合コンテキストで 許可されているノード集合が変化した場合でも、
+\fInodemask\fP をマッピングし直すことはない。
+.TP 
+\fBMPOL_F_RELATIVE_NODES\fP (Linux 2.6.26 以降)
+空でない \fInodemask\fP は、そのプロセスの現在の CPU 集合で許可されているノード ID 集合 における相対的なノード ID である。
+.PP
+\fInodemask\fP は、最大で \fImaxnode\fP ビットから構成されるノード ID のビットマスクを指す。 ビットマスクの大きさは、直近の
+\fIsizeof(unsigned long)\fP の倍数に切り上げられるが、カーネルが使用するのは \fImaxnode\fP 個までのビットだけである。
+NULL 値の \fInodemask\fP もしくは値が 0 の \fImaxnode\fP はノードの空集合を表す。 \fImaxnode\fP の値が 0 の場合、
+\fInodemask\fP 引き数は無視される。
+.PP
+\fInodemask\fP が必須の場面では、 \fInodemask\fP に、オンラインで、そのプロセスの現在の CPU 集合コンテキストで 許可されており
+(\fBMPOL_F_STATIC_NODES\fP モードフラグが指定されていない場合)、メモリーがあるノードが 少なくとも一つ入っていなければならない。
+\fImode\fP に \fBMPOL_F_STATIC_NODES\fP がセットされ、 \fInodemask\fP が必須の場面で、 \fInodemask\fP
+に、そのプロセスの現在の CPU 集合コンテキストで許可されたノードが 一つも含まれていない場合には、メモリーのポリシーとしてデフォルトの
+「ローカルから割り当て (local allocation)」が適用される。 そのプロセスの CPU 集合コンテキストが \fInodemask\fP
+で指定されたノードを少なくとも一つ含むようになるまでは、 結果的に指定された動作が上書きされることになる。
+.PP
+\fImode\fP 引き数には、以下の値のいずれかひとつを含めなければならない。
+.TP 
+\fBMPOL_DEFAULT\fP
+このモードは、デフォルトではないスレッドのメモリーポリシーを削除することを 指定するものである。これにより、メモリーポリシーはシステムの
+デフォルトポリシーに「戻る」ことになる。 システムのデフォルトポリシーは「ローカルからの割り当て (local allocation)」、
+つまりメモリー割り当てのきっかけとなった CPU のノードのメモリーが割り当てられる。 \fInodemask\fP には NULL
+を指定しなければならない。 「自ノード (local node)」に空きメモリーが全くない場合、システムは 「近くの (near by)
+ノード」からメモリーを割り当てようと試みる。
+.TP 
+\fBMPOL_BIND\fP
+このモードは厳密なポリシーで、メモリー割り当ては \fInodemask\fP に指定されたノードに限定される。 \fInodemask\fP に 2
+個以上のノードが指定された場合、ページの割り当ては ノード ID が数字として最小のノードから開始され、
+そのノードに空きメモリーがなくなるまでそのノードから ページ割り当てが行われる。そのノードに空きメモリーがなくなったら、 次に小さなノード ID
+を持つノードからページ割り当てが行われる。 これを、 \fInodemask\fP で指定された全てのノードで空きメモリーがなくなるまで繰り返す。
+\fInodemask\fP で指定された以外のノードからはページの割り当ては行われない。
+.TP 
+\fBMPOL_INTERLEAVE\fP
+.\" NOTE:  the following sentence doesn't make sense in the context
+.\" of set_mempolicy() -- no memory area specified.
+.\" To be effective the memory area should be fairly large,
+.\" at least 1 MB or bigger.
+このモードでは、ページ割り当てを \fInodemask\fP に指定されたノードの間でノード ID の数字順で交互に行う。
+このポリシーでは、複数のノードにページを広げて配置し、これらのページへのメモリー アクセスを分散することで、遅延ではなく、帯域を最適化する。
+ただし、一つのページへのアクセスに関しては依然として一つのノードのメモリー帯域 が上限となる。
+.TP 
+\fBMPOL_PREFERRED\fP
+このモードは、割り当て時に優先されるノード (preferred node) を設定する。 カーネルはまず優先ノードからページ割り当てを行おうとし、
+優先ノードに空きメモリーが少ない場合に「近くの (near by)」ノードから 割り当てを行う。 \fInodemask\fP に複数のノード ID
+が指定された場合は、 \fInodemask\fP 内の最初のノードが優先ノードとして選択される。 引き数 \fInodemask\fP, \fImaxnode\fP
+で空集合が指定された場合は、ポリシーは (上述のシステムの デフォルトポリシーと同様に) 「ローカルからの割り当て」となる。
+.TP 
+\fBMPOL_LOCAL\fP (Linux 3.8 以降)
+.\" commit 479e2802d09f1e18a97262c4c6f8f17ae5884bd8
+.\" commit f2a07f40dbc603c15f8b06e6ec7f768af67b424f
+This mode specifies "local allocation"; the memory is allocated on the node
+of the CPU that triggered the allocation (the "local node").  The
+\fInodemask\fP and \fImaxnode\fP arguments must specify the empty set.  If the
+"local node" is low on free memory, the kernel will try to allocate memory
+from other nodes.  The kernel will allocate memory from the "local node"
+whenever memory for this node is available.  If the "local node" is not
+allowed by the process's current cpuset context, the kernel will try to
+allocate memory from other nodes.  The kernel will allocate memory from the
+"local node" whenever it becomes allowed by the process's current cpuset
+context.
+.PP
+スレッドのメモリーポリシーは \fBexecve\fP(2)  の前後で保持され、 \fBfork\fP(2)  や \fBclone\fP(2)
+を使って作成された子スレッドに継承される。
+.SH 返り値
+成功すると、 \fBset_mempolicy\fP()  は 0 を返す。エラーの場合、\-1 を返し、 \fIerrno\fP にエラーを示す値を設定する。
+.SH エラー
+.TP 
+\fBEFAULT\fP
+\fInodemask\fP と \fImaxnode\fP で指定されたメモリー領域の一部または全部が、 呼び出し元がアクセス可能なアドレス空間外を指している。
+.TP 
+\fBEINVAL\fP
+\fImode\fP が不正である。 \fImode\fP が \fBMPOL_DEFAULT\fP で、 \fInodemask\fP が空ではない。 \fImode\fP が
+\fBMPOL_BIND\fP か \fBMPOL_INTERLEAVE\fP で、 \fInodemask\fP が空である。 \fImaxnode\fP
+で実際に意味があるビット数より多くのビット数が指定された。 \fInodemask\fP に、サポートされている最大ノード ID
+より大きいノードが指定された。 \fInodemask\fP に、オンラインで、かつそのプロセスの現在の CPU 集合コンテキストで
+許可されているノードが一つも含まれていないか、 メモリーを含むノードが一つも指定されていない。 \fImode\fP 引き数に
+\fBMPOL_F_STATIC_NODES\fP と \fBMPOL_F_RELATIVE_NODES\fP の両方が指定された。
+.TP 
+\fBENOMEM\fP
+利用可能なカーネルメモリーが十分でなかった。
+.SH バージョン
+\fBset_mempolicy\fP() システムコールはバージョン 2.6.7 で Linux カーネルに追加された。
+.SH 準拠
+このシステムコールは Linux 固有である。
+.SH 注意
+ページがスワップアウトされる場合には、 メモリポリシーの設定は推奨されない。 スワップアウトされたページがページインする際にも、
+ページ割り当て時に適用されるスレッドのポリシーやメモリー領域ポリシーが 使用される。
+.PP
+ライブラリによるサポートについては \fBnuma\fP(7)  を参照。
+.SH 関連項目
+\fBget_mempolicy\fP(2), \fBgetcpu\fP(2), \fBmbind\fP(2), \fBmmap\fP(2), \fBnuma\fP(3),
+\fBcpuset\fP(7), \fBnuma\fP(7), \fBnumactl\fP(8)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は
+\%https://www.kernel.org/doc/man\-pages/ に書かれている。
index 0d6f6cd..9d84f3d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "POT-Creation-Date: 2021-03-12 14:00+0900\n"
-"PO-Revision-Date: 2021-03-12 21:56+0900\n"
+"PO-Revision-Date: 2021-04-04 03:02+0900\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Language: \n"
@@ -25,7 +25,7 @@ msgstr "GET_MEMPOLICY"
 #: build/C/man2/get_mempolicy.2:27
 #, no-wrap
 msgid "2017-09-15"
-msgstr ""
+msgstr "2017-09-15"
 
 #. type: TH
 #: build/C/man2/get_mempolicy.2:27 build/C/man2/getcpu.2:12
@@ -56,10 +56,8 @@ msgstr "名前"
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:30
-#, fuzzy
-#| msgid "get_mempolicy - retrieve NUMA memory policy for a process"
 msgid "get_mempolicy - retrieve NUMA memory policy for a thread"
-msgstr "get_mempolicy - ã\83\97ã\83­ã\82»ã\82¹の NUMA メモリーのポリシーを取得する"
+msgstr "get_mempolicy - ã\82¹ã\83¬ã\83\83ã\83\89の NUMA メモリーのポリシーを取得する"
 
 #. type: SH
 #: build/C/man2/get_mempolicy.2:30 build/C/man2/getcpu.2:15
@@ -76,18 +74,14 @@ msgstr "B<#include E<lt>numaif.hE<gt>>"
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:37
-#, fuzzy, no-wrap
-#| msgid ""
-#| "B<int get_mempolicy(int *>I<mode>B<, unsigned long *>I<nodemask>B<,>\n"
-#| "B<                  unsigned long >I<maxnode>B<, unsigned long >I<addr>B<,>\n"
-#| "B<                  unsigned long >I<flags>B<);>\n"
+#, no-wrap
 msgid ""
 "B<long get_mempolicy(int *>I<mode>B<, unsigned long *>I<nodemask>B<,>\n"
 "B<                  unsigned long >I<maxnode>B<, void *>I<addr>B<,>\n"
 "B<                  unsigned long >I<flags>B<);>\n"
 msgstr ""
-"B<int get_mempolicy(int *>I<mode>B<, unsigned long *>I<nodemask>B<,>\n"
-"B<                  unsigned long >I<maxnode>B<, unsigned long >I<addr>B<,>\n"
+"B<long get_mempolicy(int *>I<mode>B<, unsigned long *>I<nodemask>B<,>\n"
+"B<                  unsigned long >I<maxnode>B<, void *>I<addr>B<,>\n"
 "B<                  unsigned long >I<flags>B<);>\n"
 
 #. type: Plain text
@@ -108,32 +102,18 @@ msgstr "説明"
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:45
-#, fuzzy
-#| msgid ""
-#| "B<get_mempolicy>()  retrieves the NUMA policy of the calling process or "
-#| "of a memory address, depending on the setting of I<flags>."
 msgid ""
 "B<get_mempolicy>()  retrieves the NUMA policy of the calling thread or of a "
 "memory address, depending on the setting of I<flags>."
-msgstr ""
-"B<get_mempolicy>()  は、呼び出し元プロセスもしくは指定されたメモリーアドレス"
-"の NUMA ポリシーを I<flags> の設定に従って取得する。"
+msgstr "B<get_mempolicy>() は、呼び出し元スレッドもしくは指定されたメモリーアドレスの NUMA ポリシーを I<flags> の設定に従って取得する。"
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:50 build/C/man2/set_mempolicy.2:54
-#, fuzzy
-#| msgid ""
-#| "A NUMA machine has different memory controllers with different distances "
-#| "to specific CPUs.  The memory policy defines from which node memory is "
-#| "allocated for the process."
 msgid ""
 "A NUMA machine has different memory controllers with different distances to "
 "specific CPUs.  The memory policy defines from which node memory is "
 "allocated for the thread."
-msgstr ""
-"NUMA (非対称メモリーアクセス) マシンでは、CPU により メモリーコントローラーが"
-"異なり、距離も異なっている。 メモリーポリシーは、どのノードからメモリーをその"
-"プロセスに 割り当てるかを定めるものである。"
+msgstr "NUMA (非対称メモリーアクセス) マシンでは、CPU により メモリーコントローラーが異なり、距離も異なっている。 メモリーポリシーは、どのノードからメモリーをそのスレッドに 割り当てるかを定めるものである。"
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:72
@@ -159,14 +139,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:94
-#, fuzzy
-#| msgid ""
-#| "If I<flags> specifies B<MPOL_F_MEMS_ALLOWED> (available since Linux "
-#| "2.6.24), the I<mode> argument is ignored and the set of nodes [memories] "
-#| "that the process is allowed to specify in subsequent calls to "
-#| "B<mbind>(2)  or B<set_mempolicy>(2)  [in the absence of any I<mode "
-#| "flags>] is returned in I<nodemask>.  It is not permitted to combine "
-#| "B<MPOL_F_MEMS_ALLOWED> with either B<MPOL_F_ADDR> or B<MPOL_F_NODE>."
 msgid ""
 "If I<flags> specifies B<MPOL_F_MEMS_ALLOWED> (available since Linux 2.6.24), "
 "the I<mode> argument is ignored and the set of nodes (memories) that the "
@@ -174,47 +146,20 @@ msgid ""
 "B<set_mempolicy>(2)  (in the absence of any I<mode flags>)  is returned in "
 "I<nodemask>.  It is not permitted to combine B<MPOL_F_MEMS_ALLOWED> with "
 "either B<MPOL_F_ADDR> or B<MPOL_F_NODE>."
-msgstr ""
-"I<flags> に B<MPOL_F_MEMS_ALLOWED> (Linux 2.6.24 以降で利用可能) を指定する"
-"と、 I<mode> 引き数は無視され、 そのプロセスがその後の B<mbind>(2)  や "
-"B<set_mempolicy>(2)  で [I<モードフラグ> が指定されていない場合に ] 指定でき"
-"るノード (メモリー) の集合が I<nodemask> に返される。 B<MPOL_F_MEMS_ALLOWED> "
-"を、 B<MPOL_F_ADDR> や B<MPOL_F_NODE> と同時に指定することはできない。"
+msgstr "I<flags> に B<MPOL_F_MEMS_ALLOWED> (Linux 2.6.24 以降で利用可能) を指定すると、 I<mode> 引き数は無視され、 そのスレッドがその後の B<mbind>(2)  や B<set_mempolicy>(2)  で (I<モードフラグ> が指定されていない場合に) 指定できるノード (メモリー) の集合が I<nodemask> に返される。 B<MPOL_F_MEMS_ALLOWED> を、 B<MPOL_F_ADDR> や B<MPOL_F_NODE> と同時に指定することはできない。"
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:108
-#, fuzzy
-#| msgid ""
-#| "If I<flags> specifies B<MPOL_F_ADDR>, then information is returned about "
-#| "the policy governing the memory address given in I<addr>.  This policy "
-#| "may be different from the process's default policy if B<mbind>(2)  or one "
-#| "of the helper functions described in B<numa>(3)  has been used to "
-#| "establish a policy for the memory range containing I<addr>."
 msgid ""
 "If I<flags> specifies B<MPOL_F_ADDR>, then information is returned about the "
 "policy governing the memory address given in I<addr>.  This policy may be "
 "different from the thread's default policy if B<mbind>(2)  or one of the "
 "helper functions described in B<numa>(3)  has been used to establish a "
 "policy for the memory range containing I<addr>."
-msgstr ""
-"I<flags> に B<MPOL_F_ADDR> が指定された場合、 I<addr> で指定されたメモリーア"
-"ドレスに適用されているポリシーに関する情報を返す。 B<mbind>(2)  や "
-"B<numa>(3)  で説明されているヘルパー関数を使って、 I<addr> を含むメモリー領域"
-"に対するポリシーが設定されていた場合には、 返されるポリシーはプロセスのデフォ"
-"ルトポリシーと違うことがある。"
+msgstr "I<flags> に B<MPOL_F_ADDR> が指定された場合、 I<addr> で指定されたメモリーアドレスに適用されているポリシーに関する情報を返す。 B<mbind>(2)  や B<numa>(3)  で説明されているヘルパー関数を使って、 I<addr> を含むメモリー領域に対するポリシーが設定されていた場合には、 返されるポリシーはスレッドのデフォルトポリシーと違うことがある。"
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:129
-#, fuzzy
-#| msgid ""
-#| "If the I<mode> argument is not NULL, then B<get_mempolicy>()  will store "
-#| "the policy mode and any optional I<mode flags> of the requested NUMA "
-#| "policy in the location pointed to by this argument.  If I<nodemask> is "
-#| "not NULL, then the nodemask associated with the policy will be stored in "
-#| "the location pointed to by this argument.  I<maxnode> specifies the "
-#| "number of node IDs that can be stored into I<nodemask>\\(emthat is, the "
-#| "maximum node ID plus one.  The value specified by I<maxnode> is always "
-#| "rounded to a multiple of I<sizeof(unsigned long)>."
 msgid ""
 "If the I<mode> argument is not NULL, then B<get_mempolicy>()  will store the "
 "policy mode and any optional I<mode flags> of the requested NUMA policy in "
@@ -224,25 +169,10 @@ msgid ""
 "that can be stored into I<nodemask>\\(emthat is, the maximum node ID plus "
 "one.  The value specified by I<maxnode> is always rounded to a multiple of "
 "I<sizeof(unsigned\\ long)*8>."
-msgstr ""
-"I<mode> 引き数が NULL でない場合、 B<get_mempolicy>()  は要求された NUMA ポリ"
-"シーのモードと追加の I<モードフラグ> を I<mode> が指す場所に格納する。 "
-"I<nodemask> が NULL 以外の場合、そのポリシーに対応するノードマスクを この引き"
-"数が指す場所に格納する。 I<maxnode> には I<nodemask> に格納できるノード ID の"
-"数、つまり最大ノード ID に 1 を足した値を指定する。 I<maxnode> で指定された値"
-"は常に I<sizeof(unsigned long)> の倍数に切り上げられる。"
+msgstr "I<mode> 引き数が NULL でない場合、 B<get_mempolicy>()  は要求された NUMA ポリシーのモードと追加の I<モードフラグ> を I<mode> が指す場所に格納する。 I<nodemask> が NULL 以外の場合、そのポリシーに対応するノードマスクを この引き数が指す場所に格納する。 I<maxnode> には I<nodemask> に格納できるノード ID の数、つまり最大ノード ID に 1 を足した値を指定する。 I<maxnode> で指定された値は常に I<sizeof(unsigned\\ long)*8> の倍数に切り上げられる。"
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:146
-#, fuzzy
-#| msgid ""
-#| "If I<flags> specifies both B<MPOL_F_NODE> and B<MPOL_F_ADDR>, "
-#| "B<get_mempolicy>()  will return the node ID of the node on which the "
-#| "address I<addr> is allocated into the location pointed to by I<mode>.  If "
-#| "no page has yet been allocated for the specified address, "
-#| "B<get_mempolicy>()  will allocate a page as if the process had performed "
-#| "a read [load] access to that address, and return the ID of the node where "
-#| "that page was allocated."
 msgid ""
 "If I<flags> specifies both B<MPOL_F_NODE> and B<MPOL_F_ADDR>, "
 "B<get_mempolicy>()  will return the node ID of the node on which the address "
@@ -250,28 +180,11 @@ msgid ""
 "has yet been allocated for the specified address, B<get_mempolicy>()  will "
 "allocate a page as if the thread had performed a read (load) access to that "
 "address, and return the ID of the node where that page was allocated."
-msgstr ""
-"I<flags> で B<MPOL_F_NODE> と B<MPOL_F_ADDR> の両方が指定された場合、 "
-"B<get_mempolicy>()  はアドレス I<addr> が割り当てられているノードのノード ID "
-"を I<mode> が指す場所に入れて返す。 指定されたアドレスにどのページもまだ割り"
-"当てられていない場合、 B<get_mempolicy>()  は、あたかもそのプロセスがそのアド"
-"レスに対して読み込みアクセスを 実行したかのようにページの割り当てを行い、ペー"
-"ジが割り当てられた ノードの ID を返す。"
+msgstr "I<flags> で B<MPOL_F_NODE> と B<MPOL_F_ADDR> の両方が指定された場合、 B<get_mempolicy>()  はアドレス I<addr> が割り当てられているノードのノード ID を I<mode> が指す場所に入れて返す。 指定されたアドレスにどのページもまだ割り当てられていない場合、 B<get_mempolicy>()  は、あたかもそのスレッドがそのアドレスに対して読み込みアクセスを 実行したかのようにページの割り当てを行い、ページが割り当てられた ノードの ID を返す。"
 
 #.  Note:  code returns next interleave node via 'mode' argument -Lee Schermerhorn
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:171
-#, fuzzy
-#| msgid ""
-#| "If I<flags> specifies B<MPOL_F_NODE>, but not B<MPOL_F_ADDR>, and the "
-#| "process's current policy is B<MPOL_INTERLEAVE>, then B<get_mempolicy>()  "
-#| "will return in the location pointed to by a non-NULL I<mode> argument, "
-#| "the node ID of the next node that will be used for interleaving of "
-#| "internal kernel pages allocated on behalf of the process.  These "
-#| "allocations include pages for memory-mapped files in process memory "
-#| "ranges mapped using the B<mmap>(2)  call with the B<MAP_PRIVATE> flag for "
-#| "read accesses, and in memory ranges mapped with the B<MAP_SHARED> flag "
-#| "for all accesses."
 msgid ""
 "If I<flags> specifies B<MPOL_F_NODE>, but not B<MPOL_F_ADDR>, and the "
 "thread's current policy is B<MPOL_INTERLEAVE>, then B<get_mempolicy>()  will "
@@ -281,16 +194,7 @@ msgid ""
 "for memory-mapped files in process memory ranges mapped using the "
 "B<mmap>(2)  call with the B<MAP_PRIVATE> flag for read accesses, and in "
 "memory ranges mapped with the B<MAP_SHARED> flag for all accesses."
-msgstr ""
-"I<flags> で B<MPOL_F_NODE> は指定されたが、 B<MPOL_F_ADDR> は指定されていない"
-"場合で、かつ そのプロセスの現在のポリシーが B<MPOL_INTERLEAVE> の場合、 "
-"B<get_mempolicy>()  は、そのプロセスに対して割り当てられたカーネルの内部ペー"
-"ジで 次にインターリーブ用に使用されるノードのノード ID を、 NULL でない "
-"I<mode> 引き数が指す場所に入れて返す。 読み込みアクセス用として "
-"B<MAP_PRIVATE> フラグ付きで B<mmap>(2)  したプロセスメモリー領域や、 任意のア"
-"クセス用として B<MAP_SHARED> フラグ付きで B<mmap>(2)  したメモリー領域の、メ"
-"モリーマップされたファイルに対するページも 上記のプロセスに対して割り当てられ"
-"たページに含まれる。"
+msgstr "I<flags> で B<MPOL_F_NODE> は指定されたが、 B<MPOL_F_ADDR> は指定されていない場合で、かつ そのスレッドの現在のポリシーが B<MPOL_INTERLEAVE> の場合、 B<get_mempolicy>()  は、そのスレッドに対して割り当てられたカーネルの内部ページで 次にインターリーブ用に使用されるノードのノード ID を、 NULL でない I<mode> 引き数が指す場所に入れて返す。これには、読み込みアクセス用として B<MAP_PRIVATE> フラグ付きで B<mmap>(2) したプロセスメモリー領域や、 任意のアクセス用として B<MAP_SHARED> フラグ付きで B<mmap>(2)  したメモリー領域の、メモリーマップされたファイルに対するページも含まれる。"
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:173
@@ -354,16 +258,6 @@ msgstr "B<EINVAL>"
 
 #. type: Plain text
 #: build/C/man2/get_mempolicy.2:235
-#, fuzzy
-#| msgid ""
-#| "The value specified by I<maxnode> is less than the number of node IDs "
-#| "supported by the system.  Or I<flags> specified values other than "
-#| "B<MPOL_F_NODE> or B<MPOL_F_ADDR>; or I<flags> specified B<MPOL_F_ADDR> "
-#| "and I<addr> is NULL, or I<flags> did not specify B<MPOL_F_ADDR> and "
-#| "I<addr> is not NULL.  Or, I<flags> specified B<MPOL_F_NODE> but not "
-#| "B<MPOL_F_ADDR> and the current process policy is not B<MPOL_INTERLEAVE>.  "
-#| "Or, I<flags> specified B<MPOL_F_MEMS_ALLOWED> with either B<MPOL_F_ADDR> "
-#| "or B<MPOL_F_NODE>.  (And there are other B<EINVAL> cases.)"
 msgid ""
 "The value specified by I<maxnode> is less than the number of node IDs "
 "supported by the system.  Or I<flags> specified values other than "
@@ -373,16 +267,7 @@ msgid ""
 "the current thread policy is not B<MPOL_INTERLEAVE>.  Or, I<flags> specified "
 "B<MPOL_F_MEMS_ALLOWED> with either B<MPOL_F_ADDR> or B<MPOL_F_NODE>.  (And "
 "there are other B<EINVAL> cases.)"
-msgstr ""
-"I<maxnode> で指定された値がシステムがサポートするノード ID の数よりも少な"
-"い。 または、 I<flags> に B<MPOL_F_NODE> でも B<MPOL_F_ADDR> でもない値が指定"
-"された。 または、 I<flags> に B<MPOL_F_ADDR> が指定されており、 I<addr> が "
-"NULL である。 または、 I<flags> に B<MPOL_F_ADDR> がされておらず、 I<addr> "
-"が NULL でない。 または、 I<flags> に B<MPOL_F_NODE> が指定されており、 "
-"B<MPOL_F_ADDR> が指定されておらず、 プロセスの現在のポリシーが "
-"B<MPOL_INTERLEAVE> でない。 または、 I<flags> に B<MPOL_F_MEMS_ALLOWED> が指"
-"定されており、さらに B<MPOL_F_ADDR> か B<MPOL_F_NODE> のいずれかが指定されて"
-"いる。 (他にも B<EINVAL> となる場合がある。)"
+msgstr "I<maxnode> で指定された値がシステムがサポートするノード ID の数よりも少ない。 または、 I<flags> に B<MPOL_F_NODE> でも B<MPOL_F_ADDR> でもない値が指定された。 または、 I<flags> に B<MPOL_F_ADDR> が指定されており、 I<addr> が NULL である。 または、 I<flags> に B<MPOL_F_ADDR> がされておらず、 I<addr> が NULL でない。 または、 I<flags> に B<MPOL_F_NODE> が指定されており、 B<MPOL_F_ADDR> が指定されておらず、 スレッドの現在のポリシーが B<MPOL_INTERLEAVE> でない。 または、 I<flags> に B<MPOL_F_MEMS_ALLOWED> が指定されており、さらに B<MPOL_F_ADDR> か B<MPOL_F_NODE> のいずれかが指定されている。 (他にも B<EINVAL> となる場合がある。)"
 
 #. type: SH
 #: build/C/man2/get_mempolicy.2:235 build/C/man2/getcpu.2:67
@@ -482,7 +367,7 @@ msgstr "GETCPU"
 #: build/C/man2/getcpu.2:12 build/C/man2/migrate_pages.2:18
 #, no-wrap
 msgid "2019-03-06"
-msgstr ""
+msgstr "2019-03-06"
 
 #. type: Plain text
 #: build/C/man2/getcpu.2:15
@@ -651,16 +536,10 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/getcpu.2:143
-#, fuzzy
-#| msgid ""
-#| "B<mbind>(2), B<sched_setaffinity>(2), B<set_mempolicy>(2), "
-#| "B<sched_getcpu>(3), B<cpuset>(7)"
 msgid ""
 "B<mbind>(2), B<sched_setaffinity>(2), B<set_mempolicy>(2), "
 "B<sched_getcpu>(3), B<cpuset>(7), B<vdso>(7)"
-msgstr ""
-"B<mbind>(2), B<sched_setaffinity>(2), B<set_mempolicy>(2), "
-"B<sched_getcpu>(3), B<cpuset>(7)"
+msgstr "B<mbind>(2), B<sched_setaffinity>(2), B<set_mempolicy>(2), B<sched_getcpu>(3), B<cpuset>(7), B<vdso>(7)"
 
 #. type: TH
 #: build/C/man2/mbind.2:35
@@ -670,10 +549,9 @@ msgstr "MBIND"
 
 #. type: TH
 #: build/C/man2/mbind.2:35 build/C/man2/move_pages.2:20
-#, fuzzy, no-wrap
-#| msgid "2010-06-11"
+#, no-wrap
 msgid "2020-06-09"
-msgstr "2010-06-11"
+msgstr "2020-06-09"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:38
@@ -714,19 +592,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/mbind.2:80
-#, fuzzy
-#| msgid ""
-#| "If the memory range specified by the I<addr> and I<len> arguments "
-#| "includes an \"anonymous\" region of memory\\(emthat is a region of memory "
-#| "created using the B<mmap>(2)  system call with the B<MAP_ANONYMOUS>"
-#| "\\(emor a memory-mapped file, mapped using the B<mmap>(2)  system call "
-#| "with the B<MAP_PRIVATE> flag, pages will be allocated only according to "
-#| "the specified policy when the application writes [stores] to the page.  "
-#| "For anonymous regions, an initial read access will use a shared page in "
-#| "the kernel containing all zeros.  For a file mapped with B<MAP_PRIVATE>, "
-#| "an initial read access will allocate pages according to the process "
-#| "policy of the process that causes the page to be allocated.  This may not "
-#| "be the process that called B<mbind>()."
 msgid ""
 "If the memory range specified by the I<addr> and I<len> arguments includes "
 "an \"anonymous\" region of memory\\(emthat is a region of memory created "
@@ -739,52 +604,19 @@ msgid ""
 "read access will allocate pages according to the memory policy of the thread "
 "that causes the page to be allocated.  This may not be the thread that "
 "called B<mbind>()."
-msgstr ""
-"I<addr> と I<len> で指定されたメモリー範囲に、 メモリーの「無名」領域 \\(em "
-"B<MAP_ANONYMOUS> 付きの B<mmap>(2)  システムコールを使って作成されたメモリー"
-"領域 \\(em や B<MAP_PRIVATE> 付きの B<mmap>(2)  を使ってマップされたメモリー"
-"マップファイルが含まれている場合、アプリケーションがそのページへの書き込み "
-"(データの格納) を行った時には指定されたポリシーのみに基づいてページが割り当て"
-"られる。無名領域の場合、最初の読み出しアクセスの際には カーネル内の全データ"
-"が 0 である共有ページが使用される。 B<MAP_PRIVATE> でマップされたファイルの場"
-"合、最初の読み出しアクセスがあると、 ページ割り当てが発生するきっかけとなった"
-"プロセスのデフォルトポリシー にしたがってページの割り当てが行われる。 ページ"
-"割り当てのきっかけとなったプロセスは、 B<mbind>()  を呼び出したプロセスと同じ"
-"とは限らない。"
+msgstr "I<addr> と I<len> で指定されたメモリー範囲に、 メモリーの「無名」領域 \\(em B<MAP_ANONYMOUS> 付きの B<mmap>(2)  システムコールを使って作成されたメモリー領域 \\(em や B<MAP_PRIVATE> 付きの B<mmap>(2)  を使ってマップされたメモリーマップファイルが含まれている場合、アプリケーションがそのページへの書き込み (データの格納) を行った時には指定されたポリシーのみに基づいてページが割り当てられる。無名領域の場合、最初の読み出しアクセスの際には カーネル内の全データが 0 である共有ページが使用される。 B<MAP_PRIVATE> でマップされたファイルの場合、最初の読み出しアクセスがあると、 ページ割り当てが発生するきっかけとなったスレッドのメモリポリシーにしたがってページの割り当てが行われる。 ページ割り当てのきっかけとなったスレッドは、 B<mbind>() を呼び出したスレッドと同じとは限らない。"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:88
-#, fuzzy
-#| msgid ""
-#| "The specified policy will be ignored for any B<MAP_SHARED> mappings in "
-#| "the specified memory range.  Rather the pages will be allocated according "
-#| "to the process policy of the process that caused the page to be "
-#| "allocated.  Again, this may not be the process that called B<mbind>()."
 msgid ""
 "The specified policy will be ignored for any B<MAP_SHARED> mappings in the "
 "specified memory range.  Rather the pages will be allocated according to the "
 "memory policy of the thread that caused the page to be allocated.  Again, "
 "this may not be the thread that called B<mbind>()."
-msgstr ""
-"指定されたメモリー範囲内にある B<MAP_SHARED> のマッピングでは指定されたポリ"
-"シーは無視され、 ページ割り当てが発生するきっかけとなったプロセスのデフォルト"
-"ポリシーに したがってページの割り当てが行われることになる。 繰り返しになる"
-"が、ページ割り当てのきっかけとなったプロセスは、 B<mbind>()  を呼び出したプロ"
-"セスと同じとは限らない。"
+msgstr "指定されたメモリー範囲内にある B<MAP_SHARED> のマッピングでは指定されたポリシーは無視され、 ページ割り当てが発生するきっかけとなったスレッドのメモリポリシーに したがってページの割り当てが行われることになる。 繰り返しになるが、ページ割り当てのきっかけとなったスレッドは、 B<mbind>()  を呼び出したスレッドと同じとは限らない。"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:105
-#, fuzzy
-#| msgid ""
-#| "If the specified memory range includes a shared memory region created "
-#| "using the B<shmget>(2)  system call and attached using the B<shmat>(2)  "
-#| "system call, pages allocated for the anonymous or shared memory region "
-#| "will be allocated according to the policy specified, regardless which "
-#| "process attached to the shared memory segment causes the allocation.  If, "
-#| "however, the shared memory region was created with the B<SHM_HUGETLB> "
-#| "flag, the huge pages will be allocated according to the policy specified "
-#| "only if the page allocation is caused by the process that calls "
-#| "B<mbind>()  for that region."
 msgid ""
 "If the specified memory range includes a shared memory region created using "
 "the B<shmget>(2)  system call and attached using the B<shmat>(2)  system "
@@ -820,23 +652,13 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/mbind.2:133
-#, fuzzy
-#| msgid ""
-#| "The I<mode> argument must specify one of B<MPOL_DEFAULT>, B<MPOL_BIND>, "
-#| "B<MPOL_INTERLEAVE>, or B<MPOL_PREFERRED>.  All policy modes except "
-#| "B<MPOL_DEFAULT> require the caller to specify via the I<nodemask> "
-#| "argument, the node or nodes to which the mode applies."
 msgid ""
 "The I<mode> argument must specify one of B<MPOL_DEFAULT>, B<MPOL_BIND>, "
 "B<MPOL_INTERLEAVE>, B<MPOL_PREFERRED>, or B<MPOL_LOCAL> (which are described "
 "in detail below).  All policy modes except B<MPOL_DEFAULT> require the "
 "caller to specify the node or nodes to which the mode applies, via the "
 "I<nodemask> argument."
-msgstr ""
-"I<mode> 引き数には、 B<MPOL_DEFAULT>, B<MPOL_BIND>, B<MPOL_INTERLEAVE>, "
-"B<MPOL_PREFERRED> のいずれか一つを指定しなければならない。 B<MPOL_DEFAULT> 以"
-"外のポリシーモードの場合、呼び出し元は I<nodemask> 引き数でそのポリシーモード"
-"を適用するノードを指定する必要がある。"
+msgstr "I<mode> 引き数には、 B<MPOL_DEFAULT>, B<MPOL_BIND>, B<MPOL_INTERLEAVE>, B<MPOL_PREFERRED>, B<MPOL_LOCAL> (詳細は下記参照) のいずれか一つを指定しなければならない。 B<MPOL_DEFAULT> 以外のポリシーモードの場合、呼び出し元は I<nodemask> 引き数でそのポリシーモードを適用するノードを指定する必要がある。"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:141 build/C/man2/set_mempolicy.2:100
@@ -855,21 +677,11 @@ msgstr "B<MPOL_F_STATIC_NODES> (Linux-2.6.26 以降)"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:151
-#, fuzzy
-#| msgid ""
-#| "A nonempty I<nodemask> specifies physical node ids.  Linux does not remap "
-#| "the I<nodemask> when the process moves to a different cpuset context, nor "
-#| "when the set of nodes allowed by the process's current cpuset context "
-#| "changes."
 msgid ""
 "A nonempty I<nodemask> specifies physical node IDs.  Linux does not remap "
 "the I<nodemask> when the thread moves to a different cpuset context, nor "
 "when the set of nodes allowed by the thread's current cpuset context changes."
-msgstr ""
-"空でない I<nodemask> は、物理ノード ID である。 Linux では、そのプロセスが異"
-"なる CPU 集合コンテキスト (cpuset context)  に移動した場合でも、そのプロセス"
-"の現在の CPU 集合コンテキストで 許可されているノード集合が変化した場合でも、 "
-"I<nodemask> をマッピングし直すことはない。"
+msgstr "空でない I<nodemask> は、物理ノード ID である。 Linux では、そのスレッドが異なる CPU 集合コンテキスト (cpuset context)  に移動した場合でも、そのスレッドの現在の CPU 集合コンテキストで 許可されているノード集合が変化した場合でも、 I<nodemask> をマッピングし直すことはない。"
 
 #. type: TP
 #: build/C/man2/mbind.2:151
@@ -879,30 +691,13 @@ msgstr "B<MPOL_F_RELATIVE_NODES> (Linux-2.6.26 以降)"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:157
-#, fuzzy
-#| msgid ""
-#| "A nonempty I<nodemask> specifies node ids that are relative to the set of "
-#| "node ids allowed by the process's current cpuset."
 msgid ""
 "A nonempty I<nodemask> specifies node IDs that are relative to the set of "
 "node IDs allowed by the thread's current cpuset."
-msgstr ""
-"空でない I<nodemask> は、そのプロセスの現在の CPU 集合で許可されているノード "
-"ID 集合 における相対的なノード ID である。"
+msgstr "空でない I<nodemask> は、そのスレッドの現在の CPU 集合で許可されているノード ID 集合 における相対的なノード ID である。"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:185
-#, fuzzy
-#| msgid ""
-#| "I<nodemask> points to a bit mask of nodes containing up to I<maxnode> "
-#| "bits.  The bit mask size is rounded to the next multiple of "
-#| "I<sizeof(unsigned long)>, but the kernel will use bits only up to "
-#| "I<maxnode>.  A NULL value of I<nodemask> or a I<maxnode> value of zero "
-#| "specifies the empty set of nodes.  If the value of I<maxnode> is zero, "
-#| "the I<nodemask> argument is ignored.  Where a I<nodemask> is required, it "
-#| "must contain at least one node that is on-line, allowed by the process's "
-#| "current cpuset context [unless the B<MPOL_F_STATIC_NODES> mode flag is "
-#| "specified], and contains memory."
 msgid ""
 "I<nodemask> points to a bit mask of nodes containing up to I<maxnode> bits.  "
 "The bit mask size is rounded to the next multiple of I<sizeof(unsigned "
@@ -912,47 +707,21 @@ msgid ""
 "Where a I<nodemask> is required, it must contain at least one node that is "
 "on-line, allowed by the thread's current cpuset context (unless the "
 "B<MPOL_F_STATIC_NODES> mode flag is specified), and contains memory."
-msgstr ""
-"I<nodemask> は、最大で I<maxnode> ビットから構成されるノードのビットマスクを"
-"指す。 ビットマスクの大きさは、直近の I<sizeof(unsigned long)> の倍数に切り上"
-"げられるが、カーネルが使用するのは I<maxnode> 個までのビットだけである。 "
-"NULL 値の I<nodemask> もしくは値が 0 の I<maxnode> はノードの空集合を表す。 "
-"I<maxnode> の値が 0 の場合、 I<nodemask> 引き数は無視される。 I<nodemask> が"
-"必須の場面では、 I<nodemask> に、オンラインで、そのプロセスの現在の CPU 集合"
-"コンテキストで 許可されており (B<MPOL_F_STATIC_NODES> モードフラグが指定され"
-"ていない場合)、メモリーがあるノードが 少なくとも一つ入っていなければならな"
-"い。"
+msgstr "I<nodemask> は、最大で I<maxnode> ビットから構成されるノードのビットマスクを指す。 ビットマスクの大きさは、直近の I<sizeof(unsigned long)> の倍数に切り上げられるが、カーネルが使用するのは I<maxnode> 個までのビットだけである。 NULL 値の I<nodemask> もしくは値が 0 の I<maxnode> はノードの空集合を表す。 I<maxnode> の値が 0 の場合、 I<nodemask> 引き数は無視される。 I<nodemask> が必須の場面では、 I<nodemask> に、オンラインで、そのスレッドの現在の CPU 集合コンテキストで 許可されており (B<MPOL_F_STATIC_NODES> モードフラグが指定されていない場合)、メモリーがあるノードが 少なくとも一つ入っていなければならない。"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:189 build/C/man2/set_mempolicy.2:161
-#, fuzzy
-#| msgid ""
-#| "The I<mode> argument may also include an optional I<mode flag>.  The "
-#| "supported I<mode flags> are:"
 msgid "The I<mode> argument must include one of the following values:"
-msgstr ""
-"I<mode> 引き数には、追加で I<モードフラグ> を含めることもできる。 サポートさ"
-"れている I<モードフラグ> は以下の通りである。"
+msgstr "I<mode> 引き数には、以下の値のいずれかひとつを含めなければならない。"
 
 #. type: TP
 #: build/C/man2/mbind.2:189 build/C/man2/set_mempolicy.2:161
-#, fuzzy, no-wrap
-#| msgid "B<EFAULT>"
+#, no-wrap
 msgid "B<MPOL_DEFAULT>"
-msgstr "B<EFAULT>"
+msgstr "B<MPOL_DEFAULT>"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:210
-#, fuzzy
-#| msgid ""
-#| "The B<MPOL_DEFAULT> mode requests that any nondefault policy be removed, "
-#| "restoring default behavior.  When applied to a range of memory via "
-#| "B<mbind>(), this means to use the process policy, which may have been set "
-#| "with B<set_mempolicy>(2).  If the mode of the process policy is also "
-#| "B<MPOL_DEFAULT>, the system-wide default policy will be used.  The system-"
-#| "wide default policy allocates pages on the node of the CPU that triggers "
-#| "the allocation.  For B<MPOL_DEFAULT>, the I<nodemask> and I<maxnode> "
-#| "arguments must be specify the empty set of nodes."
 msgid ""
 "This mode requests that any nondefault policy be removed, restoring default "
 "behavior.  When applied to a range of memory via B<mbind>(), this means to "
@@ -962,22 +731,13 @@ msgid ""
 "wide default policy allocates pages on the node of the CPU that triggers the "
 "allocation.  For B<MPOL_DEFAULT>, the I<nodemask> and I<maxnode> arguments "
 "must be specify the empty set of nodes."
-msgstr ""
-"モード B<MPOL_DEFAULT> はデフォルトではないプロセスのメモリーポリシーを削除"
-"し、 デフォルトの動作に戻すことを指定するものである。 B<mbind>()  経由で、あ"
-"るメモリー領域に対して B<MPOL_DEFAULT> が適用された場合、プロセスのデフォルト"
-"ポリシーを使用することを意味する。 プロセスのデフォルトポリシーは、 "
-"B<set_mempolicy>(2)  で変更されているかもしれない。 プロセスのポリシーのモー"
-"ドも B<MPOL_DEFAULT> の場合、システム全体のデフォルトポリシーが使用される。 "
-"システム全体のデフォルトポリシーでは、割り当てのきっかけとなった CPU のノード"
-"からページの割り当てを行う。 B<MPOL_DEFAULT> では、引き数 I<nodemask> と "
-"I<maxnode> にノードの空集合を指定しなければならない。"
+msgstr "このモードはデフォルトではないメモリーポリシーを削除し、 デフォルトの動作に戻すことを指定するものである。 B<mbind>()  経由で、あるメモリー領域に対して B<MPOL_DEFAULT> が適用された場合、スレッドのメモリポリシーを使用することを意味する。 スレッドのメモリポリシーは、 B<set_mempolicy>(2)  で変更されているかもしれない。 スレッドのメモリポリシーのモードも B<MPOL_DEFAULT> の場合、システム全体のデフォルトポリシーが使用される。 システム全体のデフォルトポリシーでは、割り当てのきっかけとなった CPU のノードからページの割り当てを行う。 B<MPOL_DEFAULT> では、引き数 I<nodemask> と I<maxnode> にノードの空集合を指定しなければならない。"
 
 #. type: TP
 #: build/C/man2/mbind.2:210 build/C/man2/set_mempolicy.2:171
 #, no-wrap
 msgid "B<MPOL_BIND>"
-msgstr ""
+msgstr "B<MPOL_BIND>"
 
 #.  commit 19770b32609b6bf97a3dece2529089494cbfc549
 #. type: Plain text
@@ -1016,19 +776,10 @@ msgstr ""
 #: build/C/man2/mbind.2:231 build/C/man2/set_mempolicy.2:187
 #, no-wrap
 msgid "B<MPOL_INTERLEAVE>"
-msgstr ""
+msgstr "B<MPOL_INTERLEAVE>"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:243
-#, fuzzy
-#| msgid ""
-#| "The B<MPOL_INTERLEAVE> mode specifies that page allocations be "
-#| "interleaved across the set of nodes specified in I<nodemask>.  This "
-#| "optimizes for bandwidth instead of latency by spreading out pages and "
-#| "memory accesses to those pages across multiple nodes.  To be effective "
-#| "the memory area should be fairly large, at least 1MB or bigger with a "
-#| "fairly uniform access pattern.  Accesses to a single page of the area "
-#| "will still be limited to the memory bandwidth of a single node."
 msgid ""
 "This mode specifies that page allocations be interleaved across the set of "
 "nodes specified in I<nodemask>.  This optimizes for bandwidth instead of "
@@ -1037,33 +788,16 @@ msgid ""
 "least 1\\ MB or bigger with a fairly uniform access pattern.  Accesses to a "
 "single page of the area will still be limited to the memory bandwidth of a "
 "single node."
-msgstr ""
-"B<MPOL_INTERLEAVE> は、メモリー割り当てが I<nodemask> に指定されたノード間で"
-"交互に行われることを指定するものである。 このポリシーでは、複数のノードにペー"
-"ジを広げて配置し、これらのページへの メモリーアクセスを分散することで、遅延で"
-"はなく、帯域を最適化する。 効果を得るには、メモリー領域をある程度大きくすべき"
-"であり、 メモリーアクセスのパターンがかなり均一な場合でも 少なくとも 1MB 以上"
-"にすべきである。 このモードでも、一つのページへのアクセスに関しては 一つの"
-"ノードのメモリー帯域が上限となることは変わりない。"
+msgstr "このモードは、メモリー割り当てが I<nodemask> に指定されたノード間で交互に行われることを指定するものである。 このポリシーでは、複数のノードにページを広げて配置し、これらのページへの メモリーアクセスを分散することで、遅延ではなく、帯域を最適化する。 効果を得るには、メモリー領域をある程度大きくすべきであり、 メモリーアクセスのパターンがかなり均一な場合でも 少なくとも 1\\ MB 以上にすべきである。 このモードでも、一つのページへのアクセスに関しては 一つのノードのメモリー帯域が上限となることは変わりない。"
 
 #. type: TP
 #: build/C/man2/mbind.2:243 build/C/man2/set_mempolicy.2:201
 #, no-wrap
 msgid "B<MPOL_PREFERRED>"
-msgstr ""
+msgstr "B<MPOL_PREFERRED>"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:259
-#, fuzzy
-#| msgid ""
-#| "B<MPOL_PREFERRED> sets the preferred node for allocation.  The kernel "
-#| "will try to allocate pages from this node first and fall back to other "
-#| "nodes if the preferred nodes is low on free memory.  If I<nodemask> "
-#| "specifies more than one node ID, the first node in the mask will be "
-#| "selected as the preferred node.  If the I<nodemask> and I<maxnode> "
-#| "arguments specify the empty set, then the memory is allocated on the node "
-#| "of the CPU that triggered the allocation.  This is the only way to "
-#| "specify \"local allocation\" for a range of memory via B<mbind>()."
 msgid ""
 "This mode sets the preferred node for allocation.  The kernel will try to "
 "allocate pages from this node first and fall back to other nodes if the "
@@ -1072,22 +806,13 @@ msgid ""
 "node.  If the I<nodemask> and I<maxnode> arguments specify the empty set, "
 "then the memory is allocated on the node of the CPU that triggered the "
 "allocation."
-msgstr ""
-"B<MPOL_PREFERRED> は、割り当て時に優先されるノードを設定する。 カーネルはまず"
-"優先ノードにページ割り当てを行おうとし、 優先ノードに空きメモリーが少ない場合"
-"に他のノードに割り当てを行う。 I<nodemask> に複数のノード ID が指定された場合"
-"は、 I<nodemask> 内の最初のノードが優先ノードとして選択される。 引き数 "
-"I<nodemask>, I<maxnode> で空集合が指定された場合は、割り当てのきっかけとなっ"
-"た CPU のノードに メモリー割り当てが行われる。 B<mbind>(2)  で、あるメモリー"
-"領域に対して「ローカルからの割り当て (local allocation)」を 指定する方法はこ"
-"れしかない。"
+msgstr "このモードは、割り当て時に優先されるノードを設定する。 カーネルはまず優先ノードにページ割り当てを行おうとし、 優先ノードに空きメモリーが少ない場合に他のノードに割り当てを行う。 I<nodemask> に複数のノード ID が指定された場合は、 I<nodemask> 内の最初のノードが優先ノードとして選択される。 引き数 I<nodemask>, I<maxnode> で空集合が指定された場合は、割り当てのきっかけとなった CPU のノードに メモリー割り当てが行われる。"
 
 #. type: TP
 #: build/C/man2/mbind.2:259 build/C/man2/set_mempolicy.2:218
-#, fuzzy, no-wrap
-#| msgid "B<MPOL_F_RELATIVE_NODES> (since Linux 2.6.26)"
+#, no-wrap
 msgid "B<MPOL_LOCAL> (since Linux 3.8)"
-msgstr "B<MPOL_F_RELATIVE_NODES> (Linux 2.6.26 以降)"
+msgstr "B<MPOL_LOCAL> (Linux 3.8 以降)"
 
 #.  commit 479e2802d09f1e18a97262c4c6f8f17ae5884bd8
 #.  commit f2a07f40dbc603c15f8b06e6ec7f768af67b424f
@@ -1114,11 +839,6 @@ msgstr ""
 #.  to the requested node with this flag.
 #. type: Plain text
 #: build/C/man2/mbind.2:299
-#, fuzzy
-#| msgid ""
-#| "If B<MPOL_MF_STRICT> is passed in I<flags> and I<mode> is not "
-#| "B<MPOL_DEFAULT>, then the call will fail with the error B<EIO> if the "
-#| "existing pages in the memory range don't follow the policy."
 msgid ""
 "If B<MPOL_MF_STRICT> is passed in I<flags> and I<mode> is not "
 "B<MPOL_DEFAULT>, then the call fails with the error B<EIO> if the existing "
@@ -1130,13 +850,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/mbind.2:312
-#, fuzzy
-#| msgid ""
-#| "If B<MPOL_MF_MOVE> is specified in I<flags>, then the kernel will attempt "
-#| "to move all the existing pages in the memory range so that they follow "
-#| "the policy.  Pages that are shared with other processes will not be "
-#| "moved.  If B<MPOL_MF_STRICT> is also specified, then the call will fail "
-#| "with the error B<EIO> if some pages could not be moved."
 msgid ""
 "If B<MPOL_MF_MOVE> is specified in I<flags>, then the kernel will attempt to "
 "move all the existing pages in the memory range so that they follow the "
@@ -1153,14 +866,6 @@ msgstr ""
 #.  ---------------------------------------------------------------
 #. type: Plain text
 #: build/C/man2/mbind.2:328
-#, fuzzy
-#| msgid ""
-#| "If B<MPOL_MF_MOVE_ALL> is passed in I<flags>, then the kernel will "
-#| "attempt to move all existing pages in the memory range regardless of "
-#| "whether other processes use the pages.  The calling process must be "
-#| "privileged (B<CAP_SYS_NICE>)  to use this flag.  If B<MPOL_MF_STRICT> is "
-#| "also specified, then the call will fail with the error B<EIO> if some "
-#| "pages could not be moved."
 msgid ""
 "If B<MPOL_MF_MOVE_ALL> is passed in I<flags>, then the kernel will attempt "
 "to move all existing pages in the memory range regardless of whether other "
@@ -1168,13 +873,7 @@ msgid ""
 "(B<CAP_SYS_NICE>)  to use this flag.  If B<MPOL_MF_STRICT> is also "
 "specified, then the call fails with the error B<EIO> if some pages could not "
 "be moved."
-msgstr ""
-"I<flags> に B<MPOL_MF_MOVE_ALL> が指定されると、カーネルはそのメモリー領域内"
-"の既存の全てのページを、 他のプロセスがページを使用しているかどうかに関わらず"
-"移動する。 このフラグを使用するには、呼び出し元のプロセスは特権 "
-"(B<CAP_SYS_NICE>)  を持っていなければならない。 B<MPOL_MF_STRICT> も指定され"
-"た場合、移動できなかったページがあると、 B<mbind>()  はエラー B<EIO> で失敗す"
-"る。"
+msgstr "I<flags> に B<MPOL_MF_MOVE_ALL> が指定されると、カーネルはそのメモリー領域内の既存の全てのページを、 他のプロセスがページを使用しているかどうかに関わらず移動する。 このフラグを使用するには、呼び出し元のスレッドは特権 (B<CAP_SYS_NICE>)  を持っていなければならない。 B<MPOL_MF_STRICT> も指定された場合、移動できなかったページがあると、 B<mbind>()  はエラー B<EIO> で失敗する。"
 
 #.  ---------------------------------------------------------------
 #. type: Plain text
@@ -1201,19 +900,6 @@ msgstr ""
 #.  8 * 4096 bits, assuming a 4kB page size.
 #. type: Plain text
 #: build/C/man2/mbind.2:397
-#, fuzzy
-#| msgid ""
-#| "An invalid value was specified for I<flags> or I<mode>; or I<addr + len> "
-#| "was less than I<addr>; or I<addr> is not a multiple of the system page "
-#| "size.  Or, I<mode> is B<MPOL_DEFAULT> and I<nodemask> specified a "
-#| "nonempty set; or I<mode> is B<MPOL_BIND> or B<MPOL_INTERLEAVE> and "
-#| "I<nodemask> is empty.  Or, I<maxnode> exceeds a kernel-imposed limit.  "
-#| "Or, I<nodemask> specifies one or more node IDs that are greater than the "
-#| "maximum supported node ID.  Or, none of the node IDs specified by "
-#| "I<nodemask> are on-line and allowed by the process's current cpuset "
-#| "context, or none of the specified nodes contain memory.  Or, the I<mode> "
-#| "argument specified both B<MPOL_F_STATIC_NODES> and "
-#| "B<MPOL_F_RELATIVE_NODES>."
 msgid ""
 "An invalid value was specified for I<flags> or I<mode>; or I<addr + len> was "
 "less than I<addr>; or I<addr> is not a multiple of the system page size.  "
@@ -1225,16 +911,7 @@ msgid ""
 "thread's current cpuset context, or none of the specified nodes contain "
 "memory.  Or, the I<mode> argument specified both B<MPOL_F_STATIC_NODES> and "
 "B<MPOL_F_RELATIVE_NODES>."
-msgstr ""
-"I<flags> や I<mode> に不正な値が指定された。 I<addr + len> が I<addr> より小"
-"さい。 I<addr> がシステムのページサイズの倍数になっていない。 または I<mode> "
-"が B<MPOL_DEFAULT> で I<nodemask> に空でない集合が指定された。 I<mode> が "
-"B<MPOL_BIND> か B<MPOL_INTERLEAVE> で I<nodemask> が空であった。 I<maxnode> "
-"がカーネルに適用された上限を超えている。 I<nodemask> に、サポートされている最"
-"大ノード ID より大きいノードが指定された。 I<nodemask> に、オンラインで、かつ"
-"そのプロセスの現在の CPU 集合コンテキストで 許可されているノードが一つも含ま"
-"れていないか、 メモリーを含むノードが一つも指定されていない。 I<mode> 引き数"
-"に B<MPOL_F_STATIC_NODES> と B<MPOL_F_RELATIVE_NODES> の両方が指定された。"
+msgstr "I<flags> や I<mode> に不正な値が指定された。 I<addr + len> が I<addr> より小さい。 I<addr> がシステムのページサイズの倍数になっていない。 または I<mode> が B<MPOL_DEFAULT> で I<nodemask> に空でない集合が指定された。 I<mode> が B<MPOL_BIND> か B<MPOL_INTERLEAVE> で I<nodemask> が空であった。 I<maxnode> がカーネルに適用された上限を超えている。 I<nodemask> に、サポートされている最大ノード ID より大きいノードが指定された。 I<nodemask> に、オンラインで、かつそのスレッドの現在の CPU 集合コンテキストで 許可されているノードが一つも含まれていないか、 メモリーを含むノードが一つも指定されていない。 I<mode> 引き数に B<MPOL_F_STATIC_NODES> と B<MPOL_F_RELATIVE_NODES> の両方が指定された。"
 
 #. type: TP
 #: build/C/man2/mbind.2:397
@@ -1301,19 +978,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/mbind.2:469
-#, fuzzy
-#| msgid ""
-#| "The B<MPOL_DEFAULT> mode can have different effects for B<mbind>()  and "
-#| "B<set_mempolicy>(2).  When B<MPOL_DEFAULT> is specified for "
-#| "B<set_mempolicy>(2), the process's policy reverts to system default "
-#| "policy or local allocation.  When B<MPOL_DEFAULT> is specified for a "
-#| "range of memory using B<mbind>(), any pages subsequently allocated for "
-#| "that range will use the process's policy, as set by B<set_mempolicy>(2).  "
-#| "This effectively removes the explicit policy from the specified range, "
-#| "\"falling back\" to a possibly nondefault policy.  To select explicit "
-#| "\"local allocation\" for a memory range, specify a I<mode> of "
-#| "B<MPOL_PREFERRED> with an empty set of nodes.  This method will work for "
-#| "B<set_mempolicy>(2), as well."
 msgid ""
 "The B<MPOL_DEFAULT> mode can have different effects for B<mbind>()  and "
 "B<set_mempolicy>(2).  When B<MPOL_DEFAULT> is specified for "
@@ -1326,18 +990,7 @@ msgid ""
 "\"local allocation\" for a memory range, specify a I<mode> of B<MPOL_LOCAL> "
 "or B<MPOL_PREFERRED> with an empty set of nodes.  This method will work for "
 "B<set_mempolicy>(2), as well."
-msgstr ""
-"B<MPOL_DEFAULT> モードは、 B<mbind>()  と B<set_mempolicy>(2)  で異なる効果を"
-"持つことができる。 B<set_mempolicy>(2)  で B<MPOL_DEFAULT> が指定された場合、"
-"そのプロセスのポリシーはシステムの デフォルトポリシー、すなわちローカルからの"
-"割り当て、に戻る。 B<mbind>()  を使ってメモリーのある領域に B<MPOL_DEFAULT> "
-"が指定された場合、その範囲に対してそれ以降に行われるページの割り当てでは、 "
-"B<set_mempolicy>(2)  で設定したのと同じように、そのプロセスのポリシーが適用さ"
-"れる。 これにより、特定のメモリー領域についてだけ明示的なポリシーを削除し、 "
-"デフォルトのポリシーに「戻す」ことができる。 あるメモリー領域に対して「ローカ"
-"ルからの割り当て」を明示的に設定するには、 I<mode> に B<MPOL_PREFERRED> を指"
-"定し、 I<nodemask> に空集合のノードを指定すればよい。 この方法は "
-"B<set_mempolicy>(2)  でも通用する。"
+msgstr "B<MPOL_DEFAULT> モードは、 B<mbind>()  と B<set_mempolicy>(2)  で異なる効果を持つことができる。 B<set_mempolicy>(2)  で B<MPOL_DEFAULT> が指定された場合、そのスレッドのメモリポリシーはシステムの デフォルトポリシー、すなわちローカルからの割り当て、に戻る。 B<mbind>()  を使ってメモリーのある領域に B<MPOL_DEFAULT> が指定された場合、その範囲に対してそれ以降に行われるページの割り当てでは、 B<set_mempolicy>(2)  で設定したのと同じように、そのスレッドのメモリポリシーが適用される。 これにより、特定のメモリー領域についてだけ明示的なポリシーを削除し、 デフォルトのポリシーに「戻す」ことができる。 あるメモリー領域に対して「ローカルからの割り当て」を明示的に設定するには、 I<mode> に B<MPOL_LOCAL> か B<MPOL_PREFERRED> を指定し、 I<nodemask> に空集合のノードを指定すればよい。 この方法は B<set_mempolicy>(2)  でも通用する。"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:473
@@ -1353,10 +1006,8 @@ msgstr ""
 #.  commit dcf1763546d76c372f3136c8d6b2b6e77f140cf0
 #. type: Plain text
 #: build/C/man2/mbind.2:478
-#, fuzzy
-#| msgid "B<MPOL_MF_STRICT> is ignored on huge page mappings."
 msgid "Before Linux 5.7.  B<MPOL_MF_STRICT> was ignored on huge page mappings."
-msgstr "B<MPOL_MF_STRICT> はヒュージページのマッピングでは無視される。"
+msgstr "Linux 5.7 より前では、 B<MPOL_MF_STRICT> はヒュージページのマッピングでは無視されていた。"
 
 #. type: Plain text
 #: build/C/man2/mbind.2:483
@@ -1477,16 +1128,10 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/migrate_pages.2:104
-#, fuzzy
-#| msgid ""
-#| "Part of all of the memory range specified by I<nodemask> and I<maxnode> "
-#| "points outside your accessible address space."
 msgid ""
 "Part or all of the memory range specified by I<old_nodes>/I<new_nodes> and "
 "I<maxnode> points outside your accessible address space."
-msgstr ""
-"I<nodemask> と I<maxnode> で指定されたメモリー領域の一部または全部が、 呼び出"
-"し元がアクセス可能なアドレス空間外を指している。"
+msgstr "I<old_nodes>/I<new_nodes> と I<maxnode> で指定されたメモリー領域の一部または全部が、 呼び出し元がアクセス可能なアドレス空間外を指している。"
 
 #.  As at 3.5, this limit is "a page worth of bits", e.g.,
 #.  8 * 4096 bits, assuming a 4kB page size.
@@ -1598,10 +1243,8 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/migrate_pages.2:185
-#, fuzzy
-#| msgid "I<Documentation/vm/page_migration> in the Linux kernel source tree"
 msgid "I<Documentation/vm/page_migration.rst> in the Linux kernel source tree"
-msgstr "Linux カーネルソースの I<Documentation/vm/page_migration>"
+msgstr "Linux カーネルソースの I<Documentation/vm/page_migration.rst>"
 
 #. type: TH
 #: build/C/man2/move_pages.2:20
@@ -1651,28 +1294,15 @@ msgstr ""
 #: build/C/man2/move_pages.2:55 build/C/man2/move_pages.2:61
 #, no-wrap
 msgid "*"
-msgstr ""
+msgstr "*"
 
 #. type: Plain text
 #: build/C/man2/move_pages.2:61
-#, fuzzy
-#| msgid ""
-#| "I<pid> is the ID of the process in which pages are to be moved.  To move "
-#| "pages in another process, the caller must be privileged "
-#| "(B<CAP_SYS_NICE>)  or the real or effective user ID of the calling "
-#| "process must match the real or saved-set user ID of the target process.  "
-#| "If I<pid> is 0, then B<move_pages>()  moves pages of the calling process."
 msgid ""
 "In kernels up to and including Linux 4.12: the caller must be privileged "
 "(B<CAP_SYS_NICE>)  or the real or effective user ID of the calling process "
 "must match the real or saved-set user ID of the target process."
-msgstr ""
-"I<pid> は、移動されるページが属するプロセスの ID である。 別のプロセスのペー"
-"ジを移動するためには、呼び出し元が特権 (B<CAP_SYS_NICE>)  を持っているか、呼"
-"び出したプロセスの実ユーザー ID か実効ユーザー ID が ページ移動対象のプロセス"
-"の実ユーザー ID か保存 set-user-ID のどちらかと 一致しなければならない。 "
-"I<pid> が 0 の場合、 B<move_pages>()  は呼び出したプロセスのページを移動す"
-"る。"
+msgstr "Linux 4.12 以前のカーネルでは、呼び出し元が特権 (B<CAP_SYS_NICE>)  を持っているか、呼び出したプロセスの実ユーザー ID か実効ユーザー ID が ページ移動対象のプロセスの実ユーザー ID か保存 set-user-ID のどちらかと一致しなければならない。"
 
 #.  commit 197e7e521384a23b9e585178f3f11c9fa08274b9
 #. type: Plain text
@@ -2383,19 +2013,13 @@ msgstr "SET_MEMPOLICY"
 #: build/C/man2/set_mempolicy.2:27
 #, no-wrap
 msgid "2020-12-21"
-msgstr ""
+msgstr "2020-12-21"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:30
-#, fuzzy
-#| msgid ""
-#| "set_mempolicy - set default NUMA memory policy for a process and its "
-#| "children"
 msgid ""
 "set_mempolicy - set default NUMA memory policy for a thread and its children"
-msgstr ""
-"set_mempolicy - プロセスとその子プロセスの NUMA メモリーの デフォルトポリシー"
-"を設定する"
+msgstr "set_mempolicy - スレッドとその子スレッドの NUMA メモリーの デフォルトポリシーを設定する"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:36
@@ -2409,34 +2033,14 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:49
-#, fuzzy
-#| msgid ""
-#| "B<set_mempolicy>()  sets the NUMA memory policy of the calling process, "
-#| "which consists of a policy mode and zero or more nodes, to the values "
-#| "specified by the I<mode>, I<nodemask> and I<maxnode> arguments."
 msgid ""
 "B<set_mempolicy>()  sets the NUMA memory policy of the calling thread, which "
 "consists of a policy mode and zero or more nodes, to the values specified by "
 "the I<mode>, I<nodemask>, and I<maxnode> arguments."
-msgstr ""
-"B<set_mempolicy>()  は、呼び出し元プロセスの NUMA ポリシーを I<policy> に設定"
-"する。 NUMA ポリシーはポリシーモードと 0 個以上のノードから構成され、 設定内"
-"容は引き数 I<mode>, I<nodemask>, I<maxnode> により指定される。"
+msgstr "B<set_mempolicy>()  は、呼び出し元スレッドの NUMA ポリシーを I<policy> に設定する。 NUMA ポリシーはポリシーモードと 0 個以上のノードから構成され、 設定内容は引き数 I<mode>, I<nodemask>, I<maxnode> により指定される。"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:75
-#, fuzzy
-#| msgid ""
-#| "This system call defines the default policy for the process.  The process "
-#| "policy governs allocation of pages in the process's address space outside "
-#| "of memory ranges controlled by a more specific policy set by "
-#| "B<mbind>(2).  The process default policy also controls allocation of any "
-#| "pages for memory-mapped files mapped using the B<mmap>(2)  call with the "
-#| "B<MAP_PRIVATE> flag and that are only read [loaded] from by the process "
-#| "and of memory-mapped files mapped using the B<mmap>(2)  call with the "
-#| "B<MAP_SHARED> flag, regardless of the access type.  The policy is applied "
-#| "only when a new page is allocated for the process.  For anonymous memory "
-#| "this is when the page is first touched by the application."
 msgid ""
 "This system call defines the default policy for the thread.  The thread "
 "policy governs allocation of pages in the process's address space outside of "
@@ -2448,38 +2052,17 @@ msgid ""
 "regardless of the access type.  The policy is applied only when a new page "
 "is allocated for the thread.  For anonymous memory this is when the page is "
 "first touched by the thread."
-msgstr ""
-"B<set_mempolicy>()  は、プロセスのデフォルトポリシーを定める。 プロセスのポリ"
-"シーは、 B<mbind>(2)  で設定される特定のポリシーにより制御されるメモリー領域"
-"以外の プロセスのアドレス空間におけるページの割り当てに適用される。 プロセス"
-"のデフォルトポリシーは、 B<MAP_PRIVATE> フラグを指定した B<mmap>(2)  を使って"
-"マップされたメモリーマップファイルに対する読み出し専用 (ロードされるだけ) の"
-"ページの割り当てにも適用される。 また、 B<MAP_SHARED> フラグを指定した "
-"B<mmap>(2)  を使ってマップされたメモリーマップファイルに対するページの割り当"
-"てにも 適用される (この場合はページのアクセス種別に関わらず適用される) 。 設"
-"定したポリシーは、プロセスに新規のページが割り当てられるときにのみ 適用され"
-"る。無名メモリー (anonymous memory) の場合、新規ページの割り当ては アプリケー"
-"ションが初めてページにアクセスした際に行われる。"
+msgstr "B<set_mempolicy>()  は、スレッドのデフォルトポリシーを定める。スレッドのポリシーは、 B<mbind>(2)  で設定される特定のポリシーにより制御されるメモリー領域以外のスレッドのアドレス空間におけるページの割り当てに適用される。 スレッドのデフォルトポリシーは、 B<MAP_PRIVATE> フラグを指定した B<mmap>(2)  を使ってマップされたメモリーマップファイルに対する読み出し専用 (ロードされるだけ) のページの割り当てにも適用される。 また、 B<MAP_SHARED> フラグを指定した B<mmap>(2)  を使ってマップされたメモリーマップファイルに対するページの割り当てにも 適用される (この場合はページのアクセス種別に関わらず適用される) 。 設定したポリシーは、スレッドに新規のページが割り当てられるときにのみ 適用される。無名メモリー (anonymous memory) の場合、新規ページの割り当ては アプリケーションが初めてページにアクセスした際に行われる。"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:92
-#, fuzzy
-#| msgid ""
-#| "The I<mode> argument must specify one of B<MPOL_DEFAULT>, B<MPOL_BIND>, "
-#| "B<MPOL_INTERLEAVE>, or B<MPOL_PREFERRED>.  All policy modes except "
-#| "B<MPOL_DEFAULT> require the caller to specify via the I<nodemask> "
-#| "argument, the node or nodes to which the mode applies."
 msgid ""
 "The I<mode> argument must specify one of B<MPOL_DEFAULT>, B<MPOL_BIND>, "
 "B<MPOL_INTERLEAVE>, B<MPOL_PREFERRED>, or B<MPOL_LOCAL> (which are described "
 "in detail below).  All modes except B<MPOL_DEFAULT> require the caller to "
 "specify the node or nodes to which the mode applies, via the I<nodemask> "
 "argument."
-msgstr ""
-"I<mode> 引き数には、 B<MPOL_DEFAULT>, B<MPOL_BIND>, B<MPOL_INTERLEAVE>, "
-"B<MPOL_PREFERRED> のいずれか一つを指定しなければならない。 B<MPOL_DEFAULT> 以"
-"外のポリシーモードの場合、呼び出し元は I<nodemask> 引き数でそのポリシーモード"
-"を適用するノードを指定する必要がある。"
+msgstr "I<mode> 引き数には、 B<MPOL_DEFAULT>, B<MPOL_BIND>, B<MPOL_INTERLEAVE>, B<MPOL_PREFERRED>, B<MPOL_LOCAL> (詳細は下記参照) のいずれか一つを指定しなければならない。 B<MPOL_DEFAULT> 以外のポリシーモードの場合、呼び出し元は I<nodemask> 引き数でそのポリシーモードを適用するノードを指定する必要がある。"
 
 #. type: TP
 #: build/C/man2/set_mempolicy.2:100
@@ -2489,12 +2072,6 @@ msgstr "B<MPOL_F_STATIC_NODES> (Linux 2.6.26 以降)"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:110
-#, fuzzy
-#| msgid ""
-#| "A nonempty I<nodemask> specifies physical node ids.  Linux will not remap "
-#| "the I<nodemask> when the process moves to a different cpuset context, nor "
-#| "when the set of nodes allowed by the process's current cpuset context "
-#| "changes."
 msgid ""
 "A nonempty I<nodemask> specifies physical node IDs.  Linux will not remap "
 "the I<nodemask> when the process moves to a different cpuset context, nor "
@@ -2514,10 +2091,6 @@ msgstr "B<MPOL_F_RELATIVE_NODES> (Linux 2.6.26 以降)"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:116
-#, fuzzy
-#| msgid ""
-#| "A nonempty I<nodemask> specifies node ids that are relative to the set of "
-#| "node ids allowed by the process's current cpuset."
 msgid ""
 "A nonempty I<nodemask> specifies node IDs that are relative to the set of "
 "node IDs allowed by the process's current cpuset."
@@ -2543,16 +2116,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:157
-#, fuzzy
-#| msgid ""
-#| "Where a I<nodemask> is required, it must contain at least one node that "
-#| "is on-line, allowed by the process's current cpuset context, [unless the "
-#| "B<MPOL_F_STATIC_NODES> mode flag is specified], and contains memory.  If "
-#| "the B<MPOL_F_STATIC_NODES> is set in I<mode> and a required I<nodemask> "
-#| "contains no nodes that are allowed by the process's current cpuset "
-#| "context, the memory policy reverts to I<local allocation>.  This "
-#| "effectively overrides the specified policy until the process's cpuset "
-#| "context includes one or more of the nodes specified by I<nodemask>."
 msgid ""
 "Where a I<nodemask> is required, it must contain at least one node that is "
 "on-line, allowed by the process's current cpuset context, (unless the "
@@ -2575,15 +2138,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:171
-#, fuzzy
-#| msgid ""
-#| "The B<MPOL_DEFAULT> mode specifies that any nondefault process memory "
-#| "policy be removed, so that the memory policy \"falls back\" to the system "
-#| "default policy.  The system default policy is \"local allocation"
-#| "\"\\(emthat is, allocate memory on the node of the CPU that triggered the "
-#| "allocation.  I<nodemask> must be specified as NULL.  If the \"local node"
-#| "\" contains no free memory, the system will attempt to allocate memory "
-#| "from a \"near by\" node."
 msgid ""
 "This mode specifies that any nondefault thread memory policy be removed, so "
 "that the memory policy \"falls back\" to the system default policy.  The "
@@ -2591,27 +2145,10 @@ msgid ""
 "on the node of the CPU that triggered the allocation.  I<nodemask> must be "
 "specified as NULL.  If the \"local node\" contains no free memory, the "
 "system will attempt to allocate memory from a \"near by\" node."
-msgstr ""
-"B<MPOL_DEFAULT> モードは、デフォルトではないプロセスのメモリーポリシーを削除"
-"することを 指定するものである。これにより、メモリーポリシーはシステムの デ"
-"フォルトポリシーに「戻る」ことになる。 システムのデフォルトポリシーは「ローカ"
-"ルからの割り当て (local allocation)」、 つまりメモリー割り当てのきっかけと"
-"なった CPU のノードのメモリーが割り当てられる。 I<nodemask> には NULL を指定"
-"しなければならない。 「自ノード (local node)」に空きメモリーが全くない場合、"
-"システムは 「近くの (near by) ノード」からメモリーを割り当てようと試みる。"
+msgstr "このモードは、デフォルトではないスレッドのメモリーポリシーを削除することを 指定するものである。これにより、メモリーポリシーはシステムの デフォルトポリシーに「戻る」ことになる。 システムのデフォルトポリシーは「ローカルからの割り当て (local allocation)」、 つまりメモリー割り当てのきっかけとなった CPU のノードのメモリーが割り当てられる。 I<nodemask> には NULL を指定しなければならない。 「自ノード (local node)」に空きメモリーが全くない場合、システムは 「近くの (near by) ノード」からメモリーを割り当てようと試みる。"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:187
-#, fuzzy
-#| msgid ""
-#| "The B<MPOL_BIND> mode defines a strict policy that restricts memory "
-#| "allocation to the nodes specified in I<nodemask>.  If I<nodemask> "
-#| "specifies more than one node, page allocations will come from the node "
-#| "with the lowest numeric node ID first, until that node contains no free "
-#| "memory.  Allocations will then come from the node with the next highest "
-#| "node ID specified in I<nodemask> and so forth, until none of the "
-#| "specified nodes contain free memory.  Pages will not be allocated from "
-#| "any node not specified in the I<nodemask>."
 msgid ""
 "This mode defines a strict policy that restricts memory allocation to the "
 "nodes specified in I<nodemask>.  If I<nodemask> specifies more than one "
@@ -2620,15 +2157,7 @@ msgid ""
 "come from the node with the next highest node ID specified in I<nodemask> "
 "and so forth, until none of the specified nodes contain free memory.  Pages "
 "will not be allocated from any node not specified in the I<nodemask>."
-msgstr ""
-"B<MPOL_BIND> モードは厳密なポリシーで、メモリー割り当ては I<nodemask> に指定"
-"されたノードに限定される。 I<nodemask> に 2 個以上のノードが指定された場合、"
-"ページの割り当ては ノード ID が数字として最小のノードから開始され、 そのノー"
-"ドに空きメモリーがなくなるまでそのノードから ページ割り当てが行われる。その"
-"ノードに空きメモリーがなくなったら、 次に小さなノード ID を持つノードからペー"
-"ジ割り当てが行われる。 これを、 I<nodemask> で指定された全てのノードで空きメ"
-"モリーがなくなるまで繰り返す。 I<nodemask> で指定された以外のノードからはペー"
-"ジの割り当ては行われない。"
+msgstr "このモードは厳密なポリシーで、メモリー割り当ては I<nodemask> に指定されたノードに限定される。 I<nodemask> に 2 個以上のノードが指定された場合、ページの割り当ては ノード ID が数字として最小のノードから開始され、 そのノードに空きメモリーがなくなるまでそのノードから ページ割り当てが行われる。そのノードに空きメモリーがなくなったら、 次に小さなノード ID を持つノードからページ割り当てが行われる。 これを、 I<nodemask> で指定された全てのノードで空きメモリーがなくなるまで繰り返す。 I<nodemask> で指定された以外のノードからはページの割り当ては行われない。"
 
 #.  NOTE:  the following sentence doesn't make sense in the context
 #.  of set_mempolicy() -- no memory area specified.
@@ -2636,37 +2165,16 @@ msgstr ""
 #.  at least 1 MB or bigger.
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:201
-#, fuzzy
-#| msgid ""
-#| "B<MPOL_INTERLEAVE> interleaves page allocations across the nodes "
-#| "specified in I<nodemask> in numeric node ID order.  This optimizes for "
-#| "bandwidth instead of latency by spreading out pages and memory accesses "
-#| "to those pages across multiple nodes.  However, accesses to a single page "
-#| "will still be limited to the memory bandwidth of a single node."
 msgid ""
 "This mode interleaves page allocations across the nodes specified in "
 "I<nodemask> in numeric node ID order.  This optimizes for bandwidth instead "
 "of latency by spreading out pages and memory accesses to those pages across "
 "multiple nodes.  However, accesses to a single page will still be limited to "
 "the memory bandwidth of a single node."
-msgstr ""
-"B<MPOL_INTERLEAVE> では、ページ割り当てを I<nodemask> に指定されたノードの間"
-"でノード ID の数字順で交互に行う。 このポリシーでは、複数のノードにページを広"
-"げて配置し、これらのページへのメモリー アクセスを分散することで、遅延ではな"
-"く、帯域を最適化する。 ただし、一つのページへのアクセスに関しては依然として一"
-"つのノードのメモリー帯域 が上限となる。"
+msgstr "このモードでは、ページ割り当てを I<nodemask> に指定されたノードの間でノード ID の数字順で交互に行う。 このポリシーでは、複数のノードにページを広げて配置し、これらのページへのメモリー アクセスを分散することで、遅延ではなく、帯域を最適化する。 ただし、一つのページへのアクセスに関しては依然として一つのノードのメモリー帯域 が上限となる。"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:218
-#, fuzzy
-#| msgid ""
-#| "B<MPOL_PREFERRED> sets the preferred node for allocation.  The kernel "
-#| "will try to allocate pages from this node first and fall back to \"near by"
-#| "\" nodes if the preferred node is low on free memory.  If I<nodemask> "
-#| "specifies more than one node ID, the first node in the mask will be "
-#| "selected as the preferred node.  If the I<nodemask> and I<maxnode> "
-#| "arguments specify the empty set, then the policy specifies \"local "
-#| "allocation\" (like the system default policy discussed above)."
 msgid ""
 "This mode sets the preferred node for allocation.  The kernel will try to "
 "allocate pages from this node first and fall back to \"near by\" nodes if "
@@ -2675,14 +2183,7 @@ msgid ""
 "preferred node.  If the I<nodemask> and I<maxnode> arguments specify the "
 "empty set, then the policy specifies \"local allocation\" (like the system "
 "default policy discussed above)."
-msgstr ""
-"B<MPOL_PREFERRED> は、割り当て時に優先されるノード (preferred node) を設定す"
-"る。 カーネルはまず優先ノードからページ割り当てを行おうとし、 優先ノードに空"
-"きメモリーが少ない場合に「近くの (near by)」ノードから 割り当てを行う。 "
-"I<nodemask> に複数のノード ID が指定された場合は、 I<nodemask> 内の最初のノー"
-"ドが優先ノードとして選択される。 引き数 I<nodemask>, I<maxnode> で空集合が指"
-"定された場合は、ポリシーは (上述のシステムの デフォルトポリシーと同様に) "
-"「ローカルからの割り当て」となる。"
+msgstr "このモードは、割り当て時に優先されるノード (preferred node) を設定する。 カーネルはまず優先ノードからページ割り当てを行おうとし、 優先ノードに空きメモリーが少ない場合に「近くの (near by)」ノードから 割り当てを行う。 I<nodemask> に複数のノード ID が指定された場合は、 I<nodemask> 内の最初のノードが優先ノードとして選択される。 引き数 I<nodemask>, I<maxnode> で空集合が指定された場合は、ポリシーは (上述のシステムの デフォルトポリシーと同様に) 「ローカルからの割り当て」となる。"
 
 #.  commit 479e2802d09f1e18a97262c4c6f8f17ae5884bd8
 #.  commit f2a07f40dbc603c15f8b06e6ec7f768af67b424f
@@ -2703,16 +2204,10 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:244
-#, fuzzy
-#| msgid ""
-#| "The process memory policy is preserved across an B<execve>(2), and is "
-#| "inherited by child processes created using B<fork>(2)  or B<clone>(2)."
 msgid ""
 "The thread memory policy is preserved across an B<execve>(2), and is "
 "inherited by child threads created using B<fork>(2)  or B<clone>(2)."
-msgstr ""
-"プロセスのメモリーポリシーは B<execve>(2)  の前後で保持され、 B<fork>(2)  や "
-"B<clone>(2)  を使って作成された子プロセスに継承される。"
+msgstr "スレッドのメモリーポリシーは B<execve>(2)  の前後で保持され、 B<fork>(2)  や B<clone>(2)  を使って作成された子スレッドに継承される。"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:251
@@ -2746,32 +2241,18 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:303
-#, fuzzy
-#| msgid ""
-#| "The B<get_mempolicy>()  system call was added to the Linux kernel in "
-#| "version 2.6.7."
 msgid ""
 "The B<set_mempolicy>()  system call was added to the Linux kernel in version "
 "2.6.7."
-msgstr ""
-"B<get_mempolicy>()  システムコールはバージョン 2.6.7 で Linux カーネルに追加"
-"された。"
+msgstr "B<set_mempolicy>() システムコールはバージョン 2.6.7 で Linux カーネルに追加された。"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:310
-#, fuzzy
-#| msgid ""
-#| "Process policy is not remembered if the page is swapped out.  When such a "
-#| "page is paged back in, it will use the policy of the process or memory "
-#| "range that is in effect at the time the page is allocated."
 msgid ""
 "Memory policy is not remembered if the page is swapped out.  When such a "
 "page is paged back in, it will use the policy of the thread or memory range "
 "that is in effect at the time the page is allocated."
-msgstr ""
-"ページがスワップアウトされる場合には、 プロセスポリシーの設定は推奨されな"
-"い。 スワップアウトされたページがページインする際にも、 ページ割り当て時に適"
-"用されるプロセスポリシーやメモリー領域ポリシーが 使用される。"
+msgstr "ページがスワップアウトされる場合には、 メモリポリシーの設定は推奨されない。 スワップアウトされたページがページインする際にも、 ページ割り当て時に適用されるスレッドのポリシーやメモリー領域ポリシーが 使用される。"
 
 #. type: Plain text
 #: build/C/man2/set_mempolicy.2:322
@@ -2782,17 +2263,6 @@ msgstr ""
 "B<get_mempolicy>(2), B<getcpu>(2), B<mbind>(2), B<mmap>(2), B<numa>(3), "
 "B<cpuset>(7), B<numa>(7), B<numactl>(8)"
 
-#~ msgid "2008-08-15"
-#~ msgstr "2008-08-15"
-
-#~ msgid "2013-04-03"
-#~ msgstr "2013-04-03"
-
-#~ msgid "I<Note>: There is no glibc wrapper for this system call; see NOTES."
-#~ msgstr ""
-#~ "I<注>: このシステムコールには glibc のラッパー関数は存在しない。「注意」の"
-#~ "節を参照。"
-
 #~ msgid "B<getcpu>()  was added in kernel 2.6.19 for x86_64 and i386."
 #~ msgstr "B<getcpu>() はカーネル 2.6.19 で x86_64 と i386 向けに追加された."
 
@@ -2804,9 +2274,6 @@ msgstr ""
 #~ "B<syscall>(2) を使って呼び出すか、\n"
 #~ "代わりに B<sched_getcpu>(3) を使用すること。"
 
-#~ msgid "2015-01-22"
-#~ msgstr "2015-01-22"
-
 #~ msgid ""
 #~ "The I<mode> argument may also include an optional I<mode flag >.  The "
 #~ "supported I<mode flags> are:"
@@ -2814,18 +2281,9 @@ msgstr ""
 #~ "I<mode> 引き数には、追加で I<モードフラグ> を含めることもできる。 サポート"
 #~ "されている I<モードフラグ> は以下の通りである。"
 
-#~ msgid "2012-08-01"
-#~ msgstr "2012-08-01"
-
-#~ msgid "B<E2BIG>"
-#~ msgstr "B<E2BIG>"
-
 #~ msgid "Too many pages to move."
 #~ msgstr "移動すべきページが多過ぎる。"
 
-#~ msgid "B<ENOENT>"
-#~ msgstr "B<ENOENT>"
-
 #~ msgid ""
 #~ "No pages were found that require moving.  All pages are either already on "
 #~ "the target node, not present, had an invalid address or could not be "
@@ -2836,9 +2294,6 @@ msgstr ""
 #~ "数のプロセスによってマップされていて移動でき なかったか、のいずれかであっ"
 #~ "た。"
 
-#~ msgid "2014-05-28"
-#~ msgstr "2014-05-28"
-
 #~ msgid ""
 #~ "The I<mode> argument must specify one of B<MPOL_DEFAULT>, B<MPOL_BIND>, "
 #~ "B<MPOL_INTERLEAVE>, or B<MPOL_PREFERRED>.  All modes except "
@@ -2849,10 +2304,3 @@ msgstr ""
 #~ "B<MPOL_PREFERRED> のいずれか一つを指定してしなければならない。 "
 #~ "B<MPOL_DEFAULT> 以外のポリシーの場合、呼び出し元は I<nodemask> 引き数で一"
 #~ "つ以上のノードを指定する必要がある。"
-
-#~ msgid ""
-#~ "The B<set_mempolicy>(), system call was added to the Linux kernel in "
-#~ "version 2.6.7."
-#~ msgstr ""
-#~ "B<set_mempolicy>()  システムコールはバージョン 2.6.7 で Linux カーネルに追"
-#~ "加された。"
index eeaad32..3780bb3 100644 (file)
@@ -1,7 +1,7 @@
 # pagename,#complete,#remaining,#all
-get_mempolicy.2,26,12,38
-getcpu.2,25,4,29
-mbind.2,40,25,65
-migrate_pages.2,36,4,40
-move_pages.2,60,11,71
-set_mempolicy.2,31,23,54
+get_mempolicy.2,37,1,38
+getcpu.2,27,2,29
+mbind.2,63,2,65
+migrate_pages.2,39,1,40
+move_pages.2,64,7,71
+set_mempolicy.2,53,1,54
index 78fb459..e33d755 100644 (file)
 <TR class="over80"><TD>inotify_init.2</TD><TD>4/38</TD><TD>89.47</TD></TR>
 <TR class="over80"><TD>inotify_rm_watch.2</TD><TD>1/27</TD><TD>96.30</TD></TR>
 <TR><TD ALIGN="center" COLSPAN=3 BGCOLOR="Yellow"><B>numa</B></TD></TR>
-<TR><TD>get_mempolicy.2</TD><TD>12/38</TD><TD>68.42</TD></TR>
-<TR class="over80"><TD>getcpu.2</TD><TD>4/29</TD><TD>86.21</TD></TR>
-<TR><TD>mbind.2</TD><TD>25/65</TD><TD>61.54</TD></TR>
-<TR class="over80"><TD>migrate_pages.2</TD><TD>4/40</TD><TD>90.00</TD></TR>
-<TR class="over80"><TD>move_pages.2</TD><TD>11/71</TD><TD>84.51</TD></TR>
-<TR><TD>set_mempolicy.2</TD><TD>23/54</TD><TD>57.41</TD></TR>
+<TR class="over80"><TD>get_mempolicy.2</TD><TD>1/38</TD><TD>97.37</TD></TR>
+<TR class="over80"><TD>getcpu.2</TD><TD>2/29</TD><TD>93.10</TD></TR>
+<TR class="over80"><TD>mbind.2</TD><TD>2/65</TD><TD>96.92</TD></TR>
+<TR class="over80"><TD>migrate_pages.2</TD><TD>1/40</TD><TD>97.50</TD></TR>
+<TR class="over80"><TD>move_pages.2</TD><TD>7/71</TD><TD>90.14</TD></TR>
+<TR class="over80"><TD>set_mempolicy.2</TD><TD>1/54</TD><TD>98.15</TD></TR>
 <TR><TD ALIGN="center" COLSPAN=3 BGCOLOR="Yellow"><B>process</B></TD></TR>
 <TR class="over80"><TD>acct.2</TD><TD>6/54</TD><TD>88.89</TD></TR>
 <TR class="over80"><TD>acct.5</TD><TD>2/34</TD><TD>94.12</TD></TR>