cfbolz changed the topic of #pypy to: #pypy PyPy, the flexible snake https://pypy.org | IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end and https://libera.irclog.whitequark.org/pypy | hacking on TLS is fun, way more fun than arguing over petty shit, turns out
arkanoid has quit [Ping timeout: 256 seconds]
hexology has quit [Quit: hex on you ...]
hexology has joined #pypy
Guest96 has joined #pypy
greedom has joined #pypy
greedom has quit [Remote host closed the connection]
greedom has joined #pypy
Guest96 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Guest96 has joined #pypy
<fijal> cfbolz, mattip: ping, want to help with libffi a bit?
<fijal> seems like new version of libffi does not have ffi_prep_closure, but has ffi_prep_closure_loc
<fijal> which makes me wonder if we want to maintain our own free list of closures, probably not, but does that mean we can't really do anything on old libffi? do we care?
<cfbolz> fijal: so they deprecated some api that we're using?
<fijal> they removed it, it seems
<fijal> You may see old code referring to ffi_prep_closure. This function is deprecated, as it cannot handle the need for separate writable and executable addresses.
<fijal> should I just port stuff to new API?
<fijal> just calling it _loc works
<fijal> (I'll have to work around the policy here, but that will take a second)
<cfbolz> fijal: hm, it feels weird if the difference is just the name and the behavior the same
<fijal> I think the idea is that you can pass different pointers
<fijal> for two different arguments
<fijal> I'm pretty sure it'll be soon evident why this is the case, do we have some PAX support somewhere? I'm sure we do
<fijal> do we care about cross-compiling on the M1 architecture? The general rule we've been applying has been "no", like python version should match the cpu version, I would think
<cfbolz> fijal: yes, agreed
<cfbolz> Ah, I see, it's not completely the same signature
<cfbolz> It takes another argument too
<fijal> not completely, but it seems to work with just the same argument passed twice
<fijal> (work)
<fijal> but I think we need to be a bit more careful
<cfbolz> ORacket did it too'
<cfbolz> Racket
<fijal> I'm fixing translator/c tests, seems like a good start
<cfbolz> Great
<fijal> annotator and rtyper pass
<fijal> plan is to fix the whole of rpython, or maybe with some exceptions then merge
<cfbolz> fijal: right, rlib is probably also a good target
<cfbolz> (jit in any case)
<fijal> yep
<fijal> I think I found the first real issue, which is PAX
<fijal> I'm not sure yet if it's real or not in this case
<mattip> is anyone using old libffi? The linux64, linux32, aarch64, win64 are all libffi3.2 or later, and I think the macos one is too
<mattip> buildbots
<mattip> maybe the s390x one, which seems broken anyway
<mattip> fijal: great that there is progress, I guess that means your hardware arrived
<arigato> fijal: I don't know the current status for libffi allocating closures, but I *think* the major security issue is still not fixed everywhere (https://cffi.readthedocs.io/en/latest/using.html#callbacks-old-style). But using ffi_prep_closure_loc() instead of ffi_prep_closure() is safe
<fijal> On Mac OS X, you need to give your application the entitlement com.apple.security.cs.allow-unsigned-executable-memory
<fijal> arigato: can this be fixed by being more clever about the way we allocate memory?
<fijal> oh I see
<fijal> kinda
greedom has quit [Remote host closed the connection]
<fijal> arigato: do we have any mechanism for PAX in pypy?
Julian has joined #pypy
greedom has joined #pypy
Julian has quit [Ping timeout: 240 seconds]
Julian has joined #pypy
Julian has quit [Client Quit]
greedom has quit [Remote host closed the connection]
greedom has joined #pypy
xcm_ has joined #pypy
ctismer_ has joined #pypy
dustinm- has joined #pypy
lazka2 has joined #pypy
xcm__ has joined #pypy
hexology- has joined #pypy
dustinm has quit [*.net *.split]
agronholm has quit [*.net *.split]
ctismer has quit [*.net *.split]
ctismer__ has joined #pypy
glyph has quit [Ping timeout: 240 seconds]
x88x88x has quit [Ping timeout: 240 seconds]
lazka has quit [Ping timeout: 240 seconds]
ctismer_ has quit [Ping timeout: 240 seconds]
ctismer__ is now known as ctismer_
xcm_ has quit [Ping timeout: 240 seconds]
xcm___ has joined #pypy
xcm__ has quit [Read error: Connection reset by peer]
hexology has quit [*.net *.split]
xcm has quit [*.net *.split]
glyph has joined #pypy
lazka2 has quit [Ping timeout: 256 seconds]
dustinm- has quit [Ping timeout: 256 seconds]
hexology- has quit [Ping timeout: 256 seconds]
lazka has joined #pypy
hexology has joined #pypy
dustinm has joined #pypy
agronholm has joined #pypy
jryans has joined #pypy
graingert[m] has joined #pypy
the_drow has joined #pypy
saltrocklamp[m] has joined #pypy
jryans has quit [Quit: Client limit exceeded: 20000]
graingert[m] has quit [Quit: Client limit exceeded: 20000]
saltrocklamp[m] has quit [Quit: Client limit exceeded: 20000]
the_drow has quit [Quit: Client limit exceeded: 20000]
greedom has quit [Remote host closed the connection]
Guest96 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]