27. June 2022 #687
Replies: 3 comments 4 replies
-
We can provide this free of charge at https://gpux.ai/, is it okay if the access is nonroot and /dev/sgx* passed through to a podman container? If not we can accommodate. It would be 3rd Gen Xeons (2021+) with ~32/64 cores and 256GB ECC 3200mhz DDR4.
How do you feel about |
Beta Was this translation helpful? Give feedback.
-
Thanks a lot for your offer to donate a server. On remix.run + Cloudflare - what is the cost ? We will also take a look at this option and discuss in our next community meeting. |
Beta Was this translation helpful? Give feedback.
-
> We can provide this free of charge at https://gpux.ai/, is it okay if the
> access is nonroot and /dev/sgx* passed through to a podman container?
Thanks, but we need a machine inside our CI cluster. I don't think we can
re-use a machine from the outside of this cluster (which is physically
located in North Carolina in US).
I think we can use machines elsewhere, we just need SSH and/or wireguard
access through firewall to run CI executor and query metrics. However, we'd
need baremetal (or at least VPS with access to SGX), to be free to arrange CI.
Non-root container won't work.
(Currently we use Jenkins, but we seriously think about migrating to something
else).
|
Beta Was this translation helpful? Give feedback.
-
Device testing CI pipelines
Dmitrii asked for a separate machine and a corresponding CI pipeline that has the following:
Such platform is needed to test SGX-enabled VMs that start with a dummy device for Gramine testing; see https://github.com/gramineproject/device-testing-tools. An example of an IOCTL that needs such a CI is the "flexible IOCTL" PR: #671.
Woju asked to postpone setting up such a CI machine + pipeline until August. Borys suggested to test the whole Gramine test suite in this CI pipeline, not just Gramine communication with the dummy device.
Gramine web-site
Sanitization of
/etc/
files/etc/resolv.conf
in thesgx.allowed_files
list for simplicity. Example:gramine/CI-Examples/redis/redis-server.manifest.template
Lines 130 to 142 in f7eae7e
sgx.allowed_files
is not secure. They are read by e.g. Glibc which doesn't expect them to be ill-formatted or maliciously modified./etc/
(when specified in the manifest file) and sanitize/verify them, overriding the host versions./etc/
should be sanitized like this./etc/passwd
. This file should be in thesgx.trusted_files
list.One user-friendliness issue that wasn't discussed is -- where in the manifest these files (like
/etc/resolv.conf
) should go. Do they just "appear" to the in-Gramine app? Or they need to be put in one of the lists?The issue to track this: #689
Bug in Gramine's Meson builds
Borys and Sankar hit a bug when they need to purge the Gramine repo when switching between branches or updating to the latest master. This seems to be a case of some missing dependency in our Meson build files, but the root cause is not identified. Maybe Woju and Borys will take a deeper look.
For now, the workaround is to git-clone the whole Gramine repo from scratch (e.g., have different Gramine dirs for each branch). Michal also recommended
git clean -dfx
but not sure if it helps.EDMM patch: rationale and design
Vijay discussed his approach to the Enclave Dynamic Memory Management (EDMM) feature in Gramine. See #683.
Vijay, Michal and Mona also mentioned that there is a discussion in the SGX architecture/driver community about EMODPE implementation (who takes the burden of clearing the TLB?), but nothing conclusive.
Updates on GitHub development
Update on PRs, issues and tasks for a previous week:
LibOS/shim/
directory to justLibOS/
#659, Use#pragma once
instead of handcrafted header guards #669, Lowercase "LibOS", "Pal" and "Scripts" #672, [LibOS] Rename syscalls fromshim_do_x
tolibos_syscall_x
#680, [LibOS] Change prefix fromshim_
dolibos_
#681, [LibOS] Removeshim_
prefix from syscalls trace log #682Dk
prefix toPal
#685IP_RECVERR
socket option as a no-op #678, [LibOS] Allow settingO_NONBLOCK
on not connected UNIX sockets #677, [LibOS] SupportFIONREAD
ioctl on sockets #684, [LibOS] Add support forSO_BROADCAST
socket option #686sgx.remote_attestation = "[none|epid|dcap]"
is merged.Agenda for the next meeting
Moved to #716.
Beta Was this translation helpful? Give feedback.
All reactions