← Documents Documentation/userspace-api/media/mediactl/request-func-close.rst GitHub 원문 ↗

Linux 6.18.37 · Userspace API / Media / Media Controller

request close()

Request file descriptor를 닫고 모든 참조와 driver 처리가 끝난 뒤 resource를 해제합니다.

Source pathDocumentation/userspace-api/media/mediactl/request-func-close.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약·해설

request-func-close.rst:1-45

Queue된 request fd를 닫아도 request 실행은 취소되지 않습니다. Descriptor는 즉시 쓸 수 없게 되지만 object는 driver 완료와 모든 fd close 뒤 해제됩니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 .. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later
2 .. c:namespace:: MC.request
3
4 .. _request-func-close:
5
6 ***************
7 request close()
8 ***************
9
10 Name
11 ====
12
13 request-close - Close a request file descriptor
14
15 Synopsis
16 ========
17
18 .. code-block:: c
19
20 #include <unistd.h>
21
22 .. c:function:: int close( int fd )
23
24 Arguments
25 =========
26
27 ``fd``
28 File descriptor returned by :ref:`MEDIA_IOC_REQUEST_ALLOC`.
29
30 Description
31 ===========
32
33 Closes the request file descriptor. Resources associated with the request
34 are freed once all file descriptors associated with the request are closed
35 and the driver has completed the request.
36 See :ref:`here <media-request-life-time>` for more information.
37
38 Return Value
39 ============
40
41 :c:func:`close()` returns 0 on success. On error, -1 is
42 returned, and ``errno`` is set appropriately. Possible error codes are:
43
44 EBADF
45 ``fd`` is not a valid open file descriptor.
46

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

이름, 선언과 인자

1-29

`close()`는 `MEDIA_IOC_REQUEST_ALLOC`이 반환한 request file descriptor를 닫습니다.

#include <unistd.h>

int close(int fd);
request close 인자
인자설명
fdMEDIA_IOC_REQUEST_ALLOC이 반환한 request file descriptor

닫을 request fd를 전달합니다.

.. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later
.. c:namespace:: MC.request

.. _request-func-close:

***************
request close()
***************

Name
====

request-close - Close a request file descriptor

Synopsis
========

.. code-block:: c

    #include <unistd.h>

.. c:function:: int close( int fd )

Arguments
=========

``fd``
    File descriptor returned by :ref:`MEDIA_IOC_REQUEST_ALLOC`.

Request resource 해제 시점

30-37

호출은 해당 request fd를 닫습니다. Request와 연관된 모든 file descriptor가 닫히고 driver가 request 처리를 완료한 뒤에야 관련 resource가 해제됩니다.

따라서 queue된 request fd를 닫는 것은 실행 취소가 아닙니다. 그 fd만 사용할 수 없게 되며 driver가 완료할 때까지 request object는 살아 있습니다.

Description
===========

Closes the request file descriptor. Resources associated with the request
are freed once all file descriptors associated with the request are closed
and the driver has completed the request.
See :ref:`here <media-request-life-time>` for more information.

반환값과 EBADF

38-45

성공하면 0을 반환합니다. 오류이면 -1을 반환하고 `errno`를 설정합니다.

request close 오류
errno조건
EBADFfd가 유효하게 열린 file descriptor가 아님

유효하지 않은 descriptor를 구분합니다.

Return Value
============

:c:func:`close()` returns 0 on success. On error, -1 is
returned, and ``errno`` is set appropriately. Possible error codes are:

EBADF
    ``fd`` is not a valid open file descriptor.