aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mirai/invocations/os/diskinfo.zig5
-rw-r--r--resources/system/akiba/mirai.version2
2 files changed, 6 insertions, 1 deletions
diff --git a/mirai/invocations/os/diskinfo.zig b/mirai/invocations/os/diskinfo.zig
index 62c73dc..7844e9b 100644
--- a/mirai/invocations/os/diskinfo.zig
+++ b/mirai/invocations/os/diskinfo.zig
@@ -2,6 +2,7 @@
const afs = @import("../../fs/afs/afs.zig");
const ahci = @import("../../drivers/ahci/ahci.zig");
+const cpu = @import("../../asm/cpu.zig");
const handler = @import("../handler.zig");
const result = @import("../../utils/types/result.zig");
@@ -16,7 +17,11 @@ pub fn invoke(ctx: *handler.InvocationContext) void {
const used_ptr: *u64 = @ptrFromInt(ctx.rsi);
if (fs_instance) |fs| {
+ // Disable interrupts during disk read to prevent race conditions
+ cpu.disable_interrupts();
const info = fs.get_disk_info();
+ cpu.enable_interrupts();
+
total_ptr.* = info.total_bytes;
used_ptr.* = info.used_bytes;
result.set_ok(ctx);
diff --git a/resources/system/akiba/mirai.version b/resources/system/akiba/mirai.version
index 6c6aa7c..60453e6 100644
--- a/resources/system/akiba/mirai.version
+++ b/resources/system/akiba/mirai.version
@@ -1 +1 @@
-0.1.0 \ No newline at end of file
+v1.0.0 \ No newline at end of file