From 5406291a1d340b0e66fa52dda3230c0b65f47e63 Mon Sep 17 00:00:00 2001 From: Mike Pritchard Date: Mon, 15 Apr 1996 21:37:07 +0000 Subject: [PATCH] Add man pages for the copy*, fetch*, and store* families of kernel functions. Also added timeout(9) to the makefile. Reviewed by: joerg Obtained from: NetBSD --- share/man/man9/Makefile | 11 ++-- share/man/man9/copy.9 | 130 ++++++++++++++++++++++++++++++++++++++++ share/man/man9/fetch.9 | 85 ++++++++++++++++++++++++++ share/man/man9/store.9 | 85 ++++++++++++++++++++++++++ 4 files changed, 307 insertions(+), 4 deletions(-) create mode 100644 share/man/man9/copy.9 create mode 100644 share/man/man9/fetch.9 create mode 100644 share/man/man9/store.9 diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index 759da53b63f..949534c374f 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -1,9 +1,12 @@ # @(#)Makefile 8.1 (Berkeley) 6/5/93 -MAN9= devfs_add_devswf.9 devfs_link.9 intro.9 sleep.9 style.9 +MAN9= copy.9 devfs_add_devswf.9 devfs_link.9 fetch.9 intro.9 sleep.9 \ + store.9 style.9 timeout.9 -MLINKS+= \ - sleep.9 tsleep.9 \ - sleep.9 wakeup.9 +MLINKS+= copy.9 copyin.9 copy.9 copyout.9 copy.9 copystr.9 copy.9 copyinstr.9 +MLINKS+= fetch.9 fubyte.9 fetch.9 fusword.9 fetch.9 fuswintr.9 fetch.9 fuword.9 +MLINKS+= sleep.9 tsleep.9 sleep.9 wakeup.9 +MLINKS+= store.9 subyte.9 store.9 susword.9 store.9 suswintr.9 store.9 suword.9 +MLINKS+= timeout.9 untimeout.9 .include diff --git a/share/man/man9/copy.9 b/share/man/man9/copy.9 new file mode 100644 index 00000000000..c8c57c31e8f --- /dev/null +++ b/share/man/man9/copy.9 @@ -0,0 +1,130 @@ +.\" $NetBSD: copy.9,v 1.2 1996/01/09 03:23:04 thorpej Exp $ +.\" +.\" Copyright (c) 1996 Jason R. Thorpe. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed by Kenneth Stailey. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed for the NetBSD Project +.\" by Jason R. Thorpe. +.\" 4. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd Jan 7, 1996 +.Dt COPY 9 +.Os FreeBSD +.Sh NAME +.Nm copy , +.Nm copyin , +.Nm copyout , +.Nm copystr , +.Nm copyinstr +.Nd kernel copy functions +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Ft int +.Fn copyin "void *uaddr" "void *kaddr" "size_t len" +.Ft int +.Fn copyout "void *kaddr" "void *uaddr" "size_t len" +.Ft int +.Fn copystr "void *kfaddr" "void *kdaddr" "size_t len" "size_t *done" +.Ft int +.Fn copyinstr "void *uaddr" "void *kaddr" "size_t len" "size_t *done" +.\" .Ft int +.\" .Fn copyoutstr "void *kaddr" "void *uaddr" "size_t len" "size_t *done" +.Sh DESCRIPTION +The +.Nm +functions are designed to copy contiguous data from one address +to another. All but +.Fn copystr +copy data from user-space to kernel-space or vice-versa. +.Pp +The +.Nm +routines provide the following functionality: +.Bl -tag -width "copyoutstr()" +.It Fn copyin +Copies +.Pa len +bytes of data from the user-space address +.Pa uaddr +to the kernel-space address +.Pa kaddr . +.It Fn copyout +Copies +.Pa len +bytes of data from the kernel-space address +.Pa kaddr +to the user-space address +.Pa uaddr . +.It Fn copystr +Copies a NULL-terminated string, at most +.Pa len +bytes long, from kernel-space address +.Pa kfaddr +to kernel-space address +.Pa kdaddr . +The number of bytes actually copied, including the terminating +NULL, is returned in +.Pa *done . +.It Fn copyinstr +Copies a NULL-terminated string, at most +.Pa len +bytes long, from user-space address +.Pa uaddr +to kernel-space address +.Pa kaddr . +The number of bytes actually copied, including the terminating +NULL, is returned in +.Pa *done . +.\" .It Fn copyoutstr +.\" Copies a NULL-terminated string, at most +.\" bytes long, from kernel-space address +.\" .Pa kaddr +.\" to user-space address +.\" .Pa uaddr . +.\" The number of bytes actually copied, including the terminating +.\" NULL, is returned in +.\" .Pa *done . +.El +.Sh RETURN VALUES +The +.Nm +functions return 0 on success or EFAULT if a bad address is encountered. +In addition, the +.Fn copystr , +and +.Fn copyinstr +.\" .Fn copyinstr , +.\" and +.\" .Fn copyoutstr +functions return ENAMETOOLONG if the string is longer than +.Pa len +bytes. +.Sh SEE ALSO +.Xr fetch 9 , +.Xr store 9 . diff --git a/share/man/man9/fetch.9 b/share/man/man9/fetch.9 new file mode 100644 index 00000000000..6e9ab58ef1b --- /dev/null +++ b/share/man/man9/fetch.9 @@ -0,0 +1,85 @@ +.\" $NetBSD: fetch.9,v 1.2 1996/01/09 21:59:24 perry Exp $ +.\" +.\" Copyright (c) 1996 Jason R. Thorpe. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed by Kenneth Stailey. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed for the NetBSD Project +.\" by Jason R. Thorpe. +.\" 4. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd Jan 7, 1996 +.Dt FETCH 9 +.Os FreeBSD +.Sh NAME +.Nm fetch , +.Nm fubyte , +.Nm fusword , +.Nm fuswintr , +.Nm fuword +.Nd fetch data from user-space +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Ft int +.Fn fubyte "void *base" +.Ft int +.Fn fusword "void *base" +.Ft int +.Fn fuswintr "void *base" +.Ft int +.Fn fuword "void *base" +.Sh DESCRIPTION +The +.Nm +functions are designed to copy small amounts of data from user-space. +.Pp +The +.Nm +routines provide the following functionality: +.Bl -tag -width "fuswintr()" +.It Fn fubyte +Fetches a byte of data from the user-space address +.Pa base . +.It Fn fusword +Fetches a short word of data from the user-space address +.Pa base . +.It Fn fuswintr +Fetches a short word of data from the user-space address +.Pa base . +This function is safe to call during an interrupt context. +.It Fn fuword +Fetches a word of data from the user-space address +.Pa base . +.El +.Sh RETURN VALUES +The +.Nm +functions return the data fetched or -1 on failure. +.Sh SEE ALSO +.Xr copy 9 , +.Xr store 9 . diff --git a/share/man/man9/store.9 b/share/man/man9/store.9 new file mode 100644 index 00000000000..c9b91d0e097 --- /dev/null +++ b/share/man/man9/store.9 @@ -0,0 +1,85 @@ +.\" $NetBSD: store.9,v 1.2 1996/01/09 21:59:27 perry Exp $ +.\" +.\" Copyright (c) 1996 Jason R. Thorpe. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed by Kenneth Stailey. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed for the NetBSD Project +.\" by Jason R. Thorpe. +.\" 4. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd Jan 7, 1996 +.Dt STORE 9 +.Os FreeBSD +.Sh NAME +.Nm store , +.Nm subyte , +.Nm susword , +.Nm suswintr , +.Nm suword +.Nd store data to user-space +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Ft int +.Fn subyte "void *base" +.Ft int +.Fn susword "void *base" +.Ft int +.Fn suswintr "void *base" +.Ft int +.Fn suword "void *base" +.Sh DESCRIPTION +The +.Nm +functions are designed to copy small amounts of data to user-space. +.Pp +The +.Nm +routines provide the following functionality: +.Bl -tag -width "suswintr()" +.It Fn subyte +Stores a byte of data to the user-space address +.Pa base . +.It Fn susword +Stores a short word of data to the user-space address +.Pa base . +.It Fn suswintr +Stores a short word of data to the user-space address +.Pa base . +This function is safe to call during an interrupt context. +.It Fn suword +Stores a word of data to the user-space address +.Pa base . +.El +.Sh RETURN VALUES +The +.Nm +functions return 0 on success or -1 on failure. +.Sh SEE ALSO +.Xr copy 9 , +.Xr fetch 9 . -- 2.45.2