Skip to content

Commit 3682829

Browse files
committed
meta: Update karm.
1 parent 6868c0a commit 3682829

File tree

8 files changed

+40
-8
lines changed

8 files changed

+40
-8
lines changed

src/impls/impl-efi/crypto.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
module Karm.Crypto;
2+
3+
import Karm.Core;
4+
5+
namespace Karm::Crypto::_Embed {
6+
7+
Res<> entropy(MutBytes) {
8+
notImplemented();
9+
}
10+
11+
} // namespace Karm::Crypto::_Embed

src/impls/impl-efi/manifest.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
"karm-sys-impl",
1919
"karm-sys-async-impl",
2020
"karm-sys-sandbox-impl",
21+
"karm-crypto-impl",
2122
"karm-ui-impl",
2223
"karm-app-impl"
2324
]

src/impls/impl-efi/sys.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ static SystemTime fromEfi(Efi::Time time) {
2222
return dt.toInstant();
2323
}
2424

25-
struct ConOut : public Fd {
25+
struct ConOut : Fd {
2626
Efi::SimpleTextOutputProtocol* _proto;
2727

2828
ConOut(Efi::SimpleTextOutputProtocol* proto) : _proto(proto) {}
@@ -85,7 +85,7 @@ struct ConOut : public Fd {
8585
}
8686
};
8787

88-
struct FileProto : public Fd {
88+
struct FileProto : Fd {
8989
Efi::FileProtocol* _proto = nullptr;
9090

9191
FileProto(Efi::FileProtocol* proto) : _proto(proto) {}
@@ -357,6 +357,10 @@ Res<Stat> stat(Ref::Url const&) {
357357
return Error::notImplemented();
358358
}
359359

360+
usize pageSize() {
361+
return Hal::PAGE_SIZE;
362+
}
363+
360364
// MARK: Time ------------------------------------------------------------------
361365

362366
SystemTime now() {

src/impls/impl-skift/crypto.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
module Karm.Crypto;
2+
3+
import Karm.Core;
4+
5+
namespace Karm::Crypto::_Embed {
6+
7+
Res<> entropy(MutBytes) {
8+
notImplemented();
9+
}
10+
11+
} // namespace Karm::Crypto::_Embed

src/impls/impl-skift/manifest.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
"karm-app-impl",
1919
"karm-sys-impl",
2020
"karm-sys-async-impl",
21-
"karm-sys-sandbox-impl"
21+
"karm-sys-sandbox-impl",
22+
"karm-crypto-impl"
2223
]
2324
}

src/impls/impl-skift/sys.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,10 @@ Res<> memFlush(void*, usize) {
149149
return Error::notImplemented();
150150
}
151151

152+
usize pageSize() {
153+
return Hal::PAGE_SIZE;
154+
}
155+
152156
// MARK: System Informations ---------------------------------------------------
153157

154158
Res<> populate(SysInfo&) {

src/kernel/opstart/loader.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ void enterKernel(usize entry, usize payload, usize stack, usize vmm);
1515

1616
Res<> loadEntry(Entry const& entry) {
1717
logInfo("opstart: preparing payload...");
18-
auto payloadMem = try$(Sys::mmap().read().size(kib(16)).mapMut());
18+
auto payloadMem = try$(Sys::mutMmap(NONE, {.size = kib(16)}));
1919
logInfo("opstart: payload at vaddr: {p} paddr: {p}", payloadMem.vaddr(), payloadMem.paddr());
2020
Handover::Builder payload{payloadMem.mutBytes()};
2121

@@ -24,7 +24,7 @@ Res<> loadEntry(Entry const& entry) {
2424

2525
logInfo("opstart: loading kernel file...");
2626
auto kernelFile = try$(Sys::File::open(entry.kernel.url));
27-
auto kernelMem = try$(Sys::mmap().map(kernelFile));
27+
auto kernelMem = try$(Sys::mmap(kernelFile));
2828
Elf::Image image{kernelMem.bytes()};
2929
payload.add(Handover::FILE, 0, kernelMem.prange());
3030
logInfo("opstart: kernel at vaddr: {p} paddr: {p}", kernelMem.vaddr(), kernelMem.paddr());
@@ -35,7 +35,7 @@ Res<> loadEntry(Entry const& entry) {
3535
}
3636

3737
logInfo("opstart: setting up stack...");
38-
auto stackMap = try$(Sys::mmap().stack().size(Hal::PAGE_SIZE * 16).mapMut());
38+
auto stackMap = try$(Sys::mutMmap(NONE, {.options = Sys::MmapOption::STACK, .size = Hal::PAGE_SIZE * 16}));
3939
payload.add(Handover::STACK, 0, stackMap.prange());
4040
logInfo("opstart: stack at vaddr: {p} paddr: {p}", stackMap.vaddr(), stackMap.paddr());
4141

@@ -61,7 +61,7 @@ Res<> loadEntry(Entry const& entry) {
6161
logInfo("opstart: loading blob: {}", blob.url);
6262

6363
auto blobFile = try$(Sys::File::open(blob.url));
64-
auto blobMem = try$(Sys::mmap().map(blobFile));
64+
auto blobMem = try$(Sys::mmap(blobFile));
6565
auto blobRange = blobMem.prange();
6666
auto propStr = try$(Json::unparse(blob.props));
6767

src/specs/handover/cli/main.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Async::Task<> entryPointAsync(Sys::Context& ctx) {
1111

1212
auto url = Ref::parseUrlOrPath(args[0], co_try$(Sys::pwd()));
1313
auto kernelFile = co_try$(Sys::File::open(url));
14-
auto kernelMem = co_try$(Sys::mmap().read().map(kernelFile));
14+
auto kernelMem = co_try$(Sys::mmap(kernelFile, {.options = Sys::MmapOption::READ}));
1515
Elf::Image kernelElf{kernelMem.bytes()};
1616

1717
if (not kernelElf.valid())

0 commit comments

Comments
 (0)