IRC channel logs

2024-01-26.log

back to list of logs

<oriansj>(sorry mean to express less likely for the disk read/write block to not be in memory than a 2 page buffer) but yes that block miss would only occur a couple times max per stage0 step.
<muurkha>oriansj: agreed, though at some point you have to set ebx to the buffer you pick, and with three or mour buffers I think you might as well write a loop (mov ecx, nbufs; search: cmp eax, [bufbase + ecx]; je found; loop search; mov ecx, [nextbuf]; inc ecx; and ecx, nbufs-1; mov [nextbuf], ecx; found:) 8 instructions instead of 10 and accommodates any power-of-2 number of buffers, though with enough
<muurkha>of them it gets slower to check the buffer cache than just loading the page
<lrvick>No luck with --disable-separate-code. The thing that flips around depending on what host system I am building on is always libsframe. Found this recent fix which is suspect: https://github.com/distrust-foundation/EnclaveOS/blob/master/src/system/src/lib.rs
<lrvick>it isn't obvious to me how this could cause a determinisim bug, but it is also the only related change in a couple years as far as I can tell
<lrvick>I'll apply the patch and see wht happens
<oriansj>muurkha: fair point but one only needs 2 blocks per file buffer
<oriansj>only if one is providing one shared buffer for multiple processes talking to multiple files would one need something much more carefully designed.