Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit abd8ce8f authored by Keith Mok's avatar Keith Mok Committed by Automerger Merge Worker
Browse files

Merge "RPC binder: set TCP_NDELAY" into main am: 2b5da9e6

parents a6f35691 2b5da9e6
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
#define LOG_TAG "RpcServer"

#include <inttypes.h>
#include <netinet/tcp.h>
#include <poll.h>
#include <sys/socket.h>
#include <sys/un.h>
@@ -571,6 +572,17 @@ status_t RpcServer::setupSocketServer(const RpcSocketAddress& addr) {
        return -savedErrno;
    }

    if (addr.addr()->sa_family == AF_INET || addr.addr()->sa_family == AF_INET6) {
        int noDelay = 1;
        int result =
                setsockopt(socket_fd.get(), IPPROTO_TCP, TCP_NODELAY, &noDelay, sizeof(noDelay));
        if (result < 0) {
            int savedErrno = errno;
            ALOGE("Could not set TCP_NODELAY on  %s", strerror(savedErrno));
            return -savedErrno;
        }
    }

    {
        RpcMutexLockGuard _l(mLock);
        if (mServerSocketModifier != nullptr) {