Skip to content
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

Unable to trace in Enclave #12

Open
Abhiroop opened this issue Oct 22, 2024 · 2 comments
Open

Unable to trace in Enclave #12

Abhiroop opened this issue Oct 22, 2024 · 2 comments
Labels
bug Something isn't working

Comments

@Abhiroop
Copy link
Owner

Abhiroop commented Oct 22, 2024

The current dpba branch is unable to trace the instrumented operations from the enclave. Surprisingly, the last operation gets traced (killing the enclave seems to flush the buffer but at that point, the buffer only has one operation left). There have been historical problems with flushing buffers (gramineproject/gramine#788). There could be problems with laziness as well.

@Abhiroop Abhiroop added the bug Something isn't working label Oct 22, 2024
@Abhiroop
Copy link
Owner Author

Temporary patch ee1071d

This seems to be a laziness bug and I use seq combined with reading the entire file and then writing the file content appended with my log back. This works but is highly inefficient, especially for larger log files. Reading the whole file will blow up the enclave space.

I have some suspicions about where this behaviour might arise—the use of existential quantification to collect all logging arguments. (However, I did a preliminary check on that but couldn't pinpoint the issue). Keeping this issue open for future investigation.

@Abhiroop
Copy link
Owner Author

Also, note the difference in base versions. Enclave runs base-4.14.0. The newer base (4.15.0 onwards) seems to expose a strict variant of readFile called readFile' (probably what I ended up implementing).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant