-
luigi1112
.merges
-
xmr-pr
8414 8425 8432 8433 8435
-
luigi1112
what are we thinking about these others
-
luigi1112
7760
-
luigi1112
8426?
-
jeffro256[m]
selsta: about your question yesterday: yeah you’re correct, OpenSSL 1.1 has a lot of the features we need for forwards compatibility without deprecating the older stuff
-
willshu[m]
<spirobel[m]> "can you post a link to the repo?" <- spirobel: Here is the repo:
github.com/luigi1111/xmr.llcoins.net/blob/master/site/js/crypto.js
-
willshu[m]
It seems it does not implement the `_free` function: `function _free() { }`
-
selsta
.merge+ 8426
-
xmr-pr
Added
-
selsta
luigi1112: i would say let's include it
-
selsta
it's been a year now and it's more well tested than any other patch and it significantly improves node connectivity
-
TrasherDK[m]
<jeffro256[m]> "selsta: about your question..." <- The "without deprecating the older stuff" part gives me hope, that I can continue running nodes on all 3 networks 🙂
-
selsta
gingeropolous: master-beta contains other patches but it's included in there
-
willshu[m]
<TrasherDK[m]> "I'm curious. How does this fit..." <- Please see my link above. It seems the crypto.js does not implement the `_free` function.
-
TrasherDK[m]
Hmm. `function _free() {}`
-
BigmenPixel[m]
-
BigmenPixel[m]
-
selsta
BigmenPixel[m]: yes, it was merged accidentally
-
selsta
it will be fixed tomorrow once we update the submodule l
-
selsta
or later today
-
selsta
i added it to the merge queue because i didn't want to forget it in the release but forgot to write a do not merge for now comment
-
BigmenPixel[m]
<selsta> "BigmenPixel: yes, it was..." <- Okay, thank you.
-
selsta
the patch is correct but requires us to update the monero submodule to v0.18
-
r4v3r23[m]
now that 7760 has been decided can we tag/branch today?
-
selsta
yds
-
selsta
yes*
-
selsta
once luigi wakes up and has time
-
selsta
nothing left to decide at this point
-
selsta
ledger users will have to continue using the old version due to their useless version lock, so that's something we have to warn about
-
willshu[m]
<selsta> "once luigi wakes up and has time" <- Is luigi the author of
github.com/luigi1111/xmr.llcoins.net/blob/master/site/js/crypto.js?
-
selsta
he maintains the site but no idea if he wrote he code
-
selsta
the
-
willshu[m]
luigi1111: luigi1112 Can you take a look at the
github.com/luigi1111/xmr.llcoins.net/blob/master/site/js/crypto.js? It seems it does not implement the _free function: `function _free() { }`, which causes a bug:... (full message at
libera.ems.host/_matrix/media/r0/do…31f1bb59786749044f1a598df2bf17fc5c9)
-
r4v3r23[m]
<selsta> "nothing left to decide at this..." <- whats the status of the rest of anon/ooo
-
r4v3r23[m]
* of anon/ooo's ccs work?
-
selsta
what status? there is a second rewrite patch that's not reviewed yet, but i have it in the master-beta branch as it works well
-
r4v3r23[m]
was all the work completed/PRd? or were 7760/7999 the final bits?
-
sech1
.merges
-
xmr-pr
8414 8425 8426 8435
-
rbrunner
"was all the work completed/PRd?" Well, how would we know?
-
sech1
I guess these 4 need to be merged, then branch and tag?
-
selsta
there was way more than 3 months of work done
-
selsta
sech1: yes
-
sech1
as soon as luigi wakes up
-
selsta
I have a Mac VPS now you can SSH into to debug the RandomX issue. Though at this point it's unclear if it's an OS bug or not.
-
selsta
still trying to get everything setup.
-
r4v3r23[m]
selsta: i see only 1st milestone was completed so wondering how much work is left on the p2p layer and if it will even happen given the recent issues dealing with ooo
-
sech1
I'm not sure what to debug on Mac there, it's clearly a CPU cache invalidation not working
-
selsta
any way to confirm that? wouldn't this also cause issues with other programs? so far everything works fine apart from randomx / monero
-
selsta
i assume something like a browser would also show issues
-
selsta
r4v3r23[m]: there is still a lot of daemon code left that needs work
-
sech1
RandomX tests sometimes passing and sometimes not passing is a clear indicator
-
selsta
Always call sys_icache_invalidate(_:_:) before you execute the machine instructions on a recently updated memory page. On Apple silicon, the instruction caches aren’t coherent with data caches, and unexpected results may occur if you execute instructions without invalidating the caches. It’s also safe to call the sys_icache_invalidate(_:_:) function on Intel-based Mac computers, where the function does nothing.
-
selsta
I assume we do that already? Otherwise it wouldn't have only showed up after the OS update.
-
selsta
I'm just surprised that I find nothing about this on Google and this sounds like a large issue.
-
tevador
probably because RandomX is the only program that overwrites code pages rapidly
-
selsta
There is a second issue that wallet sync crashes after a while, but I assume that wouldn't be related to cache invalidation?
-
tevador
I don't think there is any JIT code in wallet sync code
-
selsta
yep
-
selsta
trying running monero tests now with MONERO_RANDOMX_UMASK=8, let's see
-
sech1
"sys_icache_invalidate" xmrig calls it, and __builtin___clear_cache should also translate to it
-
hyc
right, if that wasn't getting called it would already be failing on older MacOS
-
hyc
does anyone know of any websites that make heavy use of WASM? hard to imagine they hadn't tested their browser against that, but you never know
-
hyc
the other possibility is they've introduced some other syscall that must be used in advance to prepare for JIT use
-
luigi1111
willshu[m]: yeah I didn't write that part, patches welcome
-
selsta
-
selsta
nothing here
-
selsta
I noticed we don't add MAP_JIT to all mmap calls but that also didn't help
-
hyc
yeah, the other mmap calls are only used for data, not to hold instructions
-
hyc
ok, so the apple docs haven't changed at all
-
selsta
hyc: so interestingly starting the intel version with rosetta works fine
-
selsta
both monero wallet sync and xmrig benchmark
-
selsta
ok, false alarm. monero wallet sync still crashes, but randomx works fine
-
hyc
I wonder if freeBSD behaves the same way. macos and tcp/ip support seems really flaky
-
selsta
hyc: now this makes it even weirder, the xmrig arm binary also works fine with jit
-
hyc
hm, then that ought to mean we can find something xmrig did differently
-
selsta
but i tried xmrig self compiled and it crashed
-
hyc
but afaics the only thing was the explicit sys_icache_invalidate
-
hyc
oh
-
hyc
then a compiler flag is missing
-
hyc
just like what sech1 pointed out
SChernykh/p2pool #189
-
hyc
but for some other rev, not cortex-a53
-
selsta
but wouldn't that compiler flag not also be missing on their release bins? they use the same cmake file
-
hyc
hmmm
-
hyc
if same flags, then different compiler version?
-
selsta
it's a beta version of xcode so could be compiler bug
-
selsta
can that cause a different hash on every run?
-
selsta
still can't imagine how this work
-
hyc
compiler bugs can break anything, who knows
-
selsta
so for our release binaries it shouldn't matter since we use an older sdk
-
hyc
can you try building xmrig with the old sdk?
-
hyc
or randomx
-
hyc
just to run its tests
-
selsta
yes
-
selsta
all pass, at least with intel version of rosetta
-
selsta
apart from [90] Cache initialization: AVX2 ... SKIPPED but that's expected as rosetta doesn't support AVX2
-
selsta
i can try compiling clang myself and see if i can reproduce the issue
-
selsta
arm version of randomx-tests also pass so definitely compiler error
-
hyc
ok, that's good to know
-
hyc
hmmm. can you try just compiling to asm source and comparing the output of both compiler versions?
-
selsta
for which file?
-
hyc
good question. I have no idea where a compiler bug could cause this exact problem
-
hyc
I guess jit_compiler_a64.cpp to start
-
selsta
trying to compile clang13 first, which i know doesn't have this issue
-
selsta
clang master did crash
-
hyc
which version is apple using in macos 13?
-
selsta
clang14
-
hyc
might be worth opening a bug report on that even tho we haven't nailed it down. maybe someone else has already hit similar
-
selsta
if it doesn't show up with clang13 i can bisect the issue
-
hyc
cool
-
selsta
also crashes with clang13 hmmmmmm
-
selsta
doesn't make sense
-
sech1
maybe it's random, try to run the version that passed a few more times
-
selsta
i even managed to do randomx-benchmark for 1M hashes
-
sech1
and it was green?
-
selsta
yes
-
sech1
then it definitely works
-
selsta
i meant xmrig benchmark
-
hyc
actual crash, or just wrong result?
-
selsta
wrong result
-
hyc
so same binary worked once, failed once?
-
selsta
it does pass the sdk with -isysroot
paste.debian.net/hidden/5f2d6d5d
-
selsta
no, self compiled always fails, compiled on macOS 12 seems to work
-
hyc
compiled with clang13 on macos12? then that would imply some broken header file in SDK
-
selsta
I should be able to download an older SDK
-
selsta
lol specifying the old SDK solves it
-
hyc
macos12 sdk works?
-
selsta
-
hyc
ah
-
selsta
12 works too, 13 fails
-
hyc
so, no compiler bug, just an apple bug
-
hyc
might try comparing nm output between the two binaries, see if all library calls are the same
-
selsta
U ___clear_cache
-
selsta
is missing on the broken binary
-
selsta
oh wait but it does have _sys_icache_invalidate instead hmm
-
selsta
wait, have to undo my changes to the repo
-
selsta
nm output looks identical, apart from different addresses sometimes
-
selsta
might be best to ignore this for now and see if it's fixed in the next beta
-
hyc
well, if you can send feedback on the beta, might be good to draw attention to it
-
hyc
if nm output is basically identical, can't imagine what actually broke. would have to be a #define or a template or somesuch
-
selsta
I'll still try to find the exact SDK that first introduced the issue
-
selsta
.merges
-
xmr-pr
8414 8425 8426 8435
-
selsta
luigi1111: i think we can branch and tag
-
luigi1112
k
-
luigi1112
just these 4?
-
r4v3r23[m]
LFG
-
hyc
I wonder if the gitian cache really needs to differentiate releases
-
hyc
it's rebuilding all dependencies now, for monero-linux-0.18 instead of using what was built for monero-linux-0.17
-
hyc
seems unnecessary
-
hyc
* depends cache
-
sech1
Hmm, all merged? If I build right now from latest master, will the binaries be exactly the same as after branch and tag (assuming no more commits to the branch)?
-
hyc
I think they should be, not sure
-
hyc
I'm building master now anyway
-
hyc
branch should have same commit hash so would expect to be identical
-
sech1
Commitd IDs should be the same
-
sech1
yeah
-
selsta
but the version string won't be identical
-
selsta
so the hashes also won't match
-
hyc
oh, right
-
hyc
master vs v0.18-release
-
sech1
hmm, then I'll tag v0.18 in my cloned repo and build :D
-
selsta
using the xcode 14 SDK on an older macOS version doesn't seem to cause any JIT related issues, so it's seem to be a combination of OS and SDK bug
-
hyc
that's bizarre
-
selsta
writing a bug report now but I'm doubtful they will look at it
-
hyc
in randomx source, comment out the __isOSVersionAtleast() function
-
hyc
since you're building natively, it will use the platform SDK's copy instead
-
hyc
the __builtin_available() check got a lot more complicated on newer SDKs. which is kind of the opposite of what you'd want, but so it goes
-
selsta
same with it commented out
-
hyc
ok. so it's definitely them and not us ;)
-
luigi1112
branching?
-
selsta
yesy
-
sech1
what was the MacOS SDK url for gitian builds?
-
selsta
not necessary anymore
-
sech1
nice
-
sech1
I'm already building from my cloned repo with the tag :D
-
sech1
not sure it will be the same binaries
-
luigi1112
branch is up
-
luigi1112
can tag now or soon
-
sech1
ah, my build will have version string v0.18.0.0-master so no, not the same
-
sech1
waiting for the real tag then
-
selsta
when you checkout a tag it only writes the tag, not the branch
-
selsta
so should be fine
-
sech1
ok
-
selsta
luigi1112: let's wait for tests to finish
-
luigi1112
:thumbs_up:
-
hyc
my current build on master
paste.debian.net/1247318
-
hyc
I'll stop this and switch to the branch
-
selsta
without tag it will still be the wrong hash
-
selsta
if you create the tag yourself it should be good
-
hyc
good point
-
sech1
2022-07-15 17:24:24.996 I Monero 'Fluorine Fermi' (v0.18.0.0-release)
-
sech1
running on my server now
-
sech1
this is from my repo with tag
-
sech1
still building other binaries
-
hyc
ok restarted build with tag
-
sech1
selsta luigi1112 tests finished
-
selsta
ok let's tag
-
sech1
I'm already finishing the build, will publish hashes soon. But those are preliminary, I'll start a new build with the official tag later
-
hyc
this is what I have so far
paste.debian.net/1247325
-
hyc
Mac still building. using my own tag
-
sech1
you have wrong file names
-
sech1
monero-aarch64-linux-gnu-b6a029f22.tar.bz2 should be monero-aarch64-linux-gnu-v0.18.0.0.tar.bz2
-
sech1
and hashes don't match what I have so far
-
hyc
doh
-
hyc
ok then I'll start over
-
sech1
I tagged in my forked repo and building with the tag from the same commit ID, so my hashes should in theory be correct
-
sech1
-
hyc
ah, I needed to create an annotated tag, but I only created a plain tag
-
sech1
-
sech1
waiting for the official tag now
-
-
hyc
ok I fixed my tag and now my hashes match yours sech1
-
selsta
are you available luigi1111 to do the tag?
-
selsta
also why do 3 luigis exist suddenly
-
luigi1112
what's the name of this thing
-
sech1
v0.18.0.0 I think
-
selsta
Fluorine Fermi
-
selsta
wait, let my copy paste it
-
luigi1112
I already pushed
-
selsta
Fluorine Fermi
-
luigi1112
feel free to correct and we can do a classic force push
-
luigi1112
oh indded
-
selsta
yes you have a typo
-
luigi1112
sorry what
-
selsta
what would we do without force push
-
rbrunner
Typo where?
-
sech1
I already started a build
-
hyc
I started a new build too, but since the tag name hasn't changed, should just get the same result again
-
hyc
yeah, my linux builds just finished, same hashes as before
-
sech1
I just realized I deleted all build folders to make a new build so I'll need to wait until the build is finished to get my gitian.sigs :D
-
sech1
yep, getting the same hashes too
-
dartian[m]
when is the ring size increase to 16?
-
selsta
in about 1 month
-
dartian[m]
-
dartian[m]
<selsta> "in about 1 month" <- thank you. I was trying to find information but only found an article stating that it was planned for tomorrow
-
selsta
we pushed back the date
-
dartian[m]
I understand. thank you. I was even looking in the code and see ring size is 16 in some files
-
dartian[m]
-
dartian[m]
-
dartian[m]
-
sech1
build finished, hashes were the same:
paste.debian.net/hidden/2c2ada14
-
sech1
-
selsta
it seems that libboost_atomic-mt is a dependency of libboost_filesystem-mt. does that mean monero should also link against libboost_atomic-mt?