move socket_set_nodelay to osdep.c
Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
parent
4ef7b8944c
commit
bf1c852aa9
@ -787,15 +787,6 @@ static int aio_flush_request(void *opaque)
|
|||||||
!QLIST_EMPTY(&s->pending_aio_head);
|
!QLIST_EMPTY(&s->pending_aio_head);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int set_nodelay(int fd)
|
|
||||||
{
|
|
||||||
int ret, opt;
|
|
||||||
|
|
||||||
opt = 1;
|
|
||||||
ret = setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, (char *)&opt, sizeof(opt));
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Return a socket discriptor to read/write objects.
|
* Return a socket discriptor to read/write objects.
|
||||||
*
|
*
|
||||||
@ -814,7 +805,7 @@ static int get_sheep_fd(BDRVSheepdogState *s)
|
|||||||
|
|
||||||
socket_set_nonblock(fd);
|
socket_set_nonblock(fd);
|
||||||
|
|
||||||
ret = set_nodelay(fd);
|
ret = socket_set_nodelay(fd);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
error_report("%s", strerror(errno));
|
error_report("%s", strerror(errno));
|
||||||
closesocket(fd);
|
closesocket(fd);
|
||||||
|
@ -2841,7 +2841,7 @@ static void gdb_accept(void)
|
|||||||
GDBState *s;
|
GDBState *s;
|
||||||
struct sockaddr_in sockaddr;
|
struct sockaddr_in sockaddr;
|
||||||
socklen_t len;
|
socklen_t len;
|
||||||
int val, fd;
|
int fd;
|
||||||
|
|
||||||
for(;;) {
|
for(;;) {
|
||||||
len = sizeof(sockaddr);
|
len = sizeof(sockaddr);
|
||||||
@ -2858,8 +2858,7 @@ static void gdb_accept(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* set short latency */
|
/* set short latency */
|
||||||
val = 1;
|
socket_set_nodelay(fd);
|
||||||
setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, (char *)&val, sizeof(val));
|
|
||||||
|
|
||||||
s = g_malloc0(sizeof(GDBState));
|
s = g_malloc0(sizeof(GDBState));
|
||||||
s->c_cpu = first_cpu;
|
s->c_cpu = first_cpu;
|
||||||
|
@ -34,6 +34,7 @@ int inet_aton(const char *cp, struct in_addr *ia);
|
|||||||
int qemu_socket(int domain, int type, int protocol);
|
int qemu_socket(int domain, int type, int protocol);
|
||||||
int qemu_accept(int s, struct sockaddr *addr, socklen_t *addrlen);
|
int qemu_accept(int s, struct sockaddr *addr, socklen_t *addrlen);
|
||||||
int socket_set_cork(int fd, int v);
|
int socket_set_cork(int fd, int v);
|
||||||
|
int socket_set_nodelay(int fd);
|
||||||
void socket_set_block(int fd);
|
void socket_set_block(int fd);
|
||||||
void socket_set_nonblock(int fd);
|
void socket_set_nonblock(int fd);
|
||||||
int send_all(int fd, const void *buf, int len1);
|
int send_all(int fd, const void *buf, int len1);
|
||||||
|
@ -2365,12 +2365,6 @@ static void tcp_chr_telnet_init(int fd)
|
|||||||
send(fd, (char *)buf, 3, 0);
|
send(fd, (char *)buf, 3, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void socket_set_nodelay(int fd)
|
|
||||||
{
|
|
||||||
int val = 1;
|
|
||||||
setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, (char *)&val, sizeof(val));
|
|
||||||
}
|
|
||||||
|
|
||||||
static int tcp_chr_add_client(CharDriverState *chr, int fd)
|
static int tcp_chr_add_client(CharDriverState *chr, int fd)
|
||||||
{
|
{
|
||||||
TCPCharDriver *s = chr->opaque;
|
TCPCharDriver *s = chr->opaque;
|
||||||
|
@ -430,8 +430,7 @@ void tcp_connect(struct socket *inso)
|
|||||||
setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (char *)&opt, sizeof(int));
|
setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (char *)&opt, sizeof(int));
|
||||||
opt = 1;
|
opt = 1;
|
||||||
setsockopt(s, SOL_SOCKET, SO_OOBINLINE, (char *)&opt, sizeof(int));
|
setsockopt(s, SOL_SOCKET, SO_OOBINLINE, (char *)&opt, sizeof(int));
|
||||||
opt = 1;
|
socket_set_nodelay(s);
|
||||||
setsockopt(s, IPPROTO_TCP, TCP_NODELAY, (char *)&opt, sizeof(int));
|
|
||||||
|
|
||||||
so->so_fport = addr.sin_port;
|
so->so_fport = addr.sin_port;
|
||||||
so->so_faddr = addr.sin_addr;
|
so->so_faddr = addr.sin_addr;
|
||||||
|
@ -63,6 +63,12 @@ int socket_set_cork(int fd, int v)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int socket_set_nodelay(int fd)
|
||||||
|
{
|
||||||
|
int v = 1;
|
||||||
|
return setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, &v, sizeof(v));
|
||||||
|
}
|
||||||
|
|
||||||
int qemu_madvise(void *addr, size_t len, int advice)
|
int qemu_madvise(void *addr, size_t len, int advice)
|
||||||
{
|
{
|
||||||
if (advice == QEMU_MADV_INVALID) {
|
if (advice == QEMU_MADV_INVALID) {
|
||||||
|
Loading…
Reference in New Issue
Block a user