1 .. This file is dual-licensed: you can use it either under the terms
2 .. of the GPL 2.0 or the GFDL 1.1+ license, at your option. Note that this
3 .. dual licensing only applies to this file, and not this project as a
6 .. a) This file is free software; you can redistribute it and/or
7 .. modify it under the terms of the GNU General Public License as
8 .. published by the Free Software Foundation version 2 of
11 .. This file is distributed in the hope that it will be useful,
12 .. but WITHOUT ANY WARRANTY; without even the implied warranty of
13 .. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 .. GNU General Public License for more details.
18 .. b) Permission is granted to copy, distribute and/or modify this
19 .. document under the terms of the GNU Free Documentation License,
20 .. Version 1.1 or any later version published by the Free Software
21 .. Foundation, with no Invariant Sections, no Front-Cover Texts
22 .. and no Back-Cover Texts. A copy of the license is included at
23 .. Documentation/userspace-api/media/fdl-appendix.rst.
25 .. TODO: replace it to GPL-2.0 OR GFDL-1.1-or-later WITH no-invariant-sections
27 .. _media_request_ioc_reinit:
29 ******************************
30 ioctl MEDIA_REQUEST_IOC_REINIT
31 ******************************
36 MEDIA_REQUEST_IOC_REINIT - Re-initialize a request
42 .. c:function:: int ioctl( int request_fd, MEDIA_REQUEST_IOC_REINIT )
43 :name: MEDIA_REQUEST_IOC_REINIT
50 File descriptor returned by :ref:`MEDIA_IOC_REQUEST_ALLOC`.
55 If the media device supports :ref:`requests <media-request-api>`, then
56 this request ioctl can be used to re-initialize a previously allocated
59 Re-initializing a request will clear any existing data from the request.
60 This avoids having to :ref:`close() <request-func-close>` a completed
61 request and allocate a new request. Instead the completed request can just
62 be re-initialized and it is ready to be used again.
64 A request can only be re-initialized if it either has not been queued
65 yet, or if it was queued and completed. Otherwise it will set ``errno``
66 to ``EBUSY``. No other error codes can be returned.
71 On success 0 is returned, on error -1 and the ``errno`` variable is set
75 The request is queued but not yet completed.