Movatterモバイル変換


[0]ホーム

URL:


man7.org > Linux >man-pages

Linux/UNIX system programming training


io_uring_prep_socket_direct_alloc(3) — Linux manual page

NAME |SYNOPSIS |DESCRIPTION |RETURN VALUE |ERRORS |SEE ALSO |COLOPHON

io_uring_prep_socket(3)      liburing Manualio_uring_prep_socket(3)

NAME        top

       io_uring_prep_socket - prepare a socket creation request

SYNOPSIS        top

#include <sys/socket.h>#include <liburing.h>void io_uring_prep_socket(struct io_uring_sqe *sqe,intdomain,inttype,intprotocol,unsigned intflags);void io_uring_prep_socket_direct(struct io_uring_sqe *sqe,intdomain,inttype,intprotocol,unsigned intfile_index,unsigned intflags);void io_uring_prep_socket_direct_alloc(struct io_uring_sqe *sqe,intdomain,inttype,intprotocol,unsigned intflags);

DESCRIPTION        top

       Theio_uring_prep_socket(3) function prepares a socket creation       request. The submission queue entrysqe is setup to use the       communication domain defined bydomain and use the communication       type defined bytype and the protocol set byprotocol.  Theflags       argument are currently unused.       Theio_uring_prep_socket_direct(3) helper works just likeio_uring_prep_socket(3), except it maps the socket to a direct       descriptor rather than return a normal file descriptor. Thefile_index argument should be set to the slot that should be used       for this socket.       Theio_uring_prep_socket_direct_alloc(3) helper works just likeio_uring_prep_socket_direct(3), except it allocates a new direct       descriptor rather than pass a free slot in. It is equivalent to       usingio_uring_prep_socket_direct(3) withIORING_FILE_INDEX_ALLOC       as thefile_index .  Upon completion, theres field of the CQE       will return the direct slot that was allocated for the socket.       If the direct variants are used, the application must first have       registered a file table usingio_uring_register_files(3) of the       appropriate size. Once registered, a direct socket request may use       any entry in that table, as long as it is within the size of the       registered table.  If a specified entry already contains a file,       the file will first be removed from the table and closed. It's       consistent with the behavior of updating an existing file withio_uring_register_files_update(3).       For a direct descriptor socket request, thefile_index argument       can be set toIORING_FILE_INDEX_ALLOC, In this case a free entry       in io_uring file table will be used automatically and the file       index will be returned as CQEres.-ENFILEis otherwise returned       if there is no free entries in the io_uring file table.       These functions prepare an asyncsocket(2) request. See that man       page for details.

RETURN VALUE        top

       None

ERRORS        top

       The CQEres field will contain the result of the operation. See       the related man page for details on possible values. Note that       where synchronous system calls will return-1on failure and seterrno to the actual error value, io_uring never useserrno.       Instead it returns the negatederrno directly in the CQEres       field.

SEE ALSO        top

io_uring_get_sqe(3),io_uring_submit(3),socket(2)

COLOPHON        top

       This page is part of theliburing (A library for io_uring)       project.  Information about the project can be found at        ⟨https://github.com/axboe/liburing⟩.  If you have a bug report for       this manual page, send it to io-uring@vger.kernel.org.  This page       was obtained from the project's upstream Git repository       ⟨https://github.com/axboe/liburing⟩ on 2025-08-11.  (At that time,       the date of the most recent commit that was found in the       repository was 2025-08-02.)  If you discover any rendering       problems in this HTML version of the page, or you believe there is       a better or more up-to-date source for the page, or you have       corrections or improvements to the information in this COLOPHON       (which isnot part of the original manual page), send a mail to       man-pages@man7.orgliburing-2.2                   May 27, 2022io_uring_prep_socket(3)

Pages that refer to this page:io_uring_prep_socket(3)io_uring_prep_socket_direct(3)io_uring_prep_socket_direct_alloc(3)



HTML rendering created 2025-09-06 byMichael Kerrisk, author ofThe Linux Programming Interface.

For details of in-depthLinux/UNIX system programming training courses that I teach, lookhere.

Hosting byjambit GmbH.

Cover of TLPI


[8]ページ先頭

©2009-2025 Movatter.jp