diff options
Diffstat (limited to 'lib/std/os/linux/io_uring.zig')
| -rw-r--r-- | lib/std/os/linux/io_uring.zig | 39 |
1 files changed, 20 insertions, 19 deletions
diff --git a/lib/std/os/linux/io_uring.zig b/lib/std/os/linux/io_uring.zig index 3b282422ae..2219d95832 100644 --- a/lib/std/os/linux/io_uring.zig +++ b/lib/std/os/linux/io_uring.zig @@ -137,7 +137,7 @@ pub const IO_Uring = struct { // We must therefore use wrapping addition and subtraction to avoid a runtime crash. const next = self.sq.sqe_tail +% 1; if (next -% head > self.sq.sqes.len) return error.SubmissionQueueFull; - var sqe = &self.sq.sqes[self.sq.sqe_tail & self.sq.mask]; + const sqe = &self.sq.sqes[self.sq.sqe_tail & self.sq.mask]; self.sq.sqe_tail = next; return sqe; } @@ -279,7 +279,7 @@ pub const IO_Uring = struct { const ready = self.cq_ready(); const count = @min(cqes.len, ready); var head = self.cq.head.*; - var tail = head +% count; + const tail = head +% count; // TODO Optimize this by using 1 or 2 memcpy's (if the tail wraps) rather than a loop. var i: usize = 0; // Do not use "less-than" operator since head and tail may wrap: @@ -1916,7 +1916,7 @@ test "splice/read" { var buffer_read = [_]u8{98} ** 20; _ = try file_src.write(&buffer_write); - var fds = try os.pipe(); + const fds = try os.pipe(); const pipe_offset: u64 = std.math.maxInt(u64); const sqe_splice_to_pipe = try ring.splice(0x11111111, fd_src, 0, fds[1], pipe_offset, buffer_write.len); @@ -2045,6 +2045,7 @@ test "openat" { // Workaround for LLVM bug: https://github.com/ziglang/zig/issues/12014 const path_addr = if (builtin.zig_backend == .stage2_llvm) p: { var workaround = path; + _ = &workaround; break :p @intFromPtr(workaround); } else @intFromPtr(path); @@ -2199,7 +2200,7 @@ test "sendmsg/recvmsg" { var iovecs_recv = [_]os.iovec{ os.iovec{ .iov_base = &buffer_recv, .iov_len = buffer_recv.len }, }; - var addr = [_]u8{0} ** 4; + const addr = [_]u8{0} ** 4; var address_recv = net.Address.initIp4(addr, 0); var msg_recv: os.msghdr = os.msghdr{ .name = &address_recv.any, @@ -2676,7 +2677,7 @@ test "shutdown" { var slen: os.socklen_t = address.getOsSockLen(); try os.getsockname(server, &address.any, &slen); - var shutdown_sqe = try ring.shutdown(0x445445445, server, os.linux.SHUT.RD); + const shutdown_sqe = try ring.shutdown(0x445445445, server, os.linux.SHUT.RD); try testing.expectEqual(linux.IORING_OP.SHUTDOWN, shutdown_sqe.opcode); try testing.expectEqual(@as(i32, server), shutdown_sqe.fd); @@ -2702,7 +2703,7 @@ test "shutdown" { const server = try os.socket(address.any.family, os.SOCK.STREAM | os.SOCK.CLOEXEC, 0); defer os.close(server); - var shutdown_sqe = ring.shutdown(0x445445445, server, os.linux.SHUT.RD) catch |err| switch (err) { + const shutdown_sqe = ring.shutdown(0x445445445, server, os.linux.SHUT.RD) catch |err| switch (err) { else => |errno| std.debug.panic("unhandled errno: {}", .{errno}), }; try testing.expectEqual(linux.IORING_OP.SHUTDOWN, shutdown_sqe.opcode); @@ -2740,7 +2741,7 @@ test "renameat" { // Submit renameat - var sqe = try ring.renameat( + const sqe = try ring.renameat( 0x12121212, tmp.dir.fd, old_path, @@ -2807,7 +2808,7 @@ test "unlinkat" { // Submit unlinkat - var sqe = try ring.unlinkat( + const sqe = try ring.unlinkat( 0x12121212, tmp.dir.fd, path, @@ -2854,7 +2855,7 @@ test "mkdirat" { // Submit mkdirat - var sqe = try ring.mkdirat( + const sqe = try ring.mkdirat( 0x12121212, tmp.dir.fd, path, @@ -2902,7 +2903,7 @@ test "symlinkat" { // Submit symlinkat - var sqe = try ring.symlinkat( + const sqe = try ring.symlinkat( 0x12121212, path, tmp.dir.fd, @@ -2953,7 +2954,7 @@ test "linkat" { // Submit linkat - var sqe = try ring.linkat( + const sqe = try ring.linkat( 0x12121212, tmp.dir.fd, first_path, @@ -3032,7 +3033,7 @@ test "provide_buffers: read" { var i: usize = 0; while (i < buffers.len) : (i += 1) { - var sqe = try ring.read(0xdededede, fd, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); + const sqe = try ring.read(0xdededede, fd, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); try testing.expectEqual(linux.IORING_OP.READ, sqe.opcode); try testing.expectEqual(@as(i32, fd), sqe.fd); try testing.expectEqual(@as(u64, 0), sqe.addr); @@ -3058,7 +3059,7 @@ test "provide_buffers: read" { // This read should fail { - var sqe = try ring.read(0xdfdfdfdf, fd, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); + const sqe = try ring.read(0xdfdfdfdf, fd, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); try testing.expectEqual(linux.IORING_OP.READ, sqe.opcode); try testing.expectEqual(@as(i32, fd), sqe.fd); try testing.expectEqual(@as(u64, 0), sqe.addr); @@ -3097,7 +3098,7 @@ test "provide_buffers: read" { // Final read which should work { - var sqe = try ring.read(0xdfdfdfdf, fd, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); + const sqe = try ring.read(0xdfdfdfdf, fd, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); try testing.expectEqual(linux.IORING_OP.READ, sqe.opcode); try testing.expectEqual(@as(i32, fd), sqe.fd); try testing.expectEqual(@as(u64, 0), sqe.addr); @@ -3158,7 +3159,7 @@ test "remove_buffers" { // Remove 3 buffers { - var sqe = try ring.remove_buffers(0xbababababa, 3, group_id); + const sqe = try ring.remove_buffers(0xbababababa, 3, group_id); try testing.expectEqual(linux.IORING_OP.REMOVE_BUFFERS, sqe.opcode); try testing.expectEqual(@as(i32, 3), sqe.fd); try testing.expectEqual(@as(u64, 0), sqe.addr); @@ -3270,7 +3271,7 @@ test "provide_buffers: accept/connect/send/recv" { var i: usize = 0; while (i < buffers.len) : (i += 1) { - var sqe = try ring.recv(0xdededede, socket_test_harness.client, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); + const sqe = try ring.recv(0xdededede, socket_test_harness.client, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); try testing.expectEqual(linux.IORING_OP.RECV, sqe.opcode); try testing.expectEqual(@as(i32, socket_test_harness.client), sqe.fd); try testing.expectEqual(@as(u64, 0), sqe.addr); @@ -3299,7 +3300,7 @@ test "provide_buffers: accept/connect/send/recv" { // This recv should fail { - var sqe = try ring.recv(0xdfdfdfdf, socket_test_harness.client, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); + const sqe = try ring.recv(0xdfdfdfdf, socket_test_harness.client, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); try testing.expectEqual(linux.IORING_OP.RECV, sqe.opcode); try testing.expectEqual(@as(i32, socket_test_harness.client), sqe.fd); try testing.expectEqual(@as(u64, 0), sqe.addr); @@ -3349,7 +3350,7 @@ test "provide_buffers: accept/connect/send/recv" { @memset(mem.sliceAsBytes(&buffers), 1); { - var sqe = try ring.recv(0xdfdfdfdf, socket_test_harness.client, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); + const sqe = try ring.recv(0xdfdfdfdf, socket_test_harness.client, .{ .buffer_selection = .{ .group_id = group_id, .len = buffer_len } }, 0); try testing.expectEqual(linux.IORING_OP.RECV, sqe.opcode); try testing.expectEqual(@as(i32, socket_test_harness.client), sqe.fd); try testing.expectEqual(@as(u64, 0), sqe.addr); @@ -3477,7 +3478,7 @@ test "accept multishot" { var nr: usize = 4; // number of clients to connect while (nr > 0) : (nr -= 1) { // connect client - var client = try os.socket(address.any.family, os.SOCK.STREAM | os.SOCK.CLOEXEC, 0); + const client = try os.socket(address.any.family, os.SOCK.STREAM | os.SOCK.CLOEXEC, 0); errdefer os.closeSocket(client); try os.connect(client, &address.any, address.getOsSockLen()); |
