POSIX.1-2001 did not have a specification for input streams,
but POSIX.1-2008 added one.
Reported-by: Sergey V. Zubkov <cubbi@cubbi.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
I noticed you were adding git commit references to the various
Linux version markers.
This adds git commit references for all Linux kernel version
notes in perf_event_open.2
mtk: I backed out two pieces of Vince's patch that were not
source comments. They can be dealt with as separate commits.
Signed-off-by: Vince Weaver <vincent.weaver@maine.edu>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
The manual incorrectly states the system timezone
path as /usr/share/zoneinfo/localtime. Glibc does
not use that file for anything, it uses
$(prefix)/etc/localtime.
There is an ambiguous reference in the man-page to
/etc/localtime, but it does not indicate that it
will be used. It states clearly that
/usr/share/zoneinfo/localtime is used.
A comment in the glibc Makeconfig even says that
file should not exist:
> ... relative to $(zonedir). It is a good idea
> to put this somewhere other than there, so the
> zoneinfo directory contains only universal data,
> localizing the configuration data elsewhere.
Furthermore, the man page does not indicate the
reason this file is being used; which is because
it is the configured system timezone.
A later patch in this series addresses the
possibility that /etc/localtime could be changed
during glibc's compilation. The language changed
in this patch points to the FILE section which is
where the explanation will be. There is no reason
to repeat that information multiple times
throughout the man-page.
EVIDENCE:
glibc/Makeconfig:256: sysconfdir = $(prefix)/etc
glibc/Makeconfig:272: localtime-file = $(sysconfdir)/localtime
FROM INFO LIBC:
C.2 Installing the C Library
============================
To configure the locally used timezone, set the `TZ' environment
variable. The script `tzselect' helps you to select the right value.
As an example, for Germany, `tzselect' would tell you to use
`TZ='Europe/Berlin''. For a system wide installation (the given paths
are for an installation with `--prefix=/usr'), link the timezone file
which is in `/usr/share/zoneinfo' to the file `/etc/localtime'. For
Germany, you might execute `ln -s /usr/share/zoneinfo/Europe/Berlin
/etc/localtime'.
STEPS TO REPRODUCE:
cd /usr/share/zoneinfo/
cp Antarctica/South_Pole localtime
cp /US/Eastern /etc/localtime
cd
date
Sun Jan 18 12:06:36 EST 2015
TZ=:/usr/share/zoneinfo/localtime date
Mon Jan 19 06:06:54 NZDT 2015
rm /etc/localtime
date
Sun Jan 18 17:08:37 UTC 2015
TZ=:/usr/share/zoneinfo/localtime date
Mon Jan 19 06:08:41 NZDT 2015
Signed-off-by: J William Piggott <elseifthen@gmx.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
If the TZ filespec omits the leading colon, glibc will parse
it for any valid format, i.e., it will still work.
STEPS TO REPRODUCE:
TZ=:Europe/Kiev date
Sun Jan 18 20:19:13 EET 2015
TZ=Europe/Kiev date
Sun Jan 18 20:19:20 EET 2015
Signed-off-by: J William Piggott <elseifthen@gmx.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Paragraph three of the DESCRIPTION section says
that when TZ is set, but empty, then UTC is used.
Later it says if the TZ filespec is omitted then the file
/usr/share/zoneinfo/localtime is used. This is incorrect,
it will use UTC in that case as well.
Steps to reproduce:
cd /usr/share/zoneinfo/
cp Antarctica/South_Pole localtime
cd
date
Sun Jan 18 10:59:50 EST 2015
TZ=:Hongkong date
Sun Jan 18 23:59:56 HKT 2015
TZ=:/usr/share/zoneinfo/localtime date
Mon Jan 19 05:00:03 NZDT 2015
TZ=: date
Sun Jan 18 16:00:11 UTC 2015
TZ=":" date
Sun Jan 18 16:00:18 UTC 2015
TZ=':' date
Sun Jan 18 16:00:24 UTC 2015
TZ=:/ date
Sun Jan 18 16:00:34 2015
TZ=":/" date
Sun Jan 18 16:00:40 2015
TZ="" date
Sun Jan 18 16:00:45 UTC 2015
Signed-off-by: J William Piggott <elseifthen@gmx.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Since 2.6.36 [1] CONFIG_COMPACTION is supported in Linux (for a
detailed explanation see [2]). But in essence the contents of
/proc/buddyinfo shows how much contiguous areas of a certain
size are available. These numbers are not actually up to date
as the Linux kernel will implicitly trigger compaction
(+- defragmentation) when an allocation is done. This makes it
difficult since you can't predict upfront whether or not a large
allocation will succeed or not. By using
/proc/sys/vm/compact_memory you can explicitly trigger compaction
to occur and /proc/buddyinfo will give a more realistic view on
the available memory in contiguous areas.
This patch updates proc.5 to explain the usage of this file and is
inspired by Documentation/systcl/vm.txt [3]
[1] http://kernelnewbies.org/Linux_2_6_35#head-9cb0a1275559d40296da42efb7977896ac9edab7
[2] http://lwn.net/Articles/368869/
[3] http://lxr.free-electrons.com/source/Documentation/sysctl/vm.txt#L100
Signed-off-by: Elie De Brauwer <eliedebrauwer@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Update the perf_event_open manpage to be more consistent when
discussing overflow events. It merges the discussion of
poll-type notifications with those generated by SIGIO
signal handlers.
This addresses the remaining FIXMEs is the document.
Signed-off-by: Vince Weaver <vincent.weaver@maine.edu>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Remove an inaccurate paragraph about values in the attr.config
field. This information was never true in any released kernel;
it somehow snuck into the manpage because it is still described
this way in tools/perf/design.txt in the kernel source tree.
Signed-off-by: Vince Weaver <vincent.weaver@maine.edu>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
New manual page for the new PCI MMIO memory access system
calls, s390_pci_mmio_write() and s390_pci_mmio_read(),
added for the s390 platform.
Signed-off-by: Alexey Ishchuk <aishchuk@linux.vnet.ibm.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>