writev
CATCH_EINTR(n = writev(fd, (struct iovec *) hdr, iovcount));
SYSCALL_DEFINE3(writev, unsigned long, fd, const struct iovec __user *, vec,
sent = conn->transport->ops->writev(conn->transport, work->iov,
int (*writev)(struct ksmbd_transport *t, struct kvec *iovs, int niov,
.writev = smb_direct_writev,
.writev = ksmbd_tcp_writev,
writev(data_fd, (const struct iovec *)io, 2);
ret = writev(fd, iov, 3);
ret = writev(fd, iov, 2);
syscall_len = writev(fd, iov, 1);
return writev(fd, iov, ARRAY_SIZE(iov));
ret = writev(fd, iov, sizeof(iov) / sizeof(iov[0]));
CASE_TEST(writev_badf); EXPECT_SYSER(1, writev(-1, &iov_one, 1), -1, EBADF); break;
CASE_TEST(writev_zero); EXPECT_SYSZR(1, writev(1, NULL, 0)); break;
if (writev(fd, iov, 3) != sizeof(struct elf64_hdr) + sizeof(struct elf64_phdr) + len) {
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
ASSERT_NE(-1, writev(self->data_fd, (const struct iovec *)io, 3));
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
ASSERT_NE(-1, writev(self->data_fd, (const struct iovec *)io, 1));
ASSERT_NE(-1, writev(self->data_fd, (const struct iovec *)io, 2));
ASSERT_NE(-1, writev(self->data_fd, (const struct iovec *)io, 2));
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 1));
ASSERT_NE(-1, writev(self->data_fd, (const struct iovec *)io, 3));
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));