-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
lib/*: Add syscall interfaces for dotnet runtime #1004
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@StefanJum Thanks for your review. |
I think we should return zero from |
Agree. I was a bit worried about the |
Changed |
I found that adding env However, I realize that the design of debugging through pipes is quite interesting. This means that we might be able to debug |
Yes, I think that would be safer than stubbing @i-Pear if this is selectable (via an env variable), could there be a way to completely disable it in the dotnet configuration step?
That would be nice indeed, it would require a proper implementation of |
Do you mean build our own dotnet framework? I think it will be easy to modify the default value in the source code, if you think this is worth. As the number of applications grows, we might find ourselves in need of developing our own package manager to effectively manage them. && update: removed |
We do have (or soon will have, I don't think there are any merged yet) dynamic apps that are build from source (this pr for example). In the meantime, we'll just state in the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks fine @i-Pear, just one more comment below.
Fixed. Besides, while porting |
It works. For backup:
|
Perfect, if it's just the |
Done, the readme is here: https://github.com/unikraft/dynamic-apps/pull/60/files Provided patched libcoreclr.so and origin libcoreclr.so.bak |
I realized that unikraft doesn't support swap memory, so [1] https://github.com/unikraft/unikraft/blob/staging/lib/ukvmem/vma_file.c#L230 |
It also seems that unikraft only supports running on a single cpu. I tried to run qemu with |
Beep boop! I ran Unikraft's
Truncated logs starting from first warning 783152c:
View complete logs | Learn more about Unikraft's coding style and contribution guidelines. |
Yes, that's being worked on, but we can go for the implementation you provided for now. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Few more comments @i-Pear, it looks fine besides those.
Signed-off-by: Tianyi Liu <i.pear@outlook.com>
Signed-off-by: Tianyi Liu <i.pear@outlook.com>
Thanks, these have been fixed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All good now, thank you @i-Pear.
Reviewed-by: Stefan Jumarea stefanjumarea02@gmail.com
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All good with me.
Reviewed-by: Radu Nichita radunichita99@gmail.com
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved-by: Razvan Deaconescu razvand@unikraft.io
Signed-off-by: Tianyi Liu <i.pear@outlook.com> Reviewed-by: Stefan Jumarea <stefanjumarea02@gmail.com> Approved-by: Razvan Deaconescu <razvand@unikraft.io> Tested-by: Unikraft CI <monkey@unikraft.io> GitHub-Closes: #1004
Prerequisite checklist
checkpatch.uk
on your commit series before opening this PR;Description of changes
Stub the following syscall interfaces for
dotnet runtime 7.0
:posix-mmap
:SYS_mlock
andSYS_msync
uksched
:SYS_sched_getaffinity
andSYS_sched_setaffinity