'\" t .\" Title: kfifo_from_user .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.79.1 .\" Date: January 2017 .\" Manual: FIFO Buffer .\" Source: Kernel Hackers Manual 4.8.15 .\" Language: English .\" .TH "KFIFO_FROM_USER" "9" "January 2017" "Kernel Hackers Manual 4\&.8\&." "FIFO Buffer" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" kfifo_from_user \- puts some data from user space into the fifo .SH "SYNOPSIS" .HP \w'kfifo_from_user('u .BI "kfifo_from_user(" "fifo" ", " "from" ", " "len" ", " "copied" ");" .SH "ARGUMENTS" .PP \fIfifo\fR .RS 4 address of the fifo to be used .RE .PP \fIfrom\fR .RS 4 pointer to the data to be added .RE .PP \fIlen\fR .RS 4 the length of the data to be added .RE .PP \fIcopied\fR .RS 4 pointer to output variable to store the number of copied bytes .RE .SH "DESCRIPTION" .PP This macro copies at most \fIlen\fR bytes from the \fIfrom\fR into the fifo, depending of the available space and returns \-EFAULT/0\&. .PP Note that with only one concurrent reader and one concurrent writer, you don\*(Aqt need extra locking to use these macro\&. .SH "COPYRIGHT" .br