Revert "Add bionic vm_sockets header" am: 30b6a7126c am: b8844022c7 am: a3cd906664

Original change: https://android-review.googlesource.com/c/platform/external/grpc-grpc/+/2861408

Change-Id: Ibaa954d718f028f3e56c82b488da11199298cb47
Signed-off-by: Automerger Merge Worker <[email protected]>
diff --git a/src/core/lib/address_utils/parse_address.cc b/src/core/lib/address_utils/parse_address.cc
index cb44d7f..deb2b07 100644
--- a/src/core/lib/address_utils/parse_address.cc
+++ b/src/core/lib/address_utils/parse_address.cc
@@ -22,6 +22,10 @@
 
 #include "src/core/lib/iomgr/port.h"  // IWYU pragma: keep
 
+#ifdef GRPC_HAVE_VSOCK
+#include <linux/vm_sockets.h>
+#endif
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/src/core/lib/address_utils/sockaddr_utils.cc b/src/core/lib/address_utils/sockaddr_utils.cc
index 39c906e..74bc7d2 100644
--- a/src/core/lib/address_utils/sockaddr_utils.cc
+++ b/src/core/lib/address_utils/sockaddr_utils.cc
@@ -22,6 +22,9 @@
 
 #include <errno.h>
 #include <inttypes.h>
+#ifdef GRPC_HAVE_VSOCK
+#include <linux/vm_sockets.h>
+#endif
 #include <string.h>
 
 #include <initializer_list>
diff --git a/src/core/lib/event_engine/tcp_socket_utils.cc b/src/core/lib/event_engine/tcp_socket_utils.cc
index d088c5e8..9f2b1d0 100644
--- a/src/core/lib/event_engine/tcp_socket_utils.cc
+++ b/src/core/lib/event_engine/tcp_socket_utils.cc
@@ -36,6 +36,10 @@
 #include <sys/un.h>
 #endif
 
+#ifdef GRPC_HAVE_VSOCK
+#include <linux/vm_sockets.h>
+#endif
+
 #include <errno.h>
 #include <inttypes.h>
 #include <stdlib.h>
diff --git a/src/core/lib/iomgr/sockaddr_posix.h b/src/core/lib/iomgr/sockaddr_posix.h
index 8f50d02..4ed18e6 100644
--- a/src/core/lib/iomgr/sockaddr_posix.h
+++ b/src/core/lib/iomgr/sockaddr_posix.h
@@ -53,12 +53,10 @@
 #define GRPC_AF_INET AF_INET
 #define GRPC_AF_INET6 AF_INET6
 
-#ifdef GRPC_HAVE_VSOCK
-// HACK(chenhaosjtuacm): when building host services for run_cvd, the glibc version of Android
-// toolchain is too low, using the header copied from bionic libc instead
-#include "src/core/lib/iomgr/vm_sockets.h"
+#ifdef GRPC_HAVE_LINUX_VSOCK
+#include <linux/vm_sockets.h>  // Needs to come after sys/socket.h
 #define GRPC_AF_VSOCK AF_VSOCK
-#endif  // GRPC_HAVE_VSOCK
+#endif /* GRPC_HAVE_LINUX_VSOCK */
 
 #define GRPC_AI_PASSIVE AI_PASSIVE
 
diff --git a/src/core/lib/iomgr/unix_sockets_posix.cc b/src/core/lib/iomgr/unix_sockets_posix.cc
index e182e6a..e101bbb 100644
--- a/src/core/lib/iomgr/unix_sockets_posix.cc
+++ b/src/core/lib/iomgr/unix_sockets_posix.cc
@@ -19,6 +19,13 @@
 
 #include "src/core/lib/iomgr/port.h"
 
+#ifdef GRPC_HAVE_LINUX_VSOCK
+
+#include <sys/socket.h>
+#include <linux/vm_sockets.h>
+
+#endif /* GRPC_HAVE_LINUX_VSOCK */
+
 #ifdef GRPC_HAVE_UNIX_SOCKET
 
 #include <string.h>
diff --git a/src/core/lib/iomgr/vm_sockets.h b/src/core/lib/iomgr/vm_sockets.h
deleted file mode 100644
index 151f676..0000000
--- a/src/core/lib/iomgr/vm_sockets.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ***   Copied and modified from bionic/libc/kernel/uapi/linux/vm_sockets.h
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _UAPI_VM_SOCKETS_H
-#define _UAPI_VM_SOCKETS_H
-#include <linux/socket.h>
-#define SO_VM_SOCKETS_BUFFER_SIZE 0
-#define SO_VM_SOCKETS_BUFFER_MIN_SIZE 1
-#define SO_VM_SOCKETS_BUFFER_MAX_SIZE 2
-#define SO_VM_SOCKETS_PEER_HOST_VM_ID 3
-#define SO_VM_SOCKETS_TRUSTED 5
-#define SO_VM_SOCKETS_CONNECT_TIMEOUT 6
-#define SO_VM_SOCKETS_NONBLOCK_TXRX 7
-#define VMADDR_CID_ANY - 1U
-#define VMADDR_PORT_ANY - 1U
-#define VMADDR_CID_HYPERVISOR 0
-#define VMADDR_CID_RESERVED 1
-#define VMADDR_CID_HOST 2
-#define VM_SOCKETS_INVALID_VERSION - 1U
-#define VM_SOCKETS_VERSION_EPOCH(_v) (((_v) & 0xFF000000) >> 24)
-#define VM_SOCKETS_VERSION_MAJOR(_v) (((_v) & 0x00FF0000) >> 16)
-#define VM_SOCKETS_VERSION_MINOR(_v) (((_v) & 0x0000FFFF))
-struct sockaddr_vm {
-  __kernel_sa_family_t svm_family;
-  unsigned short svm_reserved1;
-  unsigned int svm_port;
-  unsigned int svm_cid;
-  unsigned char svm_zero[sizeof(struct sockaddr) - sizeof(sa_family_t) - sizeof(unsigned short) - sizeof(unsigned int) - sizeof(unsigned int)];
-};
-#define IOCTL_VM_SOCKETS_GET_LOCAL_CID _IO(7, 0xb9)
-#ifndef AF_VSOCK
-#define AF_VSOCK 40
-#endif
-#endif
diff --git a/test/core/address_utils/parse_address_test.cc b/test/core/address_utils/parse_address_test.cc
index 4de4954..07b29c2 100644
--- a/test/core/address_utils/parse_address_test.cc
+++ b/test/core/address_utils/parse_address_test.cc
@@ -21,6 +21,10 @@
 #include <sys/un.h>
 #endif
 
+#ifdef GRPC_HAVE_VSOCK
+#include <linux/vm_sockets.h>
+#endif
+
 #include <string>
 
 #include "absl/status/status.h"
diff --git a/test/core/event_engine/tcp_socket_utils_test.cc b/test/core/event_engine/tcp_socket_utils_test.cc
index dca3312..d3b114d 100644
--- a/test/core/event_engine/tcp_socket_utils_test.cc
+++ b/test/core/event_engine/tcp_socket_utils_test.cc
@@ -19,6 +19,10 @@
 
 #include "src/core/lib/iomgr/port.h"  // IWYU pragma: keep
 
+#ifdef GRPC_HAVE_VSOCK
+#include <linux/vm_sockets.h>
+#endif
+
 #include <stdint.h>
 #include <stdio.h>
 #include <string.h>