Re: [PATCH v3 1/1] s390_sthyi.2: New page for s390-specific s390_sthyi(2)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Stefan,

On 11/24/2017 12:08 PM, Stefan Raspl wrote:
> On 23.11.2017 14:45, QingFeng Hao wrote:
>> Signed-off-by: QingFeng Hao <haoqf@xxxxxxxxxxxxxxxxxx>
>> ---
>>
>> Changes since v2:
>>  - Add explanation for return value 1 and 2 provided by Michael Kerrisk.
>>  - Some other tiny decorations.
>>
>> Changes since v1:
>>  - better wording and explanations provided by Michael Kerrisk
>>    and Heiko Carstens.
>>  - remove 2 error lines detected by Michael Kerrisk
>>
>>  man2/s390_sthyi.2 | 118 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>  1 file changed, 118 insertions(+)
>>  create mode 100644 man2/s390_sthyi.2
>>
>> diff --git a/man2/s390_sthyi.2 b/man2/s390_sthyi.2
>> new file mode 100644
>> index 0000000..4b36758
>> --- /dev/null
>> +++ b/man2/s390_sthyi.2
>> @@ -0,0 +1,118 @@
>> +.\" Copyright IBM Corp. 2017
>> +.\" Author: QingFeng Hao <haoqf@xxxxxxxxxxxxxxxxxx>
>> +.\"
>> +.\" %%%LICENSE_START(GPLv2+_DOC_FULL)
>> +.\" This is free documentation; you can redistribute it and/or
>> +.\" modify it under the terms of the GNU General Public License as
>> +.\" published by the Free Software Foundation; either version 2 of
>> +.\" the License, or (at your option) any later version.
>> +.\"
>> +.\" The GNU General Public License's references to "object code"
>> +.\" and "executables" are to be interpreted as the output of any
>> +.\" document formatting or typesetting system, including
>> +.\" intermediate and printed output.
>> +.\"
>> +.\" This manual is distributed in the hope that it will be useful,
>> +.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
>> +.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>> +.\" GNU General Public License for more details.
>> +.\"
>> +.\" You should have received a copy of the GNU General Public
>> +.\" License along with this manual; if not, see
>> +.\" <http://www.gnu.org/licenses/>.
>> +.\" %%%LICENSE_END
>> +.\"
>> +.TH S390_STHYI 2 2017-09-21 "Linux Programmer's Manual"
>> +.SH NAME
>> +s390_sthyi \- emulate STHYI instruction
>> +.SH SYNOPSIS
>> +.nf
>> +.B #include <asm/unistd.h>
>> +.PP
>> +.BI "int s390_sthyi(unsigned long " function_code ", void *" buffer ",
>> +.BI "               uint64_t *" return_code ", unsigned long " flags ");
>> +.fi
>> +.SH DESCRIPTION
>> +The
>> +.BR s390_sthyi ()
>> +system call emulates the STHYI (Store Hypervisor Information) instruction.
>> +It provides hardware resource information for the machine and its virtualization
>> +levels. This includes CPU type and capacity, as well as the machine model and
>> +other metrics.
>> +.PP
>> +The
>> +.I function_code
>> +argument indicates which function to perform.
>> +The following code(s) are supported:
>> +.RB ( 0 )
>> +Return CP (Central Processor) and IFL (Integrated Facility for Linux)
>> +capacity information.
>> +.PP
>> +The
>> +.I buffer 
>> +argument specifies the address of response buffer. If the system
>> +call returns 0, the response buffer will be filled with CPU capacity
>> +information. Otherwise, the response buffer's content is unchanged.
>> +.PP
>> +The
>> +.I return_code
>> +argument stores the return code of the STHYI instruction, success
>> +.RB ( 0 )
>> +or unsupported function code
>> +.RB ( 4 ).
>> +For details about return code, function_code, and buffer argument> +please see section
>> +.IR "CONFORMING TO"
>> +below.
>> +.PP
>> +The
>> +.I flags
>> +argument is provided to allow for future extensions and currently
>> +must be set to "0".
>> +.SH RETURN VALUE
>> +On success, the return value of
>> +.BR s390_sthyi ()
>> +matches the condition code of the STHYI instructions, which is a value
>> +between 0-3 (that is: emulation succeeded).
>> +Return value of 0 indicates that CPU capacity information is stored to
>> +.I buffer.
>> +Return value of 3 indicates "unsupported function code" and buffer's
>> +content is unchanged.
>> +Return value of 1 and 2 are reserved.
>> +.PP
>> +On error, -1 is returned, and
>> +.IR errno
>> +is set appropriately.
>> +.SH ERRORS
>> +.TP
>> +.B EINVAL
>> +The value specified in
>> +.I flags
>> +is non-zero.
>> +.TP
>> +.B EOPNOTSUPP
>> +The value specified in
>> +.I function_code 
>> +is not a valid value.
>> +.TP
>> +.B EFAULT
>> +The value specified in
>> +.I buffer 
>> +or
>> +.I return_code
>> +is not a valid address.
>> +.TP
>> +.B ENOMEM
>> +Allocating memory for handling the CPU capacity information failed.
>> +.SH VERSIONS
>> +This system call is available since Linux 4.15.
>> +.SH CONFORMING TO
>> +This Linux-specific system call is available only on the s390 architecture.
>> +For details about the STHYI instruction, see
>> +https://www.ibm.com/support/knowledgecenter/SSB27U_6.3.0/com.ibm.zvm.v630.hcpb4/hcpb4sth.htm
>> +.SH NOTES
>> +Glibc does not provide a wrapper for this system call, use
>> +.BR syscall (2)
>> +to call it.
>> +.SH SEE ALSO
>> +.BR syscall (2)
>>
> 
> --- t.2 2017-11-24 11:42:36.372320547 +0100
> +++ t.2new      2017-11-24 12:05:00.533576869 +0100
> @@ -44,23 +44,33 @@ The
>  .I function_code
>  argument indicates which function to perform.
>  The following code(s) are supported:
> -.RB ( 0 )
> +.TP 8
> +.B 0
>  Return CP (Central Processor) and IFL (Integrated Facility for Linux)
>  capacity information.
>  .PP
>  The
>  .I buffer
> -argument specifies the address of response buffer. If the system
> +argument specifies the address of a response buffer. If the system
>  call returns 0, the response buffer will be filled with CPU capacity
>  information. Otherwise, the response buffer's content is unchanged.
>  .PP
>  The
>  .I return_code
> -argument stores the return code of the STHYI instruction, success
> -.RB ( 0 )
> -or unsupported function code
> -.RB ( 4 ).
> -For details about return code, function_code, and buffer argument,
> +argument stores the return code of the STHYI instruction, using one
> of the
> +following values:
> +.TP 8
> +.B 0
> +Success.
> +.TP
> +.B 4
> +Unsupported function code.
> +.PP
> +For further details about
> +.IR return_code ,
> +.IR function_code
> +and
> +.IR buffer
>  please see section
>  .IR "CONFORMING TO"
>  below.
> @@ -75,7 +85,7 @@ On success, the return value of
>  matches the condition code of the STHYI instructions, which is a value
>  between 0-3 (that is: emulation succeeded).
>  Return value of 0 indicates that CPU capacity information is stored to
> -.I buffer.
> +.IR buffer .
>  Return value of 3 indicates "unsupported function code" and buffer's
>  content is unchanged.
>  Return value of 1 and 2 are reserved.
> @@ -84,7 +94,7 @@ On error, -1 is returned, and
>  .IR errno
>  is set appropriately.
>  .SH ERRORS
> -.TP
> +.TP 16
>  .B EINVAL
>  The value specified in
>  .I flags

Your patch didn't quite apply, but I made most of the changes
that you suggest manually. Thanks!

Cheers,

Michael



-- 
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux