1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
// @generated
// This file is @generated by prost-build.
// \[#protodoc-title: Default socket interface configuration\]
/// Configuration for default socket interface that relies on OS dependent syscall to create
/// sockets.
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct DefaultSocketInterface {
/// io_uring options. io_uring is only valid in Linux with at least kernel version 5.11. Otherwise,
/// Envoy will fall back to use the default socket API. If not set then io_uring will not be
/// enabled.
#[prost(message, optional, tag="1")]
pub io_uring_options: ::core::option::Option<IoUringOptions>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct IoUringOptions {
/// The size for io_uring submission queues (SQ). io_uring is built with a fixed size in each
/// thread during configuration, and each io_uring operation creates a submission queue
/// entry (SQE). The default is 1000.
#[prost(message, optional, tag="1")]
pub io_uring_size: ::core::option::Option<super::super::super::super::super::google::protobuf::UInt32Value>,
/// Enable io_uring submission queue polling (SQPOLL). io_uring SQPOLL mode polls all SQEs in the
/// SQ in the kernel thread. io_uring SQPOLL mode may reduce latency and increase CPU usage as a
/// cost. The default is false.
#[prost(bool, tag="2")]
pub enable_submission_queue_polling: bool,
/// The size of an io_uring socket's read buffer. Each io_uring read operation will allocate a
/// buffer of the given size. If the given buffer is too small, the socket will have read multiple
/// times for all the data. The default is 8192.
#[prost(message, optional, tag="3")]
pub read_buffer_size: ::core::option::Option<super::super::super::super::super::google::protobuf::UInt32Value>,
/// The write timeout of an io_uring socket on closing in ms. io_uring writes and closes
/// asynchronously. If the remote stops reading, the io_uring write operation may never complete.
/// The operation is canceled and the socket is closed after the timeout. The default is 1000.
#[prost(message, optional, tag="4")]
pub write_timeout_ms: ::core::option::Option<super::super::super::super::super::google::protobuf::UInt32Value>,
}
// @@protoc_insertion_point(module)
|