From corbet Date 2021-09-17T11:51:37.343000 This is the matrix chatroom for the LPC GNU Tools track, available at #gnu-tools-track:lpc.events --- From jemarch.gnu.org Date 2021-09-20T09:02:06.805000 Hola hola! :) --- From elena.zannoni.oracle.com Date 2021-09-20T09:28:39.494000 howdy --- From sarah.cook.embecosm.com Date 2021-09-20T09:36:34.500000 Hello all! --- From jemarch.gnu.org Date 2021-09-20T09:36:53.123000 hi sarah --- From jeremy.bennett.embecosm.com Date 2021-09-20T09:40:17.875000 Hi all. Looks like the BBB integration might not be working. --- From jeremy.bennett.embecosm.com Date 2021-09-20T09:41:47.769000 OK - looks like it takes a Loonnnnnnnnnnngggggggggggg time - spinning circle still for me. --- From nix.esperi.org.uk Date 2021-09-20T09:41:54.225000 ta-da! the homeserver appears :) --- From jeremy.bennett.embecosm.com Date 2021-09-20T09:42:10.977000 And now its there. --- From nix.esperi.org.uk Date 2021-09-20T09:42:48.503000 matrix.lpc.events still can't get to it though. --- From dwmw2 Date 2021-09-20T09:43:33.470000 It's on port 8448 and some corporate networks might not allow egress to that port. --- From jeremy.bennett.embecosm.com Date 2021-09-20T09:43:39.817000 Took me a while to actually read the help message. The login is not your email you need to change the @ to . in your email address. --- From richard.guenther.gmail.com Date 2021-09-20T09:43:51.399000 connection seems to be somewhat unreliable as well --- From mchehab.kernel.org Date 2021-09-20T09:44:18.035000 > <@nix.esperi.org.uk:lpc.events> matrix.lpc.events still can't get to it though. I tried it with pidgin (pidgin-matrix plugin)... it doesn't recognize my user/pass --- From jemarch.gnu.org Date 2021-09-20T09:44:37.915000 Yeah I'm out of the VPN and seems to be working just fine for me --- From elena.zannoni.oracle.com Date 2021-09-20T09:45:00.133000 you do not stricley speaking need to be on the matrix server, the chat in BBB would probably be enough --- From elena.zannoni.oracle.com Date 2021-09-20T09:45:29.640000 VPN + matrix is not going to work --- From segher.kernel.crashing.org Date 2021-09-20T09:45:40.071000 woohoo, hello everyone --- From nix.esperi.org.uk Date 2021-09-20T09:46:45.310000 @Jeremy Bennett, I was stymied by a "helpful" Chrome changing my username back to my email address again. Thanks, but not really somewhere autocorrect is useful... --- From mchehab.kernel.org Date 2021-09-20T09:47:00.012000 > <@elena.zannoni.oracle.com:lpc.events> you do not stricley speaking need to be on the matrix server, the chat in BBB would probably be enough chat in BBB is not working here.. no VPNs --- From mchehab.kernel.org Date 2021-09-20T09:49:06.985000 hmm... after *several* seconds, BBB started working here --- From sarah.cook.embecosm.com Date 2021-09-20T09:51:31.420000 yes --- From jemarch.gnu.org Date 2021-09-20T09:51:35.043000 yeeees --- From sarah.cook.embecosm.com Date 2021-09-20T09:51:42.001000 all loud and clear --- From segher.kernel.crashing.org Date 2021-09-20T09:52:40.602000 DMs don't work at all though? firewall stuff? --- From dwmw2 Date 2021-09-20T09:54:05.771000 As you log in for the first time, it creates an account. The server is kind of busy creating accounts right now, and should speed up a lot after a while --- From sarah.cook.embecosm.com Date 2021-09-20T09:54:07.931000 Yes David can hear and see --- From elena.zannoni.oracle.com Date 2021-09-20T09:54:16.243000 yes to both --- From corbet.lwn.net Date 2021-09-20T10:02:41.911000 I love to see somebody with Linux Device Drivers on their bookshelf :) --- From richard.guenther.gmail.com Date 2021-09-20T10:10:47.536000 C++ support to the level to be able to analyze GCC itself would be nice (and terminate in finite time with analyzing during in LTO bootstrap) --- From richard.guenther.gmail.com Date 2021-09-20T10:20:07.952000 Are there publically available "testsuites" for static analyzers? It must be an active research topic after all. --- From jeremy.bennett.embecosm.com Date 2021-09-20T10:33:19.206000 The answer from David was "yes" - there is a testsuite from NIST. He'll post links. --- From richard.guenther.gmail.com Date 2021-09-20T10:43:55.898000 -Wunused-structure-field --- From dmalcolm.redhat.com Date 2021-09-20T10:51:17.922000 Static analyzer testsuites: https://samate.nist.gov/SARD/testsuite.php --- From nix.esperi.org.uk Date 2021-09-20T11:12:09.024000 hm, why not arrange for all dg tests to scan all options given in dg-options to see if they're supported as a matter of course, and XFAIL things that aren't (and that are declared in some tool-specific dejagnu config file as being expected to fail with this toolchain?). That way you don't have to hack every test individually... --- From joseph.codesourcery.com Date 2021-09-20T11:16:59.391000 For vla-6.c, it's not a test requiring VLAs in structs, it's a test verifying various things (including that) are rejected with -pedantic-errors. So it seems more like a "different error messages" case than "requires GCC-specific feature". --- From joseph.codesourcery.com Date 2021-09-20T11:18:43.696000 And pr87929.c is nothing really to do with -fsignaling-nans, it's just testing particular options that happened to produce an ICE. So it's more like a case where the option should be removed when testing LLVM, than one where the test should be skipped for lack of option support. --- From joseph.codesourcery.com Date 2021-09-20T11:19:15.066000 So for both of those tests that were used as examples, I think the proposed choice is questionable. --- From joseph.codesourcery.com Date 2021-09-20T11:22:28.522000 I do have a related question (maybe for the community in general): any thoughts on the use or practicality of using glibc tests to test other libc implementations? --- From siddhesh.poyarekar.gmail.com Date 2021-09-20T11:25:31.421000 There are some tests that use glibc internals but in general it shouldn't be impossible to do. --- From joseph.codesourcery.com Date 2021-09-20T11:26:38.255000 I'm not working on any answers there, it just seems like a related issue. --- From jemarch.gnu.org Date 2021-09-20T11:27:11.548000 what would be the advantage of doing so? --- From jeremy.bennett.embecosm.com Date 2021-09-20T11:28:49.968000 We can hear you Serhei --- From sarah.cook.embecosm.com Date 2021-09-20T11:28:49.990000 We can hear you --- From alves.ped.gmail.com Date 2021-09-20T11:29:16.041000 Serhei Makarov: we can hear and see you. --- From jeremy.bennett.embecosm.com Date 2021-09-20T11:30:20.326000 We can't hear you now Serhei --- From jemarch.gnu.org Date 2021-09-20T11:30:58.690000 I can't hear anything --- From sawdey.us.ibm.com Date 2021-09-20T11:31:25.288000 I cannot hear Serhei --- From joseph.codesourcery.com Date 2021-09-20T11:39:45.415000 (The compile-time subset of the glibc testsuite is on the stricter side than the execution tests - generally clean for all configurations, except when broken by new GCC warnings.) --- From andrew_stubbs.mentor.com Date 2021-09-20T11:59:47.248000 I will probably give Bunsen a try. :-) --- From sawdey.us.ibm.com Date 2021-09-20T12:00:43.146000 Are Serhei's slides posted somewhere? They are not here: https://linuxplumbersconf.org/event/11/contributions/1013/ --- From richard.guenther.gmail.com Date 2021-09-20T12:32:36.730000 If the register file were visible as part of global memory would DWARF 5 be expressive enough to specify locations via that global memory mapping? --- From richard.guenther.gmail.com Date 2021-09-20T12:33:44.413000 Thinking of a special __gdb_regs "symbol" to make locations relative to (that could also include threads/slices/whatever) --- From elena.zannoni.oracle.com Date 2021-09-20T12:41:29.911000 it seems the chat is back inside BBB, please try to open the tab --- From elena.zannoni.oracle.com Date 2021-09-20T12:41:48.150000 it takes a minute to reload --- From smakarov.redhat.com Date 2021-09-20T12:42:42.921000 I'm uploading the Bunsen slides to https://people.redhat.com/~smakarov/2021-lpc-talk/ --- From nix.esperi.org.uk Date 2021-09-20T12:53:28.027000 (Side note: CTF archives are used when types have conflicting definitions in different CUs. BTF probably doesn't need this because such definitions shouldn't exist in the kernel: if they do, they'll probably vanish sooner or later because they'd break LTO.) --- From nix.esperi.org.uk Date 2021-09-20T13:10:39.098000 Progress report for binutils libctf since last year: one new feature, symbols derived from TUs compiled with -gctf are now tracked so that you can look up the types of symbols by name or -- in linked output -- by symtab idx. --- From tony.tye.amd.com Date 2021-09-20T13:35:08.914000 Was interested in learning more about how the BPF relocations are encoded and how that supports the kinds of changes that can happen to header files. --- From tony.tye.amd.com Date 2021-09-20T13:35:40.233000 * Was interested in learning more about how the BPF relocations are encoded and how that supports the kinds of changes that can happen to header files. --- From nix.esperi.org.uk Date 2021-09-20T13:45:27.286000 certainly using strings for relocation info in CTF would be... well, I'd fight it ;) I suspect the DWARF hackers would say no too! --- From nix.esperi.org.uk Date 2021-09-20T13:46:34.791000 2GiB or so for the vmlinux alone. 12GiB for an enterprise kernel. (CTF: 8MiB. BTF: ~2MiB, but BTF doesn't include any types in modules at all, nor function type signatures.) --- From jeremy.bennett.embecosm.com Date 2021-09-20T13:53:12.667000 Bye all - good first day --- From sarah.cook.embecosm.com Date 2021-09-20T13:56:57.155000 Thank you to all our speakers, to you for attending and the events sponsors --- From sarah.cook.embecosm.com Date 2021-09-20T13:57:08.984000 We look forward to seeing you all again tomorrow :) --- From lpcchatadmin Date 2021-09-20T23:07:00.871000 This is the matrix chatroom for the LPC GNU Tools track, available at #gnu-tools-track:lpc.events --- From sarah.cook.embecosm.com Date 2021-09-21T09:49:04.181000 Hi All! Welcome to day 2 of the GNU Tools Track! --- From sarah.cook.embecosm.com Date 2021-09-21T09:49:32.128000 If any of the speakers would like to test their microphones and cameras ahead of the event starting in 10 minutes, you are welcome to :) --- From patmcgeh.flash.net Date 2021-09-21T10:00:05.785000 microphone does not seem to be connected... --- From sarah.cook.embecosm.com Date 2021-09-21T10:00:19.883000 Maybe leave and re-join --- From sarah.cook.embecosm.com Date 2021-09-21T10:00:30.055000 sometimes I find I have to reset it to make it behave --- From jemarch.gnu.org Date 2021-09-21T10:00:36.065000 Yeah sometimes the echo test fails --- From patmcgeh.flash.net Date 2021-09-21T10:04:15.426000 odd... headset speakers are working fine but microphone is not; works on zoom and discord --- From jemarch.gnu.org Date 2021-09-21T10:04:22.017000 That patch needs reviewers!!! --- From jemarch.gnu.org Date 2021-09-21T10:04:28.191000 ^^^ --- From sarah.cook.embecosm.com Date 2021-09-21T10:05:05.262000 > <@patmcgeh.flash.net:lpc.events> odd... headset speakers are working fine but microphone is not; works on zoom and discord hmmmm this is odd. You are welcome to join one of the hackrooms to try and fix it ahead of your talk --- From patmcgeh.flash.net Date 2021-09-21T10:05:59.050000 I'll try hackroom 2 --- From nix.esperi.org.uk Date 2021-09-21T10:06:09.188000 Patrick, check your source/sink configuration? I bet it's different for different apps (they remember what they used last, especially when you don't want them to) --- From richard.guenther.gmail.com Date 2021-09-21T10:09:05.397000 so gprofng compares to AMD uprof or Intel VTune? --- From patmcgeh.flash.net Date 2021-09-21T10:09:20.541000 Microphone working now. Internal config glitch. --- From richard.guenther.gmail.com Date 2021-09-21T10:09:21.237000 not so much to gprof --- From jeffreyalaw.gmail.com Date 2021-09-21T10:10:11.077000 yea, seems closer to perf, vtune, etc very different than old gprof --- From richard.guenther.gmail.com Date 2021-09-21T10:10:37.043000 gprof (or rather the instrumentation done by GCC) is also used for profile-feedback compilation --- From richard.guenther.gmail.com Date 2021-09-21T10:11:57.602000 I wonder why it wants to be part of binutils --- From rohit.athavale.info Date 2021-09-21T10:13:58.137000 Very similar to perf cli --- From anatol.belski.microsoft.com Date 2021-09-21T10:25:37.253000 Is it possible to use gprofng to profile binaries compiled by other languages (in particular Rust)? Otherwise, what would it take to have such a support? Thanks --- From nix.esperi.org.uk Date 2021-09-21T10:31:34.369000 It should just work I think. No source support for Rust yet though. --- From anatol.belski.microsoft.com Date 2021-09-21T10:38:08.026000 Yep, that would work for the basic case. For the source level, would there be some sort of plugin support possible, etc.? --- From nix.esperi.org.uk Date 2021-09-21T10:38:43.752000 No more than GDB does, I'm afraid. --- From nix.esperi.org.uk Date 2021-09-21T10:39:06.257000 (yet, anyway!) --- From jason237 Date 2021-09-21T10:39:08.704000 Why would source support be language-dependent? I'd expect it to just use DWARF line number information. --- From jason237 Date 2021-09-21T10:39:31.196000 (assuming rust uses dwarf) --- From anatol.belski.microsoft.com Date 2021-09-21T10:39:40.888000 There's rust-gdb actually, i'm just not sure how it connects through. --- From nix.esperi.org.uk Date 2021-09-21T10:40:03.880000 Oh true! I was thining expression parsing etc, but that isn't relevant here, is it? Not much change needed, then (if any). --- From plumbers.wildebeest.org Date 2021-09-21T10:40:24.101000 the gccrs frontend does and gdb is happy --- From anatol.belski.microsoft.com Date 2021-09-21T10:40:42.957000 AFAIK Rust does use DWARF, yep. --- From anatol.belski.microsoft.com Date 2021-09-21T10:40:49.890000 Great, thanks for clarifying! --- From codonell.redhat.com Date 2021-09-21T10:53:47.933000 Unknown type: m.emote --- From codonell.redhat.com Date 2021-09-21T10:57:56.242000 ... random number generation for double-double :-) --- From codonell.redhat.com Date 2021-09-21T10:59:51.899000 Thank you Patrick! --- From jwakely.redhat.com Date 2021-09-21T11:00:03.119000 Very interesting, thanks! --- From vladimir.mezentsev.oracle.com Date 2021-09-21T11:04:44.702000 > <@anatol.belski.microsoft.com:lpc.events> Is it possible to use gprofng to profile binaries compiled by other languages (in particular Rust)? Otherwise, what would it take to have such a support? Thanks gprofng supports binaries only in elf-format. If compiler generates elf, gprofng can profile it. gprofng reads Dwarf and Stabs. I never used Rust. Fortran is supported. --- From nix.esperi.org.uk Date 2021-09-21T11:05:18.437000 rust generates ELF (statically linked against all but libc by default) --- From nix.esperi.org.uk Date 2021-09-21T11:05:44.195000 A shame DJ isn't here... --- From codonell.redhat.com Date 2021-09-21T11:07:25.032000 Nick, DJ is on PST time, so he's only just getting up. We have discussed a lot of these values when looking at customer workloads we captured with the new high-speed malloc trace. --- From codonell.redhat.com Date 2021-09-21T11:07:52.436000 I agree that these 3 parameters yield a lot of change. --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:08:08.188000 ... or just use GLIBC_TUNABLES=glibc.malloc.mmap_threshold , etc. Those underscores are evil. --- From codonell.redhat.com Date 2021-09-21T11:08:26.208000 Performance is one aspect, but memory used today has become a critical aspect of glibc's malloc. --- From codonell.redhat.com Date 2021-09-21T11:10:11.710000 This is where I feel we could switch to a % overhead and let malloc raise the trim. --- From codonell.redhat.com Date 2021-09-21T11:10:30.881000 We have a dynamic threshold if you don't set the threshold, but it isn't smart enough. --- From nix.esperi.org.uk Date 2021-09-21T11:10:51.273000 The hard part is getting the percentages remotely right without costing too much time figuring it out... --- From nix.esperi.org.uk Date 2021-09-21T11:11:20.088000 (since the time taken to do syscalls etc can vary wildly depending on system configuration, etc.) --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:12:01.213000 The dynamic threshold just grows the new threshold to the size of the latest freed block. --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:12:06.157000 never shrinks. --- From codonell.redhat.com Date 2021-09-21T11:12:14.897000 If given the API calls you consume X, then you should, IMO be able to say I want to only keep Y% more than X. --- From codonell.redhat.com Date 2021-09-21T11:12:35.426000 jemalloc has a distinct delta-t time decay thread which frees back. --- From nix.esperi.org.uk Date 2021-09-21T11:12:39.198000 maybe spend an ms or so figuring it out after the program has been running for a while and is demonstrably doing malloc/free in complicated patterns? --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:12:46.880000 So if a benchmark allocates all the way up to 32M early enough and frees it, it's equivalent to setting mmap_threshold to 32M. --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:12:56.282000 Which may explain near-identical performance. --- From codonell.redhat.com Date 2021-09-21T11:13:24.507000 Yeah, an early 32M allocation will raise the threshold. --- From codonell.redhat.com Date 2021-09-21T11:14:13.911000 Yes, jemalloc's algorithm has an aspect related to delta-t, and that gives you part of a PID control. --- From vladimir.mezentsev.oracle.com Date 2021-09-21T11:14:57.702000 > <@nix.esperi.org.uk:lpc.events> It should just work I think. No source support for Rust yet though. gprofng should show sources if Rust geberates "standart" Dwarf. --- From alehotsky.codegentllc.com Date 2021-09-21T11:15:36.133000 I came late to the session; can I download your slides? --- From codonell.redhat.com Date 2021-09-21T11:16:14.508000 Question for Patrick: Have you seen issues with producer consumer threaded workloads and does tuning help? --- From philip.herron.embecosm.com Date 2021-09-21T11:16:50.798000 I can hear you all --- From jbowen.infinitecactus.com Date 2021-09-21T11:16:57.796000 We can hear you --- From segher.kernel.crashing.org Date 2021-09-21T11:17:41.723000 > <@codonell.redhat.com:lpc.events> ... random number generation for double-double :-) random-random number-numbers --- From codonell.redhat.com Date 2021-09-21T11:17:45.514000 I think this is the mixed up BBB issues. --- From elena.zannoni.oracle.com Date 2021-09-21T11:17:49.672000 patric --- From jbowen.infinitecactus.com Date 2021-09-21T11:17:57.716000 It seems Patrick cannot hear us --- From elena.zannoni.oracle.com Date 2021-09-21T11:18:02.106000 patrick cannot hear --- From mulley.gaius.gmail.com Date 2021-09-21T11:18:15.353000 re: previous talk. Complex numbers are also used by ferrari's algorithm for quartic root calculation. Used in some game engines (collision prediction). --- From andrew_stubbs.mentor.com Date 2021-09-21T11:18:31.138000 I can hear Carlos --- From elena.zannoni.oracle.com Date 2021-09-21T11:19:19.727000 carlos can you type please? --- From patmcgeh.flash.net Date 2021-09-21T11:19:22.439000 seem to have lost both input/output --- From codonell.redhat.com Date 2021-09-21T11:19:27.873000 Will type. --- From elena.zannoni.oracle.com Date 2021-09-21T11:19:38.698000 thanks, otherwise patrick cannot hear --- From codonell.redhat.com Date 2021-09-21T11:19:59.829000 Just commenting: Would be interesting to add a WAIT-FREE-QUEUE at the thread holding the arena lock, and a freer could drop a chunk in that queue. --- From codonell.redhat.com Date 2021-09-21T11:20:14.988000 To batch the free work and see if that has performance impact. --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:20:16.104000 @Patrick, it would be interesting to see your findings with higher than 32M upper limit for dynamic thresholds. But I would like to see more results from cases where the dynamic threshold doesn't just get bumped up to maximum early on. --- From kgoebel.me.com Date 2021-09-21T11:20:43.126000 sometimes refreshing the conf window can reset audio --- From codonell.redhat.com Date 2021-09-21T11:20:55.834000 Let me resfresh too. --- From elena.zannoni.oracle.com Date 2021-09-21T11:21:04.460000 you can join a hackroom if you want to continue the malloc discussion --- From nix.esperi.org.uk Date 2021-09-21T11:21:07.332000 Carlos: presumably the existing malloc per-thread cache won't suffice> --- From elena.zannoni.oracle.com Date 2021-09-21T11:21:11.733000 or even ask for a bof --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:21:24.729000 Another interesting experiment would be to see how common it is for the dynamic threshold to get bumped up to maximum very early, thus losing it's "dynamicness". --- From patmcgeh.flash.net Date 2021-09-21T11:21:33.725000 I have audio; seems my system has an internal issue with speaker/microphone identification --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:21:40.152000 i.e. different workloads. --- From patmcgeh.flash.net Date 2021-09-21T11:21:50.927000 I see the chat discussion --- From codonell.redhat.com Date 2021-09-21T11:21:54.207000 Malloc telemetry :-) --- From alves.ped.gmail.com Date 2021-09-21T11:21:55.558000 let's all switch to Zoom :-D --- From codonell.redhat.com Date 2021-09-21T11:22:01.250000 Hey Pedro! --- From jemarch.gnu.org Date 2021-09-21T11:22:01.959000 noooo zoom nooo --- From alves.ped.gmail.com Date 2021-09-21T11:22:09.976000 Hey! --- From nix.esperi.org.uk Date 2021-09-21T11:22:17.063000 Patrick: pop up pavucontrol and look at the per-app source/sink mapping --- From elena.zannoni.oracle.com Date 2021-09-21T11:22:19.523000 patrick you can try disconnecting and reconnecting --- From codonell.redhat.com Date 2021-09-21T11:22:23.125000 Yeah, we need to get the high speed malloc tracer integrated into upstream proper as a preload. --- From dmalcolm.redhat.com Date 2021-09-21T11:22:23.178000 I see Patrick's icon is a headphone rather than a muted microphone; maybe he should disconnect and reconnect? --- From indu.bhagat.oracle.com Date 2021-09-21T11:22:29.510000 Patrick you are in "listen only" mode it seems --- From codonell.redhat.com Date 2021-09-21T11:22:33.594000 And integrate dynamic threshold data, and more fastbin info. --- From jeffreyalaw.gmail.com Date 2021-09-21T11:22:34.348000 carlos, pedro & friends..... hi everyone --- From codonell.redhat.com Date 2021-09-21T11:22:40.743000 Hi Jeff! :-) --- From patmcgeh.flash.net Date 2021-09-21T11:22:52.859000 yes; can't join in microphone mode after switching headsets --- From codonell.redhat.com Date 2021-09-21T11:23:00.737000 Ah. --- From patmcgeh.flash.net Date 2021-09-21T11:23:03.203000 I'm going to leave the conference and rejoin --- From jeffreyalaw.gmail.com Date 2021-09-21T11:23:08.176000 yea, found that out yesterday as well... --- From nix.esperi.org.uk Date 2021-09-21T11:25:16.001000 well, mostly the kernel doesn't migrate unless the application asks it to... --- From nix.esperi.org.uk Date 2021-09-21T11:26:05.125000 ahhhh makes sense! --- From ulrich.weigand.de.ibm.com Date 2021-09-21T11:27:03.382000 Patrick, you're still in listen-only mode --- From patmcgeh.flash.net Date 2021-09-21T11:27:48.654000 I have audio only; did not want to miss the discussion --- From codonell.redhat.com Date 2021-09-21T11:27:48.962000 Are you going to be working on improving malloc? :-) --- From patmcgeh.flash.net Date 2021-09-21T11:28:15.585000 My next scheduled task is to increase the MALLOC max --- From codonell.redhat.com Date 2021-09-21T11:28:27.668000 We should talk on libc-alpha. --- From jemarch.gnu.org Date 2021-09-21T11:28:34.619000 PGA: profile guided allocation. Allocation profiles :) --- From codonell.redhat.com Date 2021-09-21T11:28:34.841000 And discuss places to improve that performance. --- From patmcgeh.flash.net Date 2021-09-21T11:28:39.979000 yes; I'm on libc-alpha --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:28:51.327000 @Patrick, we should probably even talk about removing MMAP_MAX if we can. --- From patmcgeh.flash.net Date 2021-09-21T11:29:17.887000 memcpy is tomorrow's talk --- From jemarch.gnu.org Date 2021-09-21T11:29:18.934000 Patrick is the best --- From codonell.redhat.com Date 2021-09-21T11:29:24.940000 Thank you Patrick! :-) --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:29:31.384000 Thank you! --- From codonell.redhat.com Date 2021-09-21T11:29:48.969000 I can hear you. --- From codonell.redhat.com Date 2021-09-21T11:29:50.760000 I can see you. --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:29:58.178000 I can hear you HJ --- From codonell.redhat.com Date 2021-09-21T11:35:05.876000 Down with COPY relocations! :-) --- From codonell.redhat.com Date 2021-09-21T11:36:10.962000 Is that exception because today we use the address of the PLT on x86? --- From elena.zannoni.oracle.com Date 2021-09-21T11:39:37.360000 @room there is a pop up menu in the bottom icon with the "telephone handset" to switch microphones and leave and join audio, can you see that? You can test during the break after HJ's talk --- From nix.esperi.org.uk Date 2021-09-21T11:39:38.964000 So,,, this makes accesses to undefined symbols (but not calls to undefined functions) from non-shared libs more expensive, while making self-refs to protected symbols in shared libs cheaper? Seems like you'd almost always want to do this. I guess distros that always compile from source will want to turn this on by default on their next recompile? --- From joseph.codesourcery.com Date 2021-09-21T11:41:21.300000 I'd guess it might work best with applications that are careful about marking their internal symbols hidden (so as much optimization as possible can happen at compile time rather than link time)? --- From jeffreyalaw.gmail.com Date 2021-09-21T11:41:35.155000 QT for example? --- From nix.esperi.org.uk Date 2021-09-21T11:41:54.333000 Most big C++ apps these days --- From jeffreyalaw.gmail.com Date 2021-09-21T11:42:16.973000 my recollection is that QT + copy relocs has been a huge headache --- From nix.esperi.org.uk Date 2021-09-21T11:42:53.468000 particularly if (like Python etc) they are turning off interposition etc anyway --- From jeffreyalaw.gmail.com Date 2021-09-21T11:43:22.430000 i think there's a general trend towards turning off interposition --- From patmcgeh.flash.net Date 2021-09-21T11:43:23.989000 > <@elena.zannoni.oracle.com:lpc.events> @room there is a pop up menu in the bottom icon with the "telephone handset" to switch microphones and leave and join audio, can you see that? You can test during the break after HJ's talk I've tried leave/join audio multiple times. --- From codonell.redhat.com Date 2021-09-21T11:52:30.181000 Common variable attribute? __attribute__((access_mode("indirect-external-access")) ??? --- From joseph.codesourcery.com Date 2021-09-21T11:53:28.516000 As I understand it, one general issue behind lots of these things is that ELF dynamic linking was originally defined to make things behave the same as static linking did, which resulted in various issues that now turn out to have performance impact. And so we now look at things to change that make it less like static linking (and may require special markup of exported/non-exported symbols, access modes, etc.) but should improve performance. --- From segher.kernel.crashing.org Date 2021-09-21T11:56:37.202000 > <@jeffreyalaw.gmail.com:lpc.events> i think there's a general trend towards turning off interposition it would be nice if that became the default... long transition period needed of course --- From jeffreyalaw.gmail.com Date 2021-09-21T11:58:39.758000 For FLorian's request, could we emit new reloc to get the behavior he wants? --- From nix.esperi.org.uk Date 2021-09-21T11:58:53 There are a very few symbols we'd often like to keep interposable regardless, and if we do that everything else could probably lose interposition and actually fix problems due to symbol collisions etc :) basically if malloc and friends are still interposable, almost nobody would notice the change. maybe fopen etc too... --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T11:59:46.981000 especially since we just got rid of malloc hooks and asked users to use malloc interposition instead. --- From jeffreyalaw.gmail.com Date 2021-09-21T12:05:01.391000 I think if go away interposable by default that we would have to have a mechanism to explicitly ask for some symbols to be interposable --- From fweimer.redhat.com Date 2021-09-21T12:07:28.046000 > <@nix.esperi.org.uk:lpc.events> There are a very few symbols we'd often like to keep interposable regardless, and if we do that everything else could probably lose interposition and actually fix problems due to symbol collisions etc :) basically if malloc and friends are still interposable, almost nobody would notice the change. maybe fopen etc too... `fopen` is already not interposable as far as glibc's internal use is concerned. But for all other `fopen` users, nothing changes. --- From codonell.redhat.com Date 2021-09-21T12:08:52.621000 Internal uses were never meant to be interposable in order to ensure the consistency of the implemented function. --- From codonell.redhat.com Date 2021-09-21T12:08:58.893000 How we use fopen internally is an implementation detail. --- From jemarch.gnu.org Date 2021-09-21T12:09:07.492000 Thanks Ulrich! --- From codonell.redhat.com Date 2021-09-21T12:09:38.560000 I think other applications are starting to want that option of not allowing interposition to hide their internal details. --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T12:09:50.703000 yeah it's possible to do that for fopen because there's no real processwide state that needs to be managed like in case of malloc. --- From elena.zannoni.oracle.com Date 2021-09-21T12:12:08.213000 patrick can you try playing around with the telephone icon menu at the bottom to see if you can make yourself join the audio? --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T12:16:37.208000 FWIW, I wasn't able to get the microphone working on firefox. It worked on chrome. --- From elena.zannoni.oracle.com Date 2021-09-21T12:19:01.083000 I tried in a hackroom, I joined w/o microphone, and the icon with the "headset" in the bottom lets you leave the audio, then you rejoin (also at the bottom) and you can select at that point to use the microphone. It worked fine. --- From plumbers.wildebeest.org Date 2021-09-21T12:19:57.351000 This is fun. Currecntly tsearch red/black trees use the lower bit in an (aligned) pointer to store the color bit. This requires masking and the internal pointers cannot be leaked out without masking off the low bit first. With this it could use the upper bits without any need of masking it seems. --- From nix.esperi.org.uk Date 2021-09-21T12:21:01.443000 any benchmarking of this? I guess the point is to reduce data-dependencies from the now-unnecessary masking? --- From plumbers.wildebeest.org Date 2021-09-21T12:21:26.355000 (tsearch in glibc) --- From nix.esperi.org.uk Date 2021-09-21T12:22:40.300000 I'm just remembering all the work that went into x86 hardware lock elision, followed shortly afterwards by Torvald posting benchmarks showing that lock elision slowed things down... don't want that to happen again, really. --- From alehotsky.codegentllc.com Date 2021-09-21T12:22:52.448000 I was imagining lisp tags --- From elver.google.com Date 2021-09-21T12:25:25.241000 Similar feature is already proven on arm64 (called TBI). One big usecase is HWASAN: https://clang.llvm.org/docs/HardwareAssistedAddressSanitizerDesign.html --- From siddhesh.poyarekar.gmail.com Date 2021-09-21T12:26:09.121000 luajit --- From plumbers.wildebeest.org Date 2021-09-21T12:26:24.282000 I don't follow, how does the loader know the program or some other library isn't using LAM already when dlopening a non-LAM enabled library. You cannot disable it then anymore can you? --- From nix.esperi.org.uk Date 2021-09-21T12:26:44.313000 Hm I guess AMD might get something similar then. Distinctly niche usecase without that. --- From nix.esperi.org.uk Date 2021-09-21T12:27:11.315000 (If it actually does boost performance. Benchmarks!) --- From elver.google.com Date 2021-09-21T12:28:11.797000 Nick: This has some data on HWASAN benefits: https://source.android.com/devices/tech/debug/hwasan Memory usage is another benefit. --- From nix.esperi.org.uk Date 2021-09-21T12:29:10.294000 Ah! Sounds like something valgrind could use too, for the uninitialized bit -- at least for pointers. hm. sounds tricky... --- From dvyukov.google.com Date 2021-09-21T12:29:36.306000 We want LAM a lot for HWASAN in user-space and kernel CONFIG_KASAN_SW_TAGS (effectively KASAN but with lower memory overhead). --- From nix.esperi.org.uk Date 2021-09-21T12:29:36.645000 Another horror to fix: libreoffice --- From plumbers.wildebeest.org Date 2021-09-21T12:29:39.569000 So how can a library, like glibc, use LAM, if it can be loaded by either LAM enabled and non-LAM enabled programs? --- From plumbers.wildebeest.org Date 2021-09-21T12:32:40.999000 > <@nix.esperi.org.uk:lpc.events> Ah! Sounds like something valgrind could use too, for the uninitialized bit -- at least for pointers. hm. sounds tricky... Valgrind would need to make sure it is the only component using LAM, if the use application also uses LAM itself, valgrind would have to check the LAM bits of the application (and cannot use them itself). --- From nix.esperi.org.uk Date 2021-09-21T12:32:59.530000 this would have helped the 68k back in the day too. A pointer-width marker seems like a thing that is useful even in the absence of LAM. --- From dvyukov.google.com Date 2021-09-21T12:36:46.232000 Are all patches for LAM are upstream already (gcc, glibc, qemu, kernel, etc)? Or something is in flight still? --- From codonell.redhat.com Date 2021-09-21T12:39:11.194000 I can hear you. --- From codonell.redhat.com Date 2021-09-21T12:39:21.767000 @Dmitry --- From codonell.redhat.com Date 2021-09-21T12:39:32.947000 I'd say we have RFCs for discussion. --- From dvyukov.google.com Date 2021-09-21T12:40:26.027000 @Carlos let's continue the discussion over email --- From jemarch.gnu.org Date 2021-09-21T12:41:23.727000 headphones --- From elena.zannoni.oracle.com Date 2021-09-21T12:41:28.531000 i do not hear any echo --- From elena.zannoni.oracle.com Date 2021-09-21T12:41:40.013000 ok --- From sarah.cook.embecosm.com Date 2021-09-21T12:43:32.494000 yes I know what you mean --- From tdevries.suse.de Date 2021-09-21T13:09:44.985000 so, is the alias analysis now done before the outlining? --- From sarah.cook.embecosm.com Date 2021-09-21T13:20:19.617000 yes --- From sarah.cook.embecosm.com Date 2021-09-21T13:21:11.386000 yes! --- From roger.nextmovesoftware.com Date 2021-09-21T13:54:24.778000 Richard: Is the endianness the same between the ARM host and the Nvidia GPU? Is this handled by the off-loading? --- From richard.guenther.gmail.com Date 2021-09-21T13:55:07.526000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96265 --- From jeremy.bennett.embecosm.com Date 2021-09-21T14:01:11.574000 Good night all --- From mulley.gaius.gmail.com Date 2021-09-21T14:01:27.112000 bye everyone --- From segher.kernel.crashing.org Date 2021-09-21T14:01:36.531000 bye --- From sarah.cook.embecosm.com Date 2021-09-21T14:01:51.569000 Thank you to all the speakers, to the you for joining us and a thank you to the sponsors of LPC. We look forward to seeing you tomorrow --- From elena.zannoni.oracle.com Date 2021-09-21T14:02:25.744000 thank you David --- From elena.zannoni.oracle.com Date 2021-09-21T14:02:39.457000 appreciate it --- From brobecke.adacore.com Date 2021-09-21T14:02:41.820000 Thanks David! --- From elena.zannoni.oracle.com Date 2021-09-21T14:02:49.318000 see you tomorrow! --- From jeffreyalaw.gmail.com Date 2021-09-21T14:02:52.281000 thanks to everyone who's worked to pull this together! --- From elena.zannoni.oracle.com Date 2021-09-21T14:04:20.972000 I'll close the room for the day, you will be kicked out --- From segher.kernel.crashing.org Date 2021-09-22T09:43:21.285000 Pong? --- From jemarch.gnu.org Date 2021-09-22T09:43:36.540000 Hey --- From joseph.codesourcery.com Date 2021-09-22T09:43:55.583000 Yes. --- From codonell.redhat.com Date 2021-09-22T09:44:03.541000 Thanks. --- From dje.gcc.gmail.com Date 2021-09-22T09:44:20.761000 Ping? --- From iain.sandoe.co.uk Date 2021-09-22T09:49:10.804000 good afternoon --- From simon.marchi.polymtl.ca Date 2021-09-22T10:01:42.842000 Good morning! --- From codonell.redhat.com Date 2021-09-22T10:01:52.138000 /me waves --- From codonell.redhat.com Date 2021-09-22T10:02:18.002000 Thank you Embecosm! :-) --- From jeremy.bennett.embecosm.com Date 2021-09-22T10:02:49.588000 > <@codonell.redhat.com:lpc.events> Thank you Embecosm! :-) :-) --- From codonell.redhat.com Date 2021-09-22T10:03:13.393000 Joseph Myers - glibc, gcc. --- From plumbers.wildebeest.org Date 2021-09-22T10:08:08.214000 Can we use that for the gcc rust frontend? They are currently stuck on github for that, which is really, really, really painful --- From joseph.codesourcery.com Date 2021-09-22T10:11:45.358000 And I have build-many-glibcs.py bots running after commit, but doing that as a trybot for all posted patches would need a *lot* of compute resources. --- From joseph.codesourcery.com Date 2021-09-22T10:13:20.523000 In practice, many of the cases where it shows breakage are where it wasn't at all obvious in advance that some configuration might break. --- From joseph.codesourcery.com Date 2021-09-22T10:14:52.898000 It's GDB that has problems with flaky tests. GCC doesn't have that so much, though I've sometimes seen random variation in test results. --- From alehotsky.codegentllc.com Date 2021-09-22T10:15:26.503000 You're using parallel make.. --- From plumbers.wildebeest.org Date 2021-09-22T10:16:03.028000 So for gccrs there is a bot that checks a --no-bootstrap build on just x86_64 (and just --enable-langagues=rust) on every approved commit. And then the bot commits to the main branch only when the build succeeds. --- From plumbers.wildebeest.org Date 2021-09-22T10:16:50.357000 That doesn't take that long. But doing a real bootstrap build and doing it for all arches... --- From ngompa13.gmail.com Date 2021-09-22T10:17:17.152000 Is there something like a Buildbot planned? --- From plumbers.wildebeest.org Date 2021-09-22T10:17:31.248000 It also helps that gccrs only has a couple of thousand tests. --- From ngompa13.gmail.com Date 2021-09-22T10:17:51.145000 it'd be nice for normies like me tracking stuff in GNU toolchain can see stuff happening all the time --- From plumbers.wildebeest.org Date 2021-09-22T10:18:17.018000 > <@ngompa13.gmail.com:lpc.events> Is there something like a Buildbot planned? I have one for gccrs (but it only does rust) https://builder.wildebeest.org/buildbot/#/builders?tags=gccrust --- From jakub.redhat.com Date 2021-09-22T10:18:21.972000 For patchworks and GCC, quite high priority is figure out what patches have been committed by a bit, which gets harder when patches slightly change before commit --- From plumbers.wildebeest.org Date 2021-09-22T10:18:57.723000 and yes, that buildbot is only after commit --- From ngompa13.gmail.com Date 2021-09-22T10:19:02.611000 sure, but post-merge checks are still useful, as well as having nightly runs across everything --- From joseph.codesourcery.com Date 2021-09-22T10:19:16.758000 There were post-commit glibc bots for a few architectures, but I think they bitrotted. And one had mysterious make errors. --- From ngompa13.gmail.com Date 2021-09-22T10:19:18.976000 because that tests how the environment influences the tree --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:19:23.130000 Right now I'm the bot that runs the bot for glibc :) --- From jeffreyalaw.gmail.com Date 2021-09-22T10:19:30.165000 neal: there's also https://gcc.gnu.org/jenkins which is constantly doing testing of the tree --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:19:58.644000 Jon for gcc, but gcc's success rate is lower because patches change before commit. --- From simon.marchi.polymtl.ca Date 2021-09-22T10:20:03.841000 Tom de Vries: I'm curious about what kind of setup you have for testing GDB, because you are catching regressions really quickly --- From ngompa13.gmail.com Date 2021-09-22T10:20:07.924000 > <@jakub.redhat.com:lpc.events> For patchworks and GCC, quite high priority is figure out what patches have been committed by a bit, which gets harder when patches slightly change before commit I see that surprisingly often with email-based workflows :( --- From ngompa13.gmail.com Date 2021-09-22T10:20:19.611000 it's frustrating and annoying --- From jemarch.gnu.org Date 2021-09-22T10:20:29.741000 Carlos: that email-driven interface, you got that working? Will it work with git-format-patch patch series? Will it be possible to specify target/conf/RUNTESTFLAGS? Will the results of the build be sent to the list as a reply to the request email? What do you need from each particular project to join the party? --- From joseph.codesourcery.com Date 2021-09-22T10:20:42.130000 One benefit of not committing ChangeLog changes in a commit is that what's committed can often be the same (same git-patch-id) as originally posted. --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:21:09.786000 +1 --- From tdevries.suse.de Date 2021-09-22T10:21:37.156000 > <@simon.marchi.polymtl.ca:lpc.events> Tom de Vries: I'm curious about what kind of setup you have for testing GDB, because you are catching regressions really quickly manual daily testing, unfortunately ;) --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:21:39.792000 FWIW, changing the commit message is OK because patchwork only hashes the diff portion. --- From jeffreyalaw.gmail.com Date 2021-09-22T10:21:47.788000 and the git flow w/o ChangeLogs makes it a hell of a lot easier to cherry-pick across trees --- From jakub.redhat.com Date 2021-09-22T10:22:13.487000 The patch changes before commit are mostly when reviewer says your patch is ok for trunk with this and this nit fixed and they are so obvious that a repost and another review is unnecessary --- From iain.sandoe.co.uk Date 2021-09-22T10:22:28.715000 +1 (on the cherry - pick ) - we do have a history of "OK with the folowing nits fixed" --- From konstantin.linuxfoundation.org Date 2021-09-22T10:22:54.083000 on the kernel side, we also run a patchwork bot that can do things like automatically notify submitters that their patches were merged and automatically sets patch status as "accepted" when they show up in a monitored git tree. https://korg.docs.kernel.org/patchwork/pwbot.html --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:22:58.347000 One thing I'm considering for the auto-closing bot is to post the [committed] patch to the list. --- From alves.ped.gmail.com Date 2021-09-22T10:23:06.135000 Does patchwork look at gerrit-like "Change-Id:" tags nowadays, to identify same-patch? --- From ngompa13.gmail.com Date 2021-09-22T10:23:25.129000 I firmly disagree. If I'm going through the pain of the email based workflow, my patches are what *I* want you to accept. --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:23:33.172000 > <@alves.ped.gmail.com:lpc.events> Does patchwork look at gerrit-like "Change-Id:" tags nowadays, to identify same-patch? Unfortunately not, which is why older versions just stay there :( --- From ngompa13.gmail.com Date 2021-09-22T10:23:54.355000 I barely like appending the "Ack-by"/"Reviewed-by"/etc. to the patches before adding them --- From ngompa13.gmail.com Date 2021-09-22T10:24:04.337000 changing anything else is unacceptable --- From simon.marchi.polymtl.ca Date 2021-09-22T10:24:05.611000 > <@siddhesh.poyarekar.gmail.com:lpc.events> Unfortunately not, which is why older versions just stay there :( I had opened a question upstram to ask if they would be open to that, they would be --- From simon.marchi.polymtl.ca Date 2021-09-22T10:24:28.552000 https://github.com/getpatchwork/patchwork/issues/327 --- From joseph.codesourcery.com Date 2021-09-22T10:24:38.164000 I'd guess there should be good heuristics for detecting "probably committed with changes" patches in patchwork (e.g. same subject and author, committed within a month), for quick manual review to confirm they were committed. --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:24:43.023000 > <@simon.marchi.polymtl.ca:lpc.events> https://github.com/getpatchwork/patchwork/issues/327 That would be great! --- From plumbers.wildebeest.org Date 2021-09-22T10:25:35.085000 so how about only allowing the bot to commit to the main branch when it passes tests and is approved? Then what gets committed is always wat was approved? --- From ngompa13.gmail.com Date 2021-09-22T10:25:40.102000 Carlos O'Donell: The biggest issue I have with the email based workflow is how hard it is for me to track feedback --- From dmalcolm.redhat.com Date 2021-09-22T10:26:06.979000 It's traditional at this point to ask when GCC is going to transition to git :) --- From wschmidt.us.ibm.com Date 2021-09-22T10:26:19.897000 LOL --- From dje.gcc.gmail.com Date 2021-09-22T10:26:22.818000 Soon --- From fweimer.redhat.com Date 2021-09-22T10:26:27.423000 > <@plumbers.wildebeest.org:lpc.events> so how about only allowing the bot to commit to the main branch when it passes tests and is approved? Then what gets committed is always wat was approved? That's the Gerrit model. When done over email, authentication will be hard. --- From ngompa13.gmail.com Date 2021-09-22T10:26:40.797000 Soon™️ 😛 --- From andre.almeida.collabora.com Date 2021-09-22T10:27:05.339000 how do you folks bisect gcc? I tried another day, but the build was broke in some commmits :( --- From joseph.codesourcery.com Date 2021-09-22T10:27:47.576000 Only-bot-can-push-to-master is also problematic with email workflows when a patch is too big to post to the list (e.g. large generated files - you can post all the rest of the patch, but what's posted then isn't exactly what's committed). --- From plumbers.wildebeest.org Date 2021-09-22T10:27:50.161000 > <@fweimer.redhat.com:lpc.events> > <@plumbers.wildebeest.org:lpc.events> so how about only allowing the bot to commit to the main branch when it passes tests and is approved? Then what gets committed is always wat was approved? That's the Gerrit model. When done over email, authentication will be hard. agreed. That is also basically the problem with the gccrs model. Only people with a github account can get their contributions tested/approved/committed --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:28:10.946000 However, not everyone in glibc uses Reviewed-by since it's not really enforced in any way. --- From ngompa13.gmail.com Date 2021-09-22T10:28:21.902000 I honestly think this is one of the bigger reasons people prefer the PR model, because it's generally more tricky to sneakily intercept and modify changes and review feedback is consolidated in a way that is easily followed. --- From dje.gcc.gmail.com Date 2021-09-22T10:28:35.093000 > <@andre.almeida.collabora.com:lpc.events> how do you folks bisect gcc? I tried another day, but the build was broke in some commmits :( CI/CD will allow wider testing to prevent broken revisions. --- From ngompa13.gmail.com Date 2021-09-22T10:28:36.780000 * I honestly think this is one of the bigger reasons people prefer the PR model, because it's generally more tricky to sneakily intercept and modify changes and review feedback is consolidated in a way that is easily followed. --- From plumbers.wildebeest.org Date 2021-09-22T10:29:50.613000 But we could maybe install a sourcehut instance on sourceware, so everybody can easily have their own git branches and link their email patches to the actual tree/commit. --- From wschmidt.us.ibm.com Date 2021-09-22T10:30:02.638000 Do the Steering Committee / Stewards see directions where its desirable for the toolchain to improve, but we don't yet have sufficient focus? --- From dje.gcc.gmail.com Date 2021-09-22T10:31:05.635000 > <@wschmidt.us.ibm.com:lpc.events> Do the Steering Committee / Stewards see directions where its desirable for the toolchain to improve, but we don't yet have sufficient focus? Focus or resources? --- From wilson.tuliptree.org Date 2021-09-22T10:31:07.829000 the GNU project would like to see ObjC improvements for GNUstep --- From joseph.codesourcery.com Date 2021-09-22T10:31:29.907000 Variant: push the "OK" button but with an option "run the testsuite first in case the original submitter didn't do so". --- From philip.herron.embecosm.com Date 2021-09-22T10:31:52.491000 > <@plumbers.wildebeest.org:lpc.events> That's the Gerrit model. When done over email, authentication will be hard. > > agreed. That is also basically the problem with the gccrs model. Only people with a github account can get their contributions tested/approved/committed I agree with you Mark, Its annoying because the github tools have made it easier for people to get involved, it would be nice if there was an open source alternative that gave us similar level of integration, that allowed us to be closer to GCC processes --- From ngompa13.gmail.com Date 2021-09-22T10:31:53.556000 I would love to see a Pagure instance on sourceware for that kind of thing, and we could have email and PR workflows --- From plumbers.wildebeest.org Date 2021-09-22T10:31:59.041000 BTW. There are mirrors of the sourceware projects on sourcehut, which does make sending in patches really easy: https://sr.ht/projects/~sourceware/ --- From wschmidt.us.ibm.com Date 2021-09-22T10:32:01.051000 > > <@wschmidt.us.ibm.com:lpc.events> Do the Steering Committee / Stewards see directions where its desirable for the toolchain to improve, but we don't yet have sufficient focus? > > Focus or resources? Either. Where would we try to steer additional resources in an ideal world? --- From jeffreyalaw.gmail.com Date 2021-09-22T10:32:04.457000 Andre: the tree should always build with most targets, what problems did you run into --- From iain.sandoe.co.uk Date 2021-09-22T10:32:17.821000 Jim - are there specific PRs for these ? - if so please CC me on them --- From dje.gcc.gmail.com Date 2021-09-22T10:32:25.259000 > <@jeffreyalaw.gmail.com:lpc.events> Andre: the tree should always build with most targets, what problems did you run into There has been a lot of breakage recently. --- From alehotsky.codegentllc.com Date 2021-09-22T10:32:35.055000 I've used Gerrit at a client site as part of a gcc upgrade; it's good automation for tracking whether all the bots have run successfully, and required reviews have happened. It's annoying because I had to often nag the guys with the 'commit' privileges to push the button after all the reviews were done. --- From jeffreyalaw.gmail.com Date 2021-09-22T10:34:16.770000 would it make sense if anyone could push the button *if* there's a Reviewed-By tag from a global reviwer? --- From jeffreyalaw.gmail.com Date 2021-09-22T10:34:20.887000 Alan:^^ --- From andre.almeida.collabora.com Date 2021-09-22T10:34:29.877000 > <@jeffreyalaw.gmail.com:lpc.events> Andre: the tree should always build with most targets, what problems did you run into I was trying to build x86 with default options, bisecting from 10.3 -> 11.1 --- From wilson.tuliptree.org Date 2021-09-22T10:35:06.848000 just a general request for ObjC v2 features, there is some commentary on the gnustep web site but I probably no gcc bug report --- From jeffreyalaw.gmail.com Date 2021-09-22T10:35:25.486000 I regularly have to bisect 10.2 to 11.2 and find it works very consistently, at least on x86. I don't have to do that on other targets --- From ngompa13.gmail.com Date 2021-09-22T10:35:37.165000 is GNUStep still alive? --- From jwakely.redhat.com Date 2021-09-22T10:35:45.865000 > <@andre.almeida.collabora.com:lpc.events> how do you folks bisect gcc? I tried another day, but the build was broke in some commmits :( Several terabytes worth of already built gcc binaries! Git bisect does allow you to skip revisions that are known to not build. It's a powerful tool, but takes a bit of practice to use really quickly and smoothly on a complex codebase like gcc --- From philip.herron.embecosm.com Date 2021-09-22T10:35:47.708000 I personally find github/bitbucket things make it easier to review code, since there is a way to approve things with a button and add reviewers with a conversation system. --- From iain.sandoe.co.uk Date 2021-09-22T10:36:01.265000 Jim Wilson: there's some work going on to allow NeXT v2 on a 32 bit host --- From wilson.tuliptree.org Date 2021-09-22T10:36:18.198000 I'm not sure if GNUstep is still interesting, but rms still cares about it --- From iain.sandoe.co.uk Date 2021-09-22T10:36:46.332000 I'd love to see some specific PRs - there is a lot to do to catch up with the "reference implementation" .. prioritising would help --- From ngompa13.gmail.com Date 2021-09-22T10:37:00.164000 > <@philip.herron.embecosm.com:lpc.events> I personally find github/bitbucket things make it easier to review code, since there is a way to approve things with a button and add reviewers with a conversation system. If there was a pagure system, that could be done, and still support people having their git trees elsewhere (since it supports remote PRs from arbitrary git servers). --- From codonell.redhat.com Date 2021-09-22T10:37:03.176000 https://sourceware.org/glibc/wiki/PatchworkReviewMeetings --- From brobecke.adacore.com Date 2021-09-22T10:38:06.723000 Even if not officially "qualified", I think your opinion is still going to be valuable. --- From dje.gcc.gmail.com Date 2021-09-22T10:38:15.927000 > <@wschmidt.us.ibm.com:lpc.events> > > <@wschmidt.us.ibm.com:lpc.events> Do the Steering Committee / Stewards see directions where its desirable for the toolchain to improve, but we don't yet have sufficient focus? > > Focus or resources? Either. Where would we try to steer additional resources in an ideal world? Without financial or developer resources, the leaders of the GNU Toolchain projects only can cajole and promote projects of interest. --- From ngompa13.gmail.com Date 2021-09-22T10:39:05.477000 I guess I don't particularly matter since I've never managed to get over the hurdle of directly contributing to the GNU toolchain :( --- From dje.gcc.gmail.com Date 2021-09-22T10:39:07.380000 Rust is a very important component with a lot of low-hanging fruit. --- From ngompa13.gmail.com Date 2021-09-22T10:39:20.919000 admittedly, the CAA was a problem, but that's not a thing anymore now, I think? --- From dje.gcc.gmail.com Date 2021-09-22T10:39:42.914000 Also, as we heard yesterday in the OpenMP/OpenACC talk, additional resources for Graphite and Polyhedral loop optimization would be useful. --- From plumbers.wildebeest.org Date 2021-09-22T10:40:27.596000 guix is really, really cool. IMHO. --- From ngompa13.gmail.com Date 2021-09-22T10:40:27.866000 I'm really looking forward to Rust being fully supported in GCC --- From jeffreyalaw.gmail.com Date 2021-09-22T10:40:44.349000 Presumably responding to Bill? Yes, I think starting to carve up the Graphiphe infrastructure would be a good place to invest --- From ngompa13.gmail.com Date 2021-09-22T10:40:45.964000 even though Rust is an ugly language 😛 --- From plumbers.wildebeest.org Date 2021-09-22T10:40:58.985000 also fun to build gcc because guix doesn't have /usr/include which makes fixincludes unhappy :) --- From wilson.tuliptree.org Date 2021-09-22T10:41:07.169000 you probably have to talk to the GNUstep team, there is a little info here http://wiki.gnustep.org/index.php/Objective-C_Compiler_and_Runtime_FAQ --- From wilson.tuliptree.org Date 2021-09-22T10:41:34.277000 the GNU project is also interested in a Rust GCC front end, but there are people working on that --- From dje.gcc.gmail.com Date 2021-09-22T10:41:52.725000 Also, Andrew Pinski has done a great job to clean up GCC Bugzilla. A great opportunity for a new member of the GCC community would be Bugzilla triage, which was the standard on-boarding process for Cygnus back in the day. --- From ngompa13.gmail.com Date 2021-09-22T10:42:13.233000 speaking as someone who does GCC stuff in a bunch of smaller distros, `-O3` still scares me :) --- From joseph.codesourcery.com Date 2021-09-22T10:43:26.221000 We could probably do with more Bugzilla triage in glibc as well. There must be plenty of bugs that are duplicates, or fixed but not yet closed, or invalid, or very easy to fix. --- From dje.gcc.gmail.com Date 2021-09-22T10:43:45.872000 And we would welcome more blog posts and articles about GCC and the GNU Toolchain. User testimonials: How is the GNU Toolchain effective for end users in different business segments? --- From jeffreyalaw.gmail.com Date 2021-09-22T10:44:12.947000 Neal: is -O3 or -flto more scary to you? --- From plumbers.wildebeest.org Date 2021-09-22T10:44:57.112000 BTW. Also trying to just checkout gcc git is a little intimidating. Just doing a fresh clone you need to pull 1GB... Which is a barrier to entry. It would be good to have a smaller (shallow) newbie gcc.git repo. --- From dje.gcc.gmail.com Date 2021-09-22T10:45:24.648000 One can use git to only pull main/master and shallow --- From richard.guenther.gmail.com Date 2021-09-22T10:45:31.752000 can't you tell git to just fetch the "top"? --- From jeffreyalaw.gmail.com Date 2021-09-22T10:45:40.218000 yea, shallow clone --- From plumbers.wildebeest.org Date 2021-09-22T10:45:58.714000 yes, you can, but you have to remember/know that is necessary --- From jakub.redhat.com Date 2021-09-22T10:46:00.652000 --depth 1 --- From dje.gcc.gmail.com Date 2021-09-22T10:46:01.594000 --single-branch --depth 1 --- From richard.guenther.gmail.com Date 2021-09-22T10:46:18.175000 though even that's going to be a few hundred MS --- From richard.guenther.gmail.com Date 2021-09-22T10:46:21.305000 MB even --- From nix.esperi.org.uk Date 2021-09-22T10:46:27.664000 These days you can also tell it not to pull bigger blobs until needed(but this is still a bit embryonic) --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:46:34.271000 > <@plumbers.wildebeest.org:lpc.events> BTW. Also trying to just checkout gcc git is a little intimidating. Just doing a fresh clone you need to pull 1GB... Which is a barrier to entry. It would be good to have a smaller (shallow) newbie gcc.git repo. The linux repo is 3.8GB. I don't think that's a barrier to entry :) --- From jeffreyalaw.gmail.com Date 2021-09-22T10:46:41.252000 i used to do it in the jenkins system since it originally pulled the repo every build --- From jason237 Date 2021-09-22T10:46:51.727000 --depth implies --single-branch --- From joseph.codesourcery.com Date 2021-09-22T10:47:13.575000 Even excluding .git completely, the GCC sources are over 900MB. --- From plumbers.wildebeest.org Date 2021-09-22T10:47:32.199000 I think it is a (maybe small) barrier to entry. gcc for example is 10 times bigger than glibc or binutils-gdb. --- From iain.sandoe.co.uk Date 2021-09-22T10:47:42.841000 but on the plus side - it means someone else fixed a problem :) --- From plumbers.wildebeest.org Date 2021-09-22T10:48:36.830000 It might not be a giant issue, but I did notice recently when setting up a gcc setup on a new machine it really takes much much longer than any other project --- From joseph.codesourcery.com Date 2021-09-22T10:48:42.650000 We document the tricks for sharing .git history between multiple checkouts, but that's an advanced user thing, not so much for new contributors who probably only have one checkout. --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:49:02.763000 > <@plumbers.wildebeest.org:lpc.events> I think it is a (maybe small) barrier to entry. gcc for example is 10 times bigger than glibc or binutils-gdb. What's probably more intimidating (with respect to size) is the breadth of features in the source base. Some projects deal with it by doing subprojects (e.g. clang, compiler-rt, etc.) but I'm personally not a great fan of it. --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:49:39.751000 gdb was also among the first to adopt patchwork with glibc. --- From plumbers.wildebeest.org Date 2021-09-22T10:49:54.243000 Right, maybe we could have a default gcc.git that just contains the master branch from gcc5 and later. --- From fweimer.redhat.com Date 2021-09-22T10:50:12.357000 I think we were using Gerrit wrong, like not giving -1 for patches that needed changes. This defeated the built-in tracking in Gerrit. --- From jwakely.redhat.com Date 2021-09-22T10:50:30.182000 Mark --- From joseph.codesourcery.com Date 2021-09-22T10:50:32.935000 And LLVM also uses a git monorepo with almost all those subprojects in it. --- From jwakely.redhat.com Date 2021-09-22T10:50:35.752000 oops --- From plumbers.wildebeest.org Date 2021-09-22T10:50:57.088000 But yes, then knowing you really want to build --without-bootstrap --disabled-shared --enable-languages=please-not-everything is probably more of a deterrent :) --- From jwakely.redhat.com Date 2021-09-22T10:51:02.700000 Mark: anon gcc check outs are throttled, which makes it very slow. Much faster to clone form the unofficial mirror on github --- From jwakely.redhat.com Date 2021-09-22T10:51:34.499000 (unless you have a ssh key on sourceware and use it for the clone) --- From jeffreyalaw.gmail.com Date 2021-09-22T10:51:41.933000 Mark: yea, that's probably a much larger issue than the size of the repo --- From jwakely.redhat.com Date 2021-09-22T10:52:14.333000 we could add "small gcc tips" to the gcc.gnu.org/wiki/InstallingGCC page --- From jwakely.redhat.com Date 2021-09-22T10:52:27.907000 or one of the pages with beginner info --- From richard.guenther.gmail.com Date 2021-09-22T10:52:44.284000 I think it's already there --- From plumbers.wildebeest.org Date 2021-09-22T10:52:45.409000 https://git.sr.ht/~sourceware/gcc is also nice for anon checkouts (or your own fork on sourcehut). It does feel slightly faster than sourceware. --- From nix.esperi.org.uk Date 2021-09-22T10:52:55.680000 > <@jwakely.redhat.com:lpc.events> (unless you have a ssh key on sourceware and use it for the clone) Oh! I was asuming the additional computational load incurred by tunnelling over ssh made ssh cloning less desirable than anonymous, if the option was available. I had it backwards :) --- From mricon Date 2021-09-22T10:53:00.943000 One word of caution is that shallow clones are hard on the server side. --- From jwakely.redhat.com Date 2021-09-22T10:53:25.034000 yeah, it has to repack a new set of objects for each shallow clone --- From jeffreyalaw.gmail.com Date 2021-09-22T10:53:49.681000 oh, didn't know that about shallow, good to remember (I don't use it anymore) --- From mricon Date 2021-09-22T10:53:53.286000 and if the repo is large, that pack hangs in RAM while the client downloads it --- From mricon Date 2021-09-22T10:54:19.563000 so, a shallow clone of a 900MB repo means your git-daemon eats up 1GB for each clone :) --- From plumbers.wildebeest.org Date 2021-09-22T10:54:33.477000 urgh --- From jeffreyalaw.gmail.com Date 2021-09-22T10:54:36.530000 Nick A: Definitely better to use authenticated access... --- From mricon Date 2021-09-22T10:54:40.930000 throttling it speed-wise actually makes things worse --- From mricon Date 2021-09-22T10:54:49.102000 you want to send it out as fast as you can so you can free up the rAM --- From jeffreyalaw.gmail.com Date 2021-09-22T10:55:05.132000 Though we could look at the throttling. I don't know if we've reviewed when/how that kicks in for years --- From jwakely.redhat.com Date 2021-09-22T10:55:06.686000 the throttling for anon is to stop idiotic web crawlers DOSing the server --- From jwakely.redhat.com Date 2021-09-22T10:55:33.739000 I think it was reviewed when moving from svn to git, but fche would know for sure --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T10:55:53.488000 I think Simon's point is that *patchwork* doesn't always read patches correctly. --- From mricon Date 2021-09-22T10:55:56.341000 (just sharing my experience managing git.kernel.org. :)) --- From jwakely.redhat.com Date 2021-09-22T10:56:06.226000 thanks! --- From jeffreyalaw.gmail.com Date 2021-09-22T10:56:08.841000 definitely helpful Konstantin.... --- From plumbers.wildebeest.org Date 2021-09-22T10:56:56.282000 For 5 minutes this might be too "big" a question, but how is the relationship of the steering committees with the FSF and how do the stering committees get new frsh members? --- From fweimer.redhat.com Date 2021-09-22T10:58:11.133000 Right, recovering state from email is somewhat questionable. --- From mricon Date 2021-09-22T10:58:27.713000 you can require base-commit: data for patch submissions --- From dje.gcc.gmail.com Date 2021-09-22T10:58:33.504000 > <@plumbers.wildebeest.org:lpc.events> For 5 minutes this might be too "big" a question, but how is the relationship of the steering committees with the FSF and how do the stering committees get new frsh members? This is a good question, but should have been asked earlier in the meting. --- From wschmidt.us.ibm.com Date 2021-09-22T10:59:16.774000 We can ask it during the glibc BoF since we did the glibc BoF during this slot. :-) --- From wilson.tuliptree.org Date 2021-09-22T10:59:17.905000 On the gcc side, I think I am on e of the few that still talks to rms, but I am trying to keep commnication open. --- From plumbers.wildebeest.org Date 2021-09-22T10:59:20.630000 sorry, should have asked earlier. --- From alves.ped.gmail.com Date 2021-09-22T10:59:48.830000 git has this "format.useAutoBase" setting, which when enabled, git format-patch/send-email includes the base commit your commit applies on top of. --- From mricon Date 2021-09-22T10:59:57.229000 > <@fweimer.redhat.com:lpc.events> Right, recovering state from email is somewhat questionable. it's not great, but it's possible if a diff is sent with git indexes --- From alves.ped.gmail.com Date 2021-09-22T11:00:09.882000 I've been using it for months, but I've not seen anyone else use it. --- From mricon Date 2021-09-22T11:00:18.071000 > <@alves.ped.gmail.com:lpc.events> git has this "format.useAutoBase" setting, which when enabled, git format-patch/send-email includes the base commit your commit applies on top of. yes, but this requires that the branch is checkout as tracking --- From ngompa13.gmail.com Date 2021-09-22T11:00:24.003000 > <@jeffreyalaw.gmail.com:lpc.events> Neal: is -O3 or -flto more scary to you? `-O3`, it causes successful builds leading to broken programs :D --- From mricon Date 2021-09-22T11:00:37.283000 I do heartily agree that useAutoBase is great --- From joseph.codesourcery.com Date 2021-09-22T11:00:42.840000 Patch review is a general problem for active projects in general, not at all limited to the GNU toolchain. --- From philip.herron.embecosm.com Date 2021-09-22T11:00:46.005000 Thanks to GCC community for being so kind about the gccrs effort hope you all have a great rest of conference :) --- From plumbers.wildebeest.org Date 2021-09-22T11:00:47.878000 I am happy with all the patch review, ci/cd, bots talk. --- From mricon Date 2021-09-22T11:00:51.271000 even easier for when there aren't 50 different trees to consider. :) --- From jeffreyalaw.gmail.com Date 2021-09-22T11:01:00.838000 Neal: Any option could do that. -O2 does get the most testing, which tends to make it more stable --- From joseph.codesourcery.com Date 2021-09-22T11:01:09.122000 Projects using pull request workflows can have huge numbers of open unreviewed PRs. --- From jemarch.gnu.org Date 2021-09-22T11:01:19.269000 Philip Herron: thanks to you for your nice work. Many people are exciting about the rust frontend --- From alves.ped.gmail.com Date 2021-09-22T11:01:23.627000 > <@mricon:chat.lfx.linuxfoundation.org> > <@alves.ped.gmail.com:lpc.events> git has this "format.useAutoBase" setting, which when enabled, git format-patch/send-email includes the base commit your commit applies on top of. yes, but this requires that the branch is checkout as tracking yeah, you'll do the occasional "git branch --set-upstream-to=upstream/master" to that the base hash is correct. --- From fweimer.redhat.com Date 2021-09-22T11:01:41.362000 > <@mricon:chat.lfx.linuxfoundation.org> yes, but this requires that the branch is checkout as tracking Why is that? `git format-patch` already knows the parent of the first generated patch? --- From alves.ped.gmail.com Date 2021-09-22T11:02:07.134000 leaving for another meeting. cheers! --- From sarah.cook.embecosm.com Date 2021-09-22T11:02:13.090000 You will need to screen share Maxim --- From mricon Date 2021-09-22T11:03:38.292000 > <@fweimer.redhat.com:lpc.events> Why is that? `git format-patch` already knows the parent of the first generated patch? I guess because you may want to format-patch against any number of other branches, so git needs to know against which branch you want the diffs --- From dmalcolm.redhat.com Date 2021-09-22T11:03:59.871000 Is Maxim muted? --- From dmalcolm.redhat.com Date 2021-09-22T11:04:34.411000 Looking and sounding good --- From tschwinge Date 2021-09-22T11:04:39.857000 F5 --- From fweimer.redhat.com Date 2021-09-22T11:11:38.371000 Ahh, this ABI explains why Xcode switched the default to `-Werror=implicit-function-declarations`. --- From iain.sandoe.co.uk Date 2021-09-22T11:12:41.860000 I suspect it was accidental - LLVM makes it very easy to have different layouts for variadic and "regular" calls... --- From iain.sandoe.co.uk Date 2021-09-22T11:12:59.010000 but it's in the wild ... so --- From nix.esperi.org.uk Date 2021-09-22T11:13:53.008000 So there's always an executable, writable page present in this implementation? bit of a target for attackers --- From iain.sandoe.co.uk Date 2021-09-22T11:14:19.550000 no - it's not permitted to be writeable and executable at the same time --- From jakub.redhat.com Date 2021-09-22T11:14:21.262000 so will it leak trampolines on longjmp out of a function with those trampolines? --- From plumbers.wildebeest.org Date 2021-09-22T11:14:36.887000 darn, I had a warning for telling when a nested function needed a trampoline or not. But never finished it :{ --- From nix.esperi.org.uk Date 2021-09-22T11:14:38.106000 oh right, that wasn'tclear --- From iain.sandoe.co.uk Date 2021-09-22T11:15:17.056000 at present, yes it could leak trampolines if you long jump over the cleanups --- From jakub.redhat.com Date 2021-09-22T11:16:21.950000 For exceptions, it could be handled easily if it could be known at gimplification time that the cleanup will be needed --- From segher.kernel.crashing.org Date 2021-09-22T11:17:38.400000 maybe something with `attribute((cleanup))` can be done? --- From segher.kernel.crashing.org Date 2021-09-22T11:18:43.327000 it runs stuff whenever the frame goes away --- From iain.sandoe.co.uk Date 2021-09-22T11:18:57.924000 we're wrapping nested function pointers in a cleanup - so some of tis is available already --- From segher.kernel.crashing.org Date 2021-09-22T11:19:25.095000 ah cool --- From iain.sandoe.co.uk Date 2021-09-22T11:20:08.369000 the tricky bit is that if you have split stacks (e.g. calling in some funky way from go) .. you can't use the stack high water mark to know that someone has long-jumped past a cleaup --- From nix.esperi.org.uk Date 2021-09-22T11:20:53.426000 IIRC, go doesn't use split stacks any more;does anyone? --- From iain.sandoe.co.uk Date 2021-09-22T11:20:58.485000 (or perhaps a split signal stack) .. for a mono-stack, we believe you can apply a secondary test to cleanup based on the high-water mark, --- From segher.kernel.crashing.org Date 2021-09-22T11:21:32.548000 Nick Alcock: many existing systems still use it --- From nix.esperi.org.uk Date 2021-09-22T11:21:42.018000 but yeah sigaltstack and things like that are still a problem here --- From segher.kernel.crashing.org Date 2021-09-22T11:22:30.407000 have those things __ever__ worked together with nested functions? --- From segher.kernel.crashing.org Date 2021-09-22T11:22:41.868000 * have those things __ever__ worked together with nested functions? --- From iain.sandoe.co.uk Date 2021-09-22T11:24:44.661000 we're also a bit wary of fibres - which already have some of these properties (and have trouble even with TLS pointer-caching) --- From nix.esperi.org.uk Date 2021-09-22T11:24:59.987000 I do wonder what the effect of this is on the single-threaded workload case, since users are often going to be waiting for such things to finish. --- From fweimer.redhat.com Date 2021-09-22T11:25:34.197000 > <@segher.kernel.crashing.org:lpc.events> have those things __ever__ worked together with nested functions? The trampoline is valid as long as the static chain pointer is valid, so I don't see a particular problem with trampoline management here. --- From nix.esperi.org.uk Date 2021-09-22T11:25:51.314000 One thread under high load might well want to use all the shared cache, and using it would cost nothing if no other cores are active --- From joseph.codesourcery.com Date 2021-09-22T11:26:17.484000 This reminds me of past concerns about use of AVX-512 in string functions serving to reduce processor speed for other processes (because max speed was slower when AVX-512 was in use at all on the processor). --- From nix.esperi.org.uk Date 2021-09-22T11:28:17.249000 But if the single thread is the only live thread, using all the cache is *not* overuse! --- From nix.esperi.org.uk Date 2021-09-22T11:29:26.446000 So... non-cloud environments get penalized by this? I'm thinking desktops, chromebooks, etc. Users waiting for one thread to come back. --- From jeffreyalaw.gmail.com Date 2021-09-22T11:31:05.554000 THe shared L3 cache is the key feature and I don't think that's common on the desktops/laptops (yet) --- From jeffreyalaw.gmail.com Date 2021-09-22T11:31:20.268000 so one might argue the tuning should changed based on the cpuid --- From nix.esperi.org.uk Date 2021-09-22T11:32:50.018000 Not sure about that. Both my most recent desktops have shared L3 (one Intel, one AMD). Even the Chromebook I'm typing this on has one! CPUID tuning seems like a very good idea for autotuning this, since server/desktop parts are often distinguished that way. --- From ndesaulniers.google.com Date 2021-09-22T11:33:04.532000 I don't think LLVM has call used registers wiping on return --- From keescook.chromium.org Date 2021-09-22T11:33:08.719000 (clang doesn't have call-used registers yet) --- From keescook.chromium.org Date 2021-09-22T11:33:14.216000 but it will soon :) --- From ndesaulniers.google.com Date 2021-09-22T11:33:25.629000 yeah? let's see some patches :P --- From keescook.chromium.org Date 2021-09-22T11:33:34.197000 I await Bill's work :) --- From siddhesh.poyarekar.gmail.com Date 2021-09-22T11:34:38.377000 > <@jeffreyalaw.gmail.com:lpc.events> so one might argue the tuning should changed based on the cpuid It shouldn't be too hard to set the x86_non_temporal_threshold tunable based on cpuid. --- From glider.google.com Date 2021-09-22T11:37:31.201000 How does call registers wiping perform compared to control-flow integrity instrumentation provided by Clang? --- From ndesaulniers.google.com Date 2021-09-22T11:37:39.482000 Q: what if for my ROP gadget I need to write a NULL ptr into a pointer param? 0:-) I guess I should read that paper! --- From patmcgeh.flash.net Date 2021-09-22T11:37:43.915000 will still need to have a suitable default for cpuid's that are created after library was built (i.e. new mobile/desktop/server chips) --- From keescook.chromium.org Date 2021-09-22T11:38:06.808000 Nick: nothing's perfect. ;) --- From nix.esperi.org.uk Date 2021-09-22T11:38:44.095000 Another use for nonzero null pointer constants! --- From ndesaulniers.google.com Date 2021-09-22T11:38:59.808000 I wonder if aarch64 PAC helps? pointer wouldn't be signed? --- From keescook.chromium.org Date 2021-09-22T11:39:01.699000 > <@glider.google.com:lpc.events> How does call registers wiping perform compared to control-flow integrity instrumentation provided by Clang? ROP tends to get used for backward-edge. Clang CFI is covers forward-edge. --- From glider.google.com Date 2021-09-22T11:39:09.058000 > <@ndesaulniers.google.com:lpc.events> Q: what if for my ROP gadget I need to write a NULL ptr into a pointer param? 0:-) I guess I should read that paper! guess it's still highly unlikely that none of your gadgets rely on registers :) --- From patmcgeh.flash.net Date 2021-09-22T11:39:32.881000 with register clearing, the ptr will always be null with or without an attacker --- From keescook.chromium.org Date 2021-09-22T11:39:57.103000 > <@ndesaulniers.google.com:lpc.events> I wonder if aarch64 PAC helps? pointer wouldn't be signed? SCS and PAC help against backward edge, yes. --- From ndesaulniers.google.com Date 2021-09-22T11:40:02.826000 cool, there's the answer to my Q --- From ndesaulniers.google.com Date 2021-09-22T11:42:03.503000 skip is nice to have; there will be places (hopefully very few) in the kernel where we may need to turn this off. --- From glider.google.com Date 2021-09-22T11:43:00.228000 I'd rather have this opt-out as a function attribute probably. --- From nix.esperi.org.uk Date 2021-09-22T11:43:11.359000 in glibc too -- probably mostly the same places that need to inhibit the stack-protector canary. --- From keescook.chromium.org Date 2021-09-22T11:43:47.584000 Here's the kernel commit, BTW: https://git.kernel.org/linus/a82adfd5c7cb4b8bb37ef439aed954f9972bb618 --- From lf-wiki-id.bigeasy.linutronix.de Date 2021-09-22T11:44:17.459000 thank you, I was about to ask :) --- From ndesaulniers.google.com Date 2021-09-22T11:44:17.948000 Kees were there parent patches that used skip anywhere? --- From keescook.chromium.org Date 2021-09-22T11:45:59.351000 > <@ndesaulniers.google.com:lpc.events> Kees were there parent patches that used skip anywhere? Nope; currently a big hammer. :) --- From ndesaulniers.google.com Date 2021-09-22T11:46:48.079000 but it boots? --- From keescook.chromium.org Date 2021-09-22T11:47:01.688000 yeah, totally --- From ndesaulniers.google.com Date 2021-09-22T11:47:07.356000 ship it! --- From keescook.chromium.org Date 2021-09-22T11:47:14.476000 virtually no performance change. --- From keescook.chromium.org Date 2021-09-22T11:47:35.629000 see above commit for details on perf/image-size changes --- From ndesaulniers.google.com Date 2021-09-22T11:49:23.515000 -Wsometimes-uninitialized and -Wmaybe-uninitialized, too? --- From glider.google.com Date 2021-09-22T11:49:44.798000 To be precise, AddressSanitizer does not detect uses of uninitialized memory, only MemorySanitizer does. --- From diane2332.gmail.com Date 2021-09-22T11:50:01.488000 gcc doesn't support -fsanitize=memory, unfortunately --- From glider.google.com Date 2021-09-22T11:50:30.010000 > <@diane2332.gmail.com:lpc.events> gcc doesn't support -fsanitize=memory, unfortunately also true --- From richard.guenther.gmail.com Date 2021-09-22T11:50:57.900000 we need a NaT on memory cells ;) --- From richard.guenther.gmail.com Date 2021-09-22T11:52:40.038000 The Microsoft compiler is the same as clang, no? --- From keescook.chromium.org Date 2021-09-22T11:53:07.166000 > <@richard.guenther.gmail.com:lpc.events> we need a NaT on memory cells ;) I would love this. :) Each "ret" could auto-invalidate the stack frame, etc. --- From ndesaulniers.google.com Date 2021-09-22T11:53:08.505000 You're thinking of ICX (nee ICC). --- From nix.esperi.org.uk Date 2021-09-22T11:53:19.135000 hmm, is this in glibc yet... no; I feel a patch coming on --- From richard.guenther.gmail.com Date 2021-09-22T11:54:11.258000 Itanic had NaT on registers, so there's precendent! (for yet another Intel opportunity to mess up ;)) --- From keescook.chromium.org Date 2021-09-22T11:54:20.563000 > <@nix.esperi.org.uk:lpc.events> hmm, is this in glibc yet... no; I feel a patch coming on Yeah, -ftrivial-auto-var-init=zero needs to be part of -Wall. ;) --- From ndesaulniers.google.com Date 2021-09-22T11:54:30.458000 Does clang have the uninitialized attr? --- From keescook.chromium.org Date 2021-09-22T11:54:38.883000 Yup --- From glider.google.com Date 2021-09-22T11:54:42.140000 > <@ndesaulniers.google.com:lpc.events> Does clang have the uninitialized attr? Yes. --- From fweimer.redhat.com Date 2021-09-22T11:55:17.737000 With `__attribute__ ((uninitialized))`, can we start warning on variable auto-assignment now (`int x = x;`)? --- From diane2332.gmail.com Date 2021-09-22T11:55:26.597000 Maybe there should be a new flag for security, like -fsecurity=... so that lots of useful things can be enabled all at once. And I think maybe it should be on by default. --- From keescook.chromium.org Date 2021-09-22T11:56:00.736000 > <@fweimer.redhat.com:lpc.events> With `__attribute__ ((uninitialized))`, can we start warning on variable auto-assignment now (`int x = x;`)? The kernel removed all auto-assignments. --- From nix.esperi.org.uk Date 2021-09-22T11:56:39.830000 > <@diane2332.gmail.com:lpc.events> Maybe there should be a new flag for security, like -fsecurity=... so that lots of useful things can be enabled all at once. And I think maybe it should be on by default. They do have compatibility implications; glibc likely needs changes before the call-used clearing can go in, for instance. --- From keescook.chromium.org Date 2021-09-22T11:56:43.873000 > <@diane2332.gmail.com:lpc.events> Maybe there should be a new flag for security, like -fsecurity=... so that lots of useful things can be enabled all at once. And I think maybe it should be on by default. Ubuntu's gcc does this by default (but yes, I'd love an upstream way to do this.) --- From jeremy.bennett.embecosm.com Date 2021-09-22T11:56:46.238000 > <@diane2332.gmail.com:lpc.events> Maybe there should be a new flag for security, like -fsecurity=... so that lots of useful things can be enabled all at once. And I think maybe it should be on by default. Nice idea, but I fear that it would end up breaking a lot of existing code bases. Things like this generally need to be off by default for a long time. --- From glider.google.com Date 2021-09-22T11:56:57.157000 Question: Clang performs locals initialization in the frontend. How is this done in GCC? Also, do you have any performance data for GCC-implemented auto-initialization? --- From keescook.chromium.org Date 2021-09-22T11:57:15.944000 > <@nix.esperi.org.uk:lpc.events> > <@diane2332.gmail.com:lpc.events> Maybe there should be a new flag for security, like -fsecurity=... so that lots of useful things can be enabled all at once. And I think maybe it should be on by default. They do have compatibility implications; glibc likely needs changes before the call-used clearing can go in, for instance. Why? What caller is depending on a call-used register? --- From jeremy.bennett.embecosm.com Date 2021-09-22T11:57:45.430000 Question: Does the register erasure work across longjump? Or C++ throwing exceptions. --- From diane2332.gmail.com Date 2021-09-22T11:58:02.191000 Easy enough to turn off. --- From keescook.chromium.org Date 2021-09-22T11:58:42.731000 > <@jeremy.bennett.embecosm.com:lpc.events> > <@diane2332.gmail.com:lpc.events> Maybe there should be a new flag for security, like -fsecurity=... so that lots of useful things can be enabled all at once. And I think maybe it should be on by default. Nice idea, but I fear that it would end up breaking a lot of existing code bases. Things like this generally need to be off by default for a long time. Gentoo paved the path here, but Ubuntu made most security features enabled by default. As a result, the entire Debian software base has been fixed for those kinds of problems about ten years ago. :) --- From nix.esperi.org.uk Date 2021-09-22T11:59:29.386000 There was at least one place in the x86 mutex implementation depending on a register not being clobbered across a function call; the register happened to be %rax, so I spotted it in the stack-protector-all work, but if it was true of that register, it might be true of others... --- From ndesaulniers.google.com Date 2021-09-22T11:59:51.938000 Changing the implicit compiler defaults makes for hard to reproduce bug reports. Do we not have a warning for self assignment? https://godbolt.org/z/PYTohPn76 --- From keescook.chromium.org Date 2021-09-22T11:59:52.649000 > <@nix.esperi.org.uk:lpc.events> There was at least one place in the x86 mutex implementation depending on a register not being clobbered across a function call; the register happened to be %rax, so I spotted it in the stack-protector-all work, but if it was true of that register, it might be true of others... Eek :) --- From jeremy.bennett.embecosm.com Date 2021-09-22T12:00:17.255000 > <@keescook.chromium.org:lpc.events> Nice idea, but I fear that it would end up breaking a lot of existing code bases. Things like this generally need to be off by default for a long time. > > Gentoo paved the path here, but Ubuntu made most security features enabled by default. As a result, the entire Debian software base has been fixed for those kinds of problems about ten years ago. :) Well there would be nothing to stop Linux distros setting alternative flags for the compiler they ship. --- From nix.esperi.org.uk Date 2021-09-22T12:00:51.016000 Obviously all such places are bugs, but it's easy to introduce them in asm by mistake over time --- From diane2332.gmail.com Date 2021-09-22T12:00:53.308000 If the code fails with these features, it is buggy. --- From glider.google.com Date 2021-09-22T12:01:04.741000 Thanks Jose! --- From diane2332.gmail.com Date 2021-09-22T12:01:20.366000 All code should be run through the Sanitizers before release. --- From ndesaulniers.google.com Date 2021-09-22T12:01:48.774000 there's definitely places in the kernel where __attribute__((always_inline)) is _needed_ for runtime correctness; places that generally violate the calling conventions (inline assembly shenanigans) --- From nix.esperi.org.uk Date 2021-09-22T12:02:26.330000 glibc too, sigreturn is evil --- From jeremy.bennett.embecosm.com Date 2021-09-22T12:04:52.653000 Thanks Qing Zhao --- From nix.esperi.org.uk Date 2021-09-22T12:04:56.115000 setjmp could erase registers itself, I think with no compiler support needed. setcontext probably should too. --- From nix.esperi.org.uk Date 2021-09-22T12:05:20.670000 uh I mean longjmp of course! --- From jeremy.bennett.embecosm.com Date 2021-09-22T12:05:37.461000 > <@nix.esperi.org.uk:lpc.events> setjmp could erase registers itself, I think with no compiler support needed. setcontext probably should too. That's a good solution. It's a harder problem for the stack erasure --- From jeremy.bennett.embecosm.com Date 2021-09-22T12:06:16.334000 The issue might be setjmp knowing whether or not this was a function with a register erasure attribute --- From msebor.redhat.com Date 2021-09-22T12:06:24.570000 > <@ndesaulniers.google.com:lpc.events> Changing the implicit compiler defaults makes for hard to reproduce bug reports. Do we not have a warning for self assignment? https://godbolt.org/z/PYTohPn76 -Winit-self --- From nix.esperi.org.uk Date 2021-09-22T12:07:05.258000 > <@jeremy.bennett.embecosm.com:lpc.events> The issue might be setjmp knowing whether or not this was a function with a register erasure attribute Just do it unconditionally. longjmp is not performance-sensitive. --- From jeremy.bennett.embecosm.com Date 2021-09-22T12:07:39.717000 But that changes the semantics - albeit in an undocumented way. I guess that doesn't really matter --- From ndesaulniers.google.com Date 2021-09-22T12:08:05.050000 Thanks for the talk! --- From corbet.lwn.net Date 2021-09-22T12:08:07.327000 Nice talk, thanks --- From jeremy.bennett.embecosm.com Date 2021-09-22T12:08:14.712000 Thanks for the talk --- From keescook.chromium.org Date 2021-09-22T12:08:29.029000 Thank you for the talk! (And the work on the features!) --- From jemarch.gnu.org Date 2021-09-22T12:08:31.741000 And thanks David for the moderation --- From nix.esperi.org.uk Date 2021-09-22T12:08:39.028000 Yeah... I suppose people dangerously depending on non-volatile variable valus get even more broken than they are already! --- From dje.gcc.gmail.com Date 2021-09-22T12:13:16.466000 Thanks Jose for summarizing the questions for Qing --- From fweimer.redhat.com Date 2021-09-22T12:18:14.378000 Wish we had this at the start for ppc64le, so that we could have defaulted to `-fsigned-char`. --- From fweimer.redhat.com Date 2021-09-22T12:20:49.847000 glibc will also need `double double` indefinitely. --- From qing.zhao69.gmail.com Date 2021-09-22T12:21:12.666000 > <@keescook.chromium.org:lpc.events> > <@glider.google.com:lpc.events> How does call registers wiping perform compared to control-flow integrity instrumentation provided by Clang? ROP tends to get used for backward-edge. Clang CFI is covers forward-edge. Thank you Kees for the answer --- From jwakely.redhat.com Date 2021-09-22T12:21:59.726000 libstdc++ is likely to have to keep supporting all three of 64-bit long double, double double and ieee128, for compat. /me cries --- From wschmidt.us.ibm.com Date 2021-09-22T12:22:10.123000 sorry Jon :( --- From codonell.redhat.com Date 2021-09-22T12:23:32.096000 /me waves --- From codonell.redhat.com Date 2021-09-22T12:23:37.107000 Sorry, had to be in another meeting. --- From qing.zhao69.gmail.com Date 2021-09-22T12:23:42.538000 > <@glider.google.com:lpc.events> To be precise, AddressSanitizer does not detect uses of uninitialized memory, only MemorySanitizer does. Thanks for this info --- From qing.zhao69.gmail.com Date 2021-09-22T12:25:55.825000 > <@diane2332.gmail.com:lpc.events> Maybe there should be a new flag for security, like -fsecurity=... so that lots of useful things can be enabled all at once. And I think maybe it should be on by default. Nice idea --- From iain.sandoe.co.uk Date 2021-09-22T12:27:23.082000 Unknown type: m.emote --- From qing.zhao69.gmail.com Date 2021-09-22T12:28:33.495000 > <@glider.google.com:lpc.events> Question: Clang performs locals initialization in the frontend. How is this done in GCC? Also, do you have any performance data for GCC-implemented auto-initialization? Clang does the -Wuninitialized analysis in FE. But gcc does it quite late in middle end, that makes gcc implementation more complicated --- From jwakely.redhat.com Date 2021-09-22T12:29:22.687000 Should std::random_device use the power DARN instruction (ISA 3.0) to get a random number? We support using RDRAND and RDSEED on x86 --- From jwakely.redhat.com Date 2021-09-22T12:29:39.670000 I thought I'd filed a BZ reminding me to do this, but I can't find it. --- From mrmeissn.us.ibm.com Date 2021-09-22T12:30:43.982000 Note, you do have to deal with DARN failing. --- From joseph.codesourcery.com Date 2021-09-22T12:31:28.769000 Any plans to add _Float16 support (to the psABIs and the GCC back end), such as was recently added for x86_64 and has been present for AArch64 for a long time? Power has conversion instructions between binary16 and wider floating-point formats (thought not yet direct arithmetic on binary16, I think). --- From iain.sandoe.co.uk Date 2021-09-22T12:31:38.297000 I have to drop off now - thanks to all for talks and discussions. --- From wschmidt.us.ibm.com Date 2021-09-22T12:34:22.075000 Thanks, Iain! --- From ngompa13.gmail.com Date 2021-09-22T12:38:06.262000 I'd be curious if these POWER changes would make it so we don't get weird things with the defaults for ppc64le with boolean --- From ngompa13.gmail.com Date 2021-09-22T12:38:17.142000 e.g. altivec bool by default screws with lots of applications --- From joseph.codesourcery.com Date 2021-09-22T12:39:53.708000 _Float16 is always IEEE binary16 format. --- From joseph.codesourcery.com Date 2021-09-22T12:40:16.941000 (C and C++ rejected "short float".) --- From jwakely.redhat.com Date 2021-09-22T12:40:26.056000 OK, thanks --- From jwakely.redhat.com Date 2021-09-22T12:40:56.225000 Ah, I seem to recall I asked about it before and "it actually works correctly" wasn't the case. If it works now, I'll make it (optionally) usable --- From joseph.codesourcery.com Date 2021-09-22T12:42:31.834000 (glibc doesn't have any _Float16 support on any architecture at present.) --- From pdrocaldeira.gmail.com Date 2021-09-22T12:43:28.500000 Hey ppl, about AI libraries, do you guys have an idea how better MMA performs for AI, for example, any benchmark result for OpenBLAS? Another one, is MMA available for Tensorflow already? --- From rforraji.gmail.com Date 2021-09-22T12:44:48.730000 connecting back.. --- From pdrocaldeira.gmail.com Date 2021-09-22T12:46:41.690000 Oh thank you :D --- From ngompa13.gmail.com Date 2021-09-22T12:47:31.912000 Bill Schmidt: I am not opting into AltiVec most of the time --- From ngompa13.gmail.com Date 2021-09-22T12:47:36.812000 and it still happens, causing breakage --- From ngompa13.gmail.com Date 2021-09-22T12:48:27.775000 Will do, 👍️ --- From jwakely.redhat.com Date 2021-09-22T12:49:11.367000 ok, cool. I'll take a look at it next week --- From sawdey.us.ibm.com Date 2021-09-22T12:50:36.057000 gcc will figure out that the result is just being compared to zero --- From christophm30.gmail.com Date 2021-09-22T12:52:41.323000 You were mentioning a "single-line-patch" in the backend, that pushed the SPEC performance by more than 2%. Can you explain more details and/or give some pointers to this amazing patch? --- From ngompa13.gmail.com Date 2021-09-22T12:52:44.508000 looking forward to the day Raptor will offer POWER10 systems... --- From ngompa13.gmail.com Date 2021-09-22T12:52:56.372000 actually, in general, it'd be nice to see more affordable POWER systems... --- From ngompa13.gmail.com Date 2021-09-22T12:53:14.836000 right now, it's _too_ expensive to get a POWER system :( --- From ngompa13.gmail.com Date 2021-09-22T12:53:33.851000 even cloud availability is too limited (just IBM cloud :( ) --- From ngompa13.gmail.com Date 2021-09-22T12:54:52.172000 having POWER in AWS, for example, would be really nice --- From elena.zannoni.oracle.com Date 2021-09-22T13:01:48.527000 yes --- From ngompa13.gmail.com Date 2021-09-22T13:01:48.651000 Yes! --- From jwakely.redhat.com Date 2021-09-22T13:05:08.741000 there's an open libstdc++ bug I need to look at, where the wrong symbol from the DSO seems to be getting used --- From nix.esperi.org.uk Date 2021-09-22T13:05:49.572000 Yeah. Just a while back I saw an advert for a POWER desktop -- and then saw the prices started at something like £10k, and, just no. --- From jwakely.redhat.com Date 2021-09-22T13:05:56.056000 but it's not a glibc bug, it's something in my court --- From tuliom.quites.com.br Date 2021-09-22T13:06:09.757000 Jonathan Wakely: is that bug reported anywhere? I'd like to track it. --- From jwakely.redhat.com Date 2021-09-22T13:06:32.554000 Tulio, it's in GCC BZ, lemme find it for you ... --- From jwakely.redhat.com Date 2021-09-22T13:06:44.772000 Carlos right, that's why I thought I'd mention it --- From mscastanho.gmail.com Date 2021-09-22T13:06:54.309000 Is that 100912? --- From tuliom.quites.com.br Date 2021-09-22T13:07:19.040000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100912 --- From lazyparser.gmail.com Date 2021-09-22T13:08:34.659000 lazyparser has handed over this account to MaskRay :) Will glibc be happy with Clang buildability? The most important patch is to removal C nested functions https://sourceware.org/bugzilla/show_bug.cgi?id=27220 (the patch has been up for several weeks now) --- From jwakely.redhat.com Date 2021-09-22T13:09:36.883000 yes, 100912 --- From jeffreyalaw.gmail.com Date 2021-09-22T13:11:48.323000 We've run into situations where invoking a program via ld.so results in a different memory layout (particularly the relationship between the .bss and heap) is changed and as a result we end up unexpectedly changing malloc arenas due sbrk failure. Has anyone else stumbled over this and does it really matter, or this kind of use really only important for the testsuite? --- From joseph.codesourcery.com Date 2021-09-22T13:11:58.615000 Could we do Bugzilla triage better, especially making sure bugs that have been fixed are closed? This seems like a similar backlog issue to patch review. --- From joseph.codesourcery.com Date 2021-09-22T13:13:36.495000 Regarding clang buildability: each separate logical change should be sent separately (and in particular, fixes for installed headers, which should work with a wide range of compiler versions, should be separate). --- From joseph.codesourcery.com Date 2021-09-22T13:14:26.167000 Regarding the specific dynamic linker patch, certainly passing explicit parameters would feel better than using static variables, even given the comment in the latest patch revision explaining why there is no thread-safety issue. --- From lazyparser.gmail.com Date 2021-09-22T13:14:55.047000 Both musl ldso and FreeBSD rtld have cleaner relocation resolving code. I do hope this part of glibc can be cleaned up whenever it makes sense:) --- From joseph.codesourcery.com Date 2021-09-22T13:16:10.971000 I think there might also be a use for being able to run much of the glibc testsuite with compilers that can't build glibc. For example: I'd still like to be able to run the tgmath.h changes with GCC 6 once we no longer support GCC 6 for building glibc, since it uses different macro definitions depending on the compiler version. --- From ngompa13.gmail.com Date 2021-09-22T13:18:34.458000 the only architecture Fedora doesn't have in common use is ppc64be --- From lazyparser.gmail.com Date 2021-09-22T13:18:55.654000 > Regarding the specific dynamic linker patch, certainly passing explicit parameters would feel better than using static variables --- From ngompa13.gmail.com Date 2021-09-22T13:19:07.564000 there's a group trying to bring glibc back to irix+mips :P --- From lazyparser.gmail.com Date 2021-09-22T13:19:30.605000 The issue is that RESOLVE_MAP and the other macro don't share parameter list ;-) --- From joseph.codesourcery.com Date 2021-09-22T13:24:05.885000 I didn't get a reply to my recent message to overseers about glibc commits not getting filed properly. --- From joseph.codesourcery.com Date 2021-09-22T13:26:08.507000 For glibc, we rely on marking bugs fixed as soon as fixed on master, for the automatic generation of the list of fixed bugs for NEWS (which only looks at FIXED bugs with the relevant milestone). --- From joseph.codesourcery.com Date 2021-09-22T13:27:39.787000 (We also rely on people actually remembering to set the milestone at that time, but it's an easy search to find bugs marked FIXED since the last release but without milestone set, and thus to fix the milestone before the release - provided someone remembers to do that search.) --- From joseph.codesourcery.com Date 2021-09-22T13:30:32.129000 We look for "bug ", and if it's "(bug" or "[bug" or similar, it won't match, apart from any issue about whether the first line of the commit gets checked properly. --- From nix.esperi.org.uk Date 2021-09-22T13:32:15.773000 [^[:alnum:]_-]bug would seem a good thing to match on... --- From lazyparser.gmail.com Date 2021-09-22T13:39:46.417000 Can b4 be used for glibc patches posted on libc-alpha? --- From joseph.codesourcery.com Date 2021-09-22T13:39:46.826000 In principle, From: mangling isn't needed on mailing lists for DKIM/DMARC issues *if* the lists don't change anything about the message that would break DKIM signatures. --- From plumbers.wildebeest.org Date 2021-09-22T13:39:48.305000 I am here --- From plumbers.wildebeest.org Date 2021-09-22T13:40:52.729000 But not change anything also means not dropping CCs for people who don --- From plumbers.wildebeest.org Date 2021-09-22T13:40:58.178000 t want dupicates --- From plumbers.wildebeest.org Date 2021-09-22T13:41:34.489000 stripping HTML attachements... --- From plumbers.wildebeest.org Date 2021-09-22T13:42:24.007000 not change reply-to headers --- From nix.esperi.org.uk Date 2021-09-22T13:42:32.239000 You can add headers, but not change anything, IIRC --- From nix.esperi.org.uk Date 2021-09-22T13:42:46.477000 changing reply-to breaks DKIM: can't do it --- From plumbers.wildebeest.org Date 2021-09-22T13:45:32.077000 O. One nice thing of sourcehut is that it can sent clean patches (with correct extra From: header). --- From plumbers.wildebeest.org Date 2021-09-22T13:45:34.924000 https://git.sr.ht/~sourceware/glibc/ --- From plumbers.wildebeest.org Date 2021-09-22T13:46:03.871000 It might be something to recommend to people who might have trouble sending "clean" patches. --- From tuliom.quites.com.br Date 2021-09-22T13:46:39.379000 https://public-inbox.org/libc-alpha/ --- From fweimer.redhat.com Date 2021-09-22T13:46:42.781000 http://public-inbox.org/libc-alpha/ --- From jemarch.gnu.org Date 2021-09-22T13:47:13.209000 wtf why I didnt know about that o_O --- From nix.esperi.org.uk Date 2021-09-22T13:47:34.649000 it is wonderful! I suck all my mailing lists into it --- From sarah.cook.embecosm.com Date 2021-09-22T13:51:14.703000 Thank you everyone! --- From codonell.redhat.com Date 2021-09-22T13:51:14.713000 Thank you! --- From dje.gcc.gmail.com Date 2021-09-22T13:51:39.972000 How do we add GCC and GCC Patches to public inbox? --- From simon.marchi.polymtl.ca Date 2021-09-22T13:52:05.626000 And GDB! --- From jemarch.gnu.org Date 2021-09-22T13:52:10.750000 Yeah I was reading readme.html for poke! --- From elena.zannoni.oracle.com Date 2021-09-22T14:00:44.582000 i am closing the room. I have saved the notes. See you tomorrow! --- From segher.kernel.crashing.org Date 2021-09-22T16:48:50.584000 > <@dje.gcc.gmail.com:lpc.events> How do we add GCC and GCC Patches to public inbox? And importantly, add the decades of archive, too? --- From elena.zannoni.oracle.com Date 2021-09-23T09:37:57.766000 Morning. I saved the notes from yesterday and added them to the website in the timetable --- From sarah.cook.embecosm.com Date 2021-09-23T09:38:18.968000 Morning. Thank you Elena --- From elena.zannoni.oracle.com Date 2021-09-23T09:38:30.163000 the chats are archived, and we are taking a snapshot of each matrix room every night, we'll make those available at the end --- From codonell.redhat.com Date 2021-09-23T09:41:03.928000 Good morning. --- From sarah.cook.embecosm.com Date 2021-09-23T09:41:55.695000 Morning Carlos :) --- From jeremy.bennett.embecosm.com Date 2021-09-23T09:43:03.010000 Good morning all --- From codonell.redhat.com Date 2021-09-23T09:50:19.615000 Audio is good. I can hear Florian. --- From elena.zannoni.oracle.com Date 2021-09-23T09:50:22.743000 can you make the slides downloadable too? --- From jeremy.bennett.embecosm.com Date 2021-09-23T09:50:36.245000 Just discovered how weird it is to have both BBB and the YouTube live stream on at the same time! --- From elena.zannoni.oracle.com Date 2021-09-23T09:51:08.972000 @jeremy i am in 2 MCs at the same time too. I have to mute one tab otherwise the audio mixes, kind of weird :-) --- From nix.esperi.org.uk Date 2021-09-23T09:51:14.170000 > <@segher.kernel.crashing.org:lpc.events> > <@dje.gcc.gmail.com:lpc.events> How do we add GCC and GCC Patches to public inbox? And importantly, add the decades of archive, too? A typical starting point for public-inbox is to take an mbox archive and suck the lot in, and then switch it to pulling in the maildir-format feed as it comes in. So yes, public-inbox is biult for exactly this :) --- From codonell.redhat.com Date 2021-09-23T09:51:18.880000 The LPC slide upload != Presentation upload. --- From codonell.redhat.com Date 2021-09-23T09:51:23.859000 Just upload them right now. --- From codonell.redhat.com Date 2021-09-23T09:51:35.970000 As presenter you click + and then add slide material and add it. --- From plumbers.wildebeest.org Date 2021-09-23T09:57:16.930000 Sorry, I should just push all the buttons --- From plumbers.wildebeest.org Date 2021-09-23T09:57:32.319000 NOT. NOT push all the buttons... --- From codonell.redhat.com Date 2021-09-23T10:01:57.359000 DOWN WITH IMPLICIT FUNCTION DECLS! --- From codonell.redhat.com Date 2021-09-23T10:02:03.220000 /me holds pitch fork --- From jwakely.redhat.com Date 2021-09-23T10:03:05.278000 and my axe --- From nix.esperi.org.uk Date 2021-09-23T10:03:58.813000 Of course the implicit promotion hell stays with us even then thanks to stdargs. Anyone got any idea how to give *those* proper types :/ --- From jwakely.redhat.com Date 2021-09-23T10:04:10.136000 C++ --- From jwakely.redhat.com Date 2021-09-23T10:04:12.745000 :-P --- From nix.esperi.org.uk Date 2021-09-23T10:04:25.082000 :)) --- From jemarch.gnu.org Date 2021-09-23T10:04:31.658000 nope nope --- From codonell.redhat.com Date 2021-09-23T10:06:48.308000 /me cries --- From richard.guenther.gmail.com Date 2021-09-23T10:07:11.742000 It also miscompiled X11 for us once --- From jemarch.gnu.org Date 2021-09-23T10:07:45.577000 Segher: drop your question to the chat. I will be collecting them in the shared notes for the later discussion --- From nix.esperi.org.uk Date 2021-09-23T10:10:36.603000 ... then you have to get fixes this small past reviewers who really aren't likely to care enough to review it. That means that only major contributors can likely submit things like this in advance of the switch-over. --- From richard.guenther.gmail.com Date 2021-09-23T10:11:09.388000 binary-compare results! --- From joseph.codesourcery.com Date 2021-09-23T10:11:48.836000 Yes, using reproducible builds and comparing binaries (e.g. for the large subset of Debian that builds reproducibly) comes to mind to me. --- From nix.esperi.org.uk Date 2021-09-23T10:12:12.025000 binary comparison only works for those implicit decsl that affect this build in particular. The implicit decl check thing Florian mentioned avoids that :) --- From richard.guenther.gmail.com Date 2021-09-23T10:12:31.577000 well, it avoids feature disabling by broken configure checks --- From codonell.redhat.com Date 2021-09-23T10:12:50.212000 /me laughs at "gloomy November days" :-) --- From richard.guenther.gmail.com Date 2021-09-23T10:12:52.343000 for the particular configuration, yes --- From richard.guenther.gmail.com Date 2021-09-23T10:13:20.192000 in the end this isn't much different from switching to -fno-common ... --- From nix.esperi.org.uk Date 2021-09-23T10:13:39.676000 The magic error log thing should also go upstream, so that the fixes can be done in a distributed fashion after release --- From nix.esperi.org.uk Date 2021-09-23T10:14:02.484000 (yes, it's ugly, but either it should be upstreamed or everyone has to reimplement it!) --- From richard.guenther.gmail.com Date 2021-09-23T10:14:31.585000 we already have -fdiagnostic-output=xyz, just overload that somehow --- From joseph.codesourcery.com Date 2021-09-23T10:15:06.490000 Does the magic error log have complications to avoid problems (a) when the function indeed does not exist so the error is right and (b) when the configure test is actually looking for which header declares the function? --- From joseph.codesourcery.com Date 2021-09-23T10:16:19.012000 We switched to -std=gnu11 by default (meaning warning for this by default) in GCC 5. --- From richard.guenther.gmail.com Date 2021-09-23T10:16:24.575000 disable the new behavior for input files named conftest.c ;) --- From pjones.redhat.com Date 2021-09-23T10:16:53.171000 That's (yet another) argument for tossing autoconf --- From nix.esperi.org.uk Date 2021-09-23T10:17:29.585000 Not practical unless you have a way to convince everyone to not use all the huge amount of software that is still using it! Live with the world as it is etc --- From pjones.redhat.com Date 2021-09-23T10:18:13.149000 looking at it from the other direction, though: tossing it as a maintainer --- From nix.esperi.org.uk Date 2021-09-23T10:18:14.994000 (and if these projects are too dead to fix implicit int, what's the likelihood they'll be willing to totally redo their build systems?) --- From jemarch.gnu.org Date 2021-09-23T10:18:27.892000 Why would be toss autoconf?? It is awesome --- From jwakely.redhat.com Date 2021-09-23T10:18:49.433000 toss the old defunct junk in the distros instead --- From jemarch.gnu.org Date 2021-09-23T10:19:09.959000 that ^ --- From nix.esperi.org.uk Date 2021-09-23T10:19:16.241000 I'm using too much of it to want to do that :) --- From jwakely.redhat.com Date 2021-09-23T10:19:29.375000 ok, send all patches to nick ;) --- From joseph.codesourcery.com Date 2021-09-23T10:19:34.151000 Common distribution infrastructure for shared fixes to dead upstreams? --- From richard.guenther.gmail.com Date 2021-09-23T10:19:34.994000 btw, in SUSE we had been using some -Wunprototped-calls warning by default for years --- From nix.esperi.org.uk Date 2021-09-23T10:20:13.343000 > <@joseph.codesourcery.com:lpc.events> Common distribution infrastructure for shared fixes to dead upstreams? We could call it a place for cronically dead but critical projects --- From richard.guenther.gmail.com Date 2021-09-23T10:20:40.740000 Joseph: we tend to treat Debian as that (because it tends to package everything) --- From alehotsky.codegentllc.com Date 2021-09-23T10:22:08.916000 What about writing the implicit linkage into the obj file and having the linker complain when the actual function's prototype doesn't match? --- From jwakely.redhat.com Date 2021-09-23T10:24:39.393000 Invalidate them then --- From simon.marchi.polymtl.ca Date 2021-09-23T10:25:09.566000 IME, -Wmissing-declarations always helps --- From joseph.codesourcery.com Date 2021-09-23T10:25:50.190000 Incidental note: C23 will probably make bool, true and false into keywords, which I expect will cause a lot of distribution breakage - but that should be noisy breakage, not quiet breakage like you get with implicit function declaration errors. --- From jemarch.gnu.org Date 2021-09-23T10:25:58.236000 haha --- From dwmw2 Date 2021-09-23T10:26:29.002000 Much as I hate autoconf, I have so far failed to find an alternative that I hate even less :) --- From richard.guenther.gmail.com Date 2021-09-23T10:28:00.172000 https://gcc.gnu.org/legacy-ml/gcc-patches/2013-04/msg00363.html --- From codonell.redhat.com Date 2021-09-23T10:29:25.135000 Red Hat has an open job position for an Autotools maintainer :-) --- From sarah.cook.embecosm.com Date 2021-09-23T10:31:24.554000 Jose your on mute --- From segher.kernel.crashing.org Date 2021-09-23T10:32:37.870000 David Woodhouse (LPC): i have never heard about any actual alternative, even --- From dwmw2 Date 2021-09-23T10:34:10.762000 Oh, there's a new crop every year but they don't make anything any *better*; they just add new ways for things to break (and require even newer tools, and stop building on older distros). --- From dwmw2 Date 2021-09-23T10:34:28.285000 So I still wear the t-shirt, but I still use autohate., --- From dwmw2 Date 2021-09-23T10:34:31.300000 Image: thumbnails/lwVbDGqjlulljLguZnVnUlVB.jpeg --- From codonell.redhat.com Date 2021-09-23T10:36:18.291000 "I HATE AUTOCONF LESS THAN I HATE [Bazel, Meson, Ninja, Scons, Cons, Bitbake, Maven, Jenkins, Webpack, Buck, Gradle...]" --- From richard.guenther.gmail.com Date 2021-09-23T10:36:30.932000 The SUSE packages are built from the gcc-11 branch, not OG11 --- From jemarch.gnu.org Date 2021-09-23T10:36:45.861000 Carlos: now nobody will want to apply, knowing what her first task will be :P --- From segher.kernel.crashing.org Date 2021-09-23T10:36:46.499000 > <@nix.esperi.org.uk:lpc.events> And importantly, add the decades of archive, too? > > A typical starting point for public-inbox is to take an mbox archive and suck the lot in, and then switch it to pulling in the maildir-format feed as it comes in. So yes, public-inbox is biult for exactly this :) i know, but my point is we should *do* that :-) it is much easier to set up things only for new stuff --- From philip.herron.embecosm.com Date 2021-09-23T10:37:20.276000 I always remember thinking when I was first using linux the ./configure output looks really cool --- From segher.kernel.crashing.org Date 2021-09-23T10:38:23.150000 and it is! and the whole **point** of autoxxxx is it works **everywhere** --- From andrew_stubbs.mentor.com Date 2021-09-23T10:38:33.199000 > <@richard.guenther.gmail.com:lpc.events> The SUSE packages are built from the gcc-11 branch, not OG11 That's what I said. --- From nix.esperi.org.uk Date 2021-09-23T10:38:55.043000 > <@philip.herron.embecosm.com:lpc.events> I always remember thinking when I was first using linux the ./configure output looks really cool These days, everytime it says "no" to something I twitch and think "is this true, or is it FPing at an unrelated wearning message?". Occasionally I even check. --- From jwakely.redhat.com Date 2021-09-23T10:40:05.290000 tui mode is great --- From bergner.linux.ibm.com Date 2021-09-23T10:42:44.351000 tui mode, I just learned something new! How long as that been there? --- From simon.marchi.polymtl.ca Date 2021-09-23T10:42:56.686000 For ever :) --- From bergner.linux.ibm.com Date 2021-09-23T10:43:03.155000 heh --- From jwakely.redhat.com Date 2021-09-23T10:43:06.289000 gdb --tui ... --- From simon.marchi.polymtl.ca Date 2021-09-23T10:43:08.772000 But it has received a lot of improvements in the last few years --- From richard.guenther.gmail.com Date 2021-09-23T10:43:21.584000 others just use emacs --- From andrew_stubbs.mentor.com Date 2021-09-23T10:43:27.821000 It had an amazing overhaul a few years ago, but it's been there a long time. --- From simon.marchi.polymtl.ca Date 2021-09-23T10:43:42.012000 So, important question: how come "error" and "success" are coloured? --- From andrew_stubbs.mentor.com Date 2021-09-23T10:43:47.410000 I usually use Vim 8 debug support these days though --- From jwakely.redhat.com Date 2021-09-23T10:44:16.126000 Yeah I switched to https://www.dannyadam.com/blog/2019/05/debugging-in-vim/ instead of tui for many uses --- From jemarch.gnu.org Date 2021-09-23T10:44:26.891000 Simon: aren't they supposed to be styled? --- From bergner.linux.ibm.com Date 2021-09-23T10:44:38.897000 vim user here, so I'll have to look into that too. Thanks! --- From simon.marchi.polymtl.ca Date 2021-09-23T10:44:52.759000 I don't know, because they are comments? --- From alves.ped.gmail.com Date 2021-09-23T10:44:59.774000 > <@simon.marchi.polymtl.ca:lpc.events> So, important question: how come "error" and "success" are coloured? That explains why this isn't live! This is all CGI. ;-) --- From jemarch.gnu.org Date 2021-09-23T10:45:08.272000 well they are not C keywords neither --- From simon.marchi.polymtl.ca Date 2021-09-23T10:45:17.213000 > <@alves.ped.gmail.com:lpc.events> That explains why this isn't live! This is all CGI. ;-) You can tell by the pixels --- From jwakely.redhat.com Date 2021-09-23T10:45:27.144000 ha --- From simon.marchi.polymtl.ca Date 2021-09-23T10:45:41.214000 I'm wondering whether he put escape sequences in his comments ;) --- From andrew_stubbs.mentor.com Date 2021-09-23T10:46:09.773000 I don't actually know where the colour comes from --- From jemarch.gnu.org Date 2021-09-23T10:46:15.169000 what is the meaning of the map(var) openmp pragma? --- From richard.guenther.gmail.com Date 2021-09-23T10:46:26.889000 it's youtube auto-coloring video by AI --- From andrew_stubbs.mentor.com Date 2021-09-23T10:46:52.235000 map(var) means copy the variable from the host to the device and then back again --- From jemarch.gnu.org Date 2021-09-23T10:47:00.942000 ok thanks --- From jemarch.gnu.org Date 2021-09-23T10:49:04.573000 this is very cool --- From jwakely.redhat.com Date 2021-09-23T10:49:28.217000 impressive magic --- From vladimir.mezentsev.oracle.com Date 2021-09-23T10:51:59.757000 Can gdb attach to the multi-thread application ? --- From andrew_stubbs.mentor.com Date 2021-09-23T10:52:23.961000 Hmmm, I've never tried. --- From andrew_stubbs.mentor.com Date 2021-09-23T10:53:02.708000 I would have thought so? --- From jemarch.gnu.org Date 2021-09-23T10:53:04.198000 hm is the ring sound part of the video? --- From andrew_stubbs.mentor.com Date 2021-09-23T10:53:09.811000 Tony Tye:? --- From andrew_stubbs.mentor.com Date 2021-09-23T10:53:26.346000 > <@jemarch.gnu.org:lpc.events> hm is the ring sound part of the video? Sadly yes --- From simon.marchi.polymtl.ca Date 2021-09-23T10:53:28.919000 Multi-threaded as in pthread? --- From jemarch.gnu.org Date 2021-09-23T10:53:37.659000 Ok I thought I was finally going nuts --- From andrew_stubbs.mentor.com Date 2021-09-23T10:54:12.519000 > <@simon.marchi.polymtl.ca:lpc.events> Multi-threaded as in pthread? Multi-thread as in GPU processors. --- From vladimir.mezentsev.oracle.com Date 2021-09-23T10:55:03.852000 On Linux, dbx (Oracle studio) can attach but only in one thread. --- From simon.marchi.polymtl.ca Date 2021-09-23T10:55:20.329000 I don't know if it's possible today, but I am pretty sure we want it to work --- From vladimir.mezentsev.oracle.com Date 2021-09-23T10:55:22.343000 yes it is pthread --- From simon.marchi.polymtl.ca Date 2021-09-23T10:55:35.940000 For pthreads, sure it works --- From tony.tye.amd.com Date 2021-09-23T10:55:43.230000 ROCgdb has the same abilities as gdb. So it supports multiple threads in a single process as well as multiple inferiors. However, the implementation for some hardware limits how many pocesses can use the same GPU at a time. --- From simon.marchi.polymtl.ca Date 2021-09-23T10:56:41.362000 I don't know what time y'all at, but "We have to kill it from another terminal" when a GPU thread is stuck waiting forever. That sounds like the problem Pedro Alves 's ctrl-c work fixes --- From alves.ped.gmail.com Date 2021-09-23T10:57:08.597000 attaching to amdgpu-using programs works -- though for some architectures after attaching you may miss dispatch/work-group info. --- From andrew_stubbs.mentor.com Date 2021-09-23T10:57:10.963000 Could be. --- From vladimir.mezentsev.oracle.com Date 2021-09-23T10:58:06.588000 We used dbx to attach and start to profile application. Now gprofng cannot do it. --- From alves.ped.gmail.com Date 2021-09-23T10:59:33.432000 > <@simon.marchi.polymtl.ca:lpc.events> I don't know what time y'all at, but "We have to kill it from another terminal" when a GPU thread is stuck waiting forever. That sounds like the problem Pedro Alves 's ctrl-c work fixes yes, you're stuck forever if no host thread is running as happens with scheduler-locking on. (because ctrl-c release on ptrace intercepting the SIGINT that is sent to the host). no host-side running, no ctrl-c, must kill gdb. --- From alves.ped.gmail.com Date 2021-09-23T10:59:47.754000 another great reason for getting my ctrl-c patches in! --- From simon.marchi.polymtl.ca Date 2021-09-23T11:00:08.491000 I thought that was the original reason --- From alves.ped.gmail.com Date 2021-09-23T11:01:03.405000 the orignal reason was programs that use sigwait/sigprocmask / block SIGINT in normal unix programs. --- From blarsen.redhat.com Date 2021-09-23T11:02:29.390000 oooh Lords of Iron is a banger! --- From tschwinge Date 2021-09-23T11:02:36.954000 Great demo! ... and I learned something new -- didn't know GDB 'display' command! :-O --- From jemarch.gnu.org Date 2021-09-23T11:02:50.357000 Thomas: dude :D --- From simon.marchi.polymtl.ca Date 2021-09-23T11:03:04.605000 Pedro Alves: Well, the original AMD motivation :) --- From tschwinge Date 2021-09-23T11:04:01.693000 Jose E. Marchesi: I promise I'll be using it very often from now on! --- From honza.hubicka.gmail.com Date 2021-09-23T11:05:09.245000 Hello, I have bit of problem for next track, since power is out here. I will try to login using data and start with talk and hope to be saved by power coming back during talk (which will mean I will disconnect for a while) :) --- From jemarch.gnu.org Date 2021-09-23T11:06:05.032000 > <@honza.hubicka.gmail.com:lpc.events> Hello, I have bit of problem for next track, since power is out here. I will try to login using data and start with talk and hope to be saved by power coming back during talk (which will mean I will disconnect for a while) :) copy --- From jemarch.gnu.org Date 2021-09-23T11:06:40.162000 > <@tschwinge:fosdem.org> Jose E. Marchesi: I promise I'll be using it very often from now on! Just wait for the poke command.. gotta send a V2 for that --- From honza.hubicka.gmail.com Date 2021-09-23T11:07:12.265000 As speaker I only join the next track and should be able speak, right? (Sorry, normally I would read the presentation info but was bit occupied with the power problem) --- From jemarch.gnu.org Date 2021-09-23T11:07:45.144000 Yes. Just join the GNU Tools Track in https://meet.lpc.events/ --- From honza.hubicka.gmail.com Date 2021-09-23T11:07:57.005000 thanks! --- From jemarch.gnu.org Date 2021-09-23T11:08:16.269000 Did you send your slides to sarah in advance? --- From sarah.cook.embecosm.com Date 2021-09-23T11:08:38.289000 > <@jemarch.gnu.org:lpc.events> Did you send your slides to sarah in advance? They should already be uploaded --- From jemarch.gnu.org Date 2021-09-23T11:09:01.057000 ok then we can transition quickly to save honza's data :) --- From honza.hubicka.gmail.com Date 2021-09-23T11:14:19.049000 OK, thanks :) --- From tony.tye.amd.com Date 2021-09-23T11:15:11.907000 Thanks Andrew. Cool seeing OpenMP GPU debugging in action:-) --- From ruud.vanderpas.gmail.com Date 2021-09-23T11:17:25.932000 I totally agree :-) --- From visda.vokhshoori.gmail.com Date 2021-09-23T11:44:31.344000 this type of alias disambiguation is useful for the tree inliner as well. any plans to do this w.o. LTO. do you have numbers on code size? --- From sarah.cook.embecosm.com Date 2021-09-23T11:46:44.836000 yes --- From elena.zannoni.oracle.com Date 2021-09-23T11:47:07.891000 Is Jan video frozen? --- From elena.zannoni.oracle.com Date 2021-09-23T11:47:14.795000 ah ok delay --- From sarah.cook.embecosm.com Date 2021-09-23T12:00:24.166000 The Screen Share has ended --- From jemarch.gnu.org Date 2021-09-23T12:00:35.930000 urg --- From jemarch.gnu.org Date 2021-09-23T12:01:12.298000 how did that happen? --- From sarah.cook.embecosm.com Date 2021-09-23T12:01:30.580000 A moderator must have given someone else presenter rights --- From jeremy.bennett.embecosm.com Date 2021-09-23T12:01:39.634000 Bug in BBB? --- From jeremy.bennett.embecosm.com Date 2021-09-23T12:01:54.047000 It was the person just before Enrico in the list --- From jemarch.gnu.org Date 2021-09-23T12:02:44.339000 Question: do you plan to extend the GDB risc-v simulator as well, or you plan to contribute this GVSoC simulator as a separated sim/ ? --- From wilson.tuliptree.org Date 2021-09-23T12:04:16.515000 The gdb risc-v sim still needs ~20 patches upstreamed from riscv-gnu-toolchain. --- From jeremy.bennett.embecosm.com Date 2021-09-23T12:09:22.379000 There's also the CGEN simulator... --- From wilson.tuliptree.org Date 2021-09-23T12:09:51.096000 The cgen simulator only supports a small subset of possible architectures. It isn't useful unless you can fix that. --- From jemarch.gnu.org Date 2021-09-23T12:09:54.536000 yes, about that --- From philipp.tomsich.vrull.eu Date 2021-09-23T12:11:42.495000 Is the cgen project alive? I had the impression that I had been dormant since 2010… --- From philipp.tomsich.vrull.eu Date 2021-09-23T12:11:52.752000 s/I/it/g --- From jeremy.bennett.embecosm.com Date 2021-09-23T12:12:13.615000 See the talks at GNU Cauldrons passim. Very much still alive! --- From jemarch.gnu.org Date 2021-09-23T12:12:43.570000 Yeah, some idiot got global CGEN maintainership lately --- From jemarch.gnu.org Date 2021-09-23T12:12:57.715000 Philipp: we use CGEN in the BPF port --- From jeremy.bennett.embecosm.com Date 2021-09-23T12:13:08.342000 Very much appreciated that idiot! --- From jeremy.bennett.embecosm.com Date 2021-09-23T12:13:28.233000 We use CGEN widely for our RISC-V customers. --- From philipp.tomsich.vrull.eu Date 2021-09-23T12:14:11.665000 > <@jemarch.gnu.org:lpc.events> Yeah, some idiot got global CGEN maintainership lately You seem to volunteer for some of the most thankless tasks ;-) --- From palmer.dabbelt.com Date 2021-09-23T12:14:49.034000 presumably we'd need to fix our sim port first ;) --- From wilson.tuliptree.org Date 2021-09-23T12:22:11.113000 I have a patch set for the simulator, but needs a lot of changes for reviewer comments. --- From jemarch.gnu.org Date 2021-09-23T12:23:04.445000 Jim: if you need help with that, maybe you could link to the patch submission thread? Maybe someone is willing to take it from there :) --- From palmer.dabbelt.com Date 2021-09-23T12:23:19.054000 if you've gotten somewhere then you're more than welcome to send it out and ask one of us to pick up the slack --- From wilson.tuliptree.org Date 2021-09-23T12:28:24.296000 This is a long thread. https://sourceware.org/pipermail/gdb-patches/2021-April/177847.html --- From geert.linux-m68k.org Date 2021-09-23T12:30:30.182000 I see no poll? --- From geert.linux-m68k.org Date 2021-09-23T12:30:44.149000 (same in the previous session I attended) --- From philipp.tomsich.vrull.eu Date 2021-09-23T12:30:49.336000 I was about to ask the same question… --- From jemarch.gnu.org Date 2021-09-23T12:32:00.761000 seems like the poll doesnt survive a change of presenter --- From jemarch.gnu.org Date 2021-09-23T12:32:05.900000 8-) --- From wilson.tuliptree.org Date 2021-09-23T12:38:36.375000 there are a number of interesting comments from Jessica Clarke in IRC about the vendor specific linker relaxation proposal for CORE-V --- From joseph.codesourcery.com Date 2021-09-23T12:39:07.234000 I'm not convinced it's the point of the vendor field in target triplets (that's more a relic of m68k--sysv), but certainly plenty of targets have -m options for vendor extensions. --- From philipp.tomsich.vrull.eu Date 2021-09-23T12:40:46.022000 This is why they'll have to call it x-thead-v --- From alves.ped.gmail.com Date 2021-09-23T12:42:27.695000 it's useful to be able to install multiple versions of the toolchain one masking others. e.g., x86-64-akme-gcc and x86-64-msft-gcc both on the PATH. otherwise, should be cosmetic, IMHO. --- From alves.ped.gmail.com Date 2021-09-23T12:42:47.060000 * WITHOUT one masking... --- From jemarch.gnu.org Date 2021-09-23T12:43:28.578000 That works well enough for many arches, like sparc --- From wilson.tuliptree.org Date 2021-09-23T12:44:31.528000 irc log, see jrtc27 comments https://libera.irclog.whitequark.org/riscv/2021-09-23 --- From joseph.codesourcery.com Date 2021-09-23T12:47:47.150000 With these extensions in master (which I think is a good idea), at some point you'll need to deal with obsolescing/removing support for extensions that's no longer maintained and causing maintenance problems (cf. the removal of e500 support from the GCC powerpc port, for example). --- From philipp.tomsich.vrull.eu Date 2021-09-23T12:48:34.190000 Can we first move from the guthub integration branches to vendor branches in the GCC git? --- From philipp.tomsich.vrull.eu Date 2021-09-23T12:52:10.116000 I'd change this from SOON to NOW: Zb[abcs] doesn't have bits assigned. --- From palmer.dabbelt.com Date 2021-09-23T12:52:42.383000 agreed: the letter thing is broken and has been for a while, we just haven't had anything concrete to trigger that breakage --- From jeremy.bennett.embecosm.com Date 2021-09-23T12:53:00.034000 That will be good. We spend a lot of time with customers who don't understand that the Git repos are not a simple mirror of the official upstream. --- From philipp.tomsich.vrull.eu Date 2021-09-23T12:53:27.965000 > <@palmer.dabbelt.com:lpc.events> agreed: the letter thing is broken and has been for a while, we just haven't had anything concrete to trigger that breakage Just pointing out that this is not a future problem, but there's an immediate need to resolve this ideally in the current cycle. --- From palmer.dabbelt.com Date 2021-09-23T12:53:33.885000 yep --- From joseph.codesourcery.com Date 2021-09-23T13:01:24.824000 Getting 64k state in every process because of detecting vector support sounds like the issue with Intel AMX. https://sourceware.org/pipermail/libc-alpha/2021-June/127933.html --- From philipp.tomsich.vrull.eu Date 2021-09-23T13:02:13.593000 They should have called it MAX (instead of AMX), as it MAXimizes the process state. --- From jamie.shareable.org Date 2021-09-23T13:03:25.739000 After Glibc has used the vector unit in memcpy(), is there not a fast way to say "no longer care about preserving vector state from here" so that context switch doesn't have to save it? --- From jemarch.gnu.org Date 2021-09-23T13:04:43.752000 you are gonna need a lot of bits :D --- From sarah.cook.embecosm.com Date 2021-09-23T13:07:25.714000 you have 8 minutes left --- From jemarch.gnu.org Date 2021-09-23T13:08:17.470000 So what simulator should make it to GDB :) --- From pdp7pdp7.gmail.com Date 2021-09-23T13:09:07.842000 oh, did the RISC-V BoF just start? --- From palmer.dabbelt.com Date 2021-09-23T13:09:26.836000 it's just ending ;) --- From pdp7pdp7.gmail.com Date 2021-09-23T13:09:32.985000 ah! :) --- From jeremy.bennett.embecosm.com Date 2021-09-23T13:15:05.340000 Thanks Kito, Palmer and Jim --- From jemarch.gnu.org Date 2021-09-23T13:16:31.898000 Just to clarify: I wasn't suggesting to switch to a CGEN-based assembler. If you have good hand-written opcodes, so much the better :) --- From palmer.dabbelt.com Date 2021-09-23T13:21:29.625000 OK, I guess I generally like tools and we used to have something (though it was sort of half-way there and had a lot of hand finishing) --- From palmer.dabbelt.com Date 2021-09-23T13:22:15.872000 it's kind of a headache to have so many descriptions of the ISA floating around in one project, I think there's some merit to that "make CGEN generate tables that match our current assembler tables" approach --- From palmer.dabbelt.com Date 2021-09-23T13:22:31.629000 that would at least let us have a single source of truth for the new extensions going in --- From jemarch.gnu.org Date 2021-09-23T13:24:46.862000 Yes thats my feeling too --- From palmer.dabbelt.com Date 2021-09-23T13:25:07.096000 OK, cool --- From palmer.dabbelt.com Date 2021-09-23T13:25:21.652000 maybe it's worth prototyping that with one of these new extensions? --- From palmer.dabbelt.com Date 2021-09-23T13:25:57.730000 IMO it should be straight-forward to generate tables that look like what we have now, but I haven't looked at CGEN --- From palmer.dabbelt.com Date 2021-09-23T13:26:05.817000 it's not like we're really doing anything interesting, though --- From jemarch.gnu.org Date 2021-09-23T13:26:14.137000 where is embecosm' cpu description anyway? It is not in upstream cpu/ --- From wilson.tuliptree.org Date 2021-09-23T13:28:45.871000 there was a patch posted to gdb-patches early this year or maybe late last year, I'll have to hunt for it --- From chip.kerchner.ibm.com Date 2021-09-23T13:38:30.360000 This may be a silly question but for some of these issues has anyone considered using an AI for register pressure, etc.? --- From wilson.tuliptree.org Date 2021-09-23T13:45:02.903000 > <@jemarch.gnu.org:lpc.events> where is embecosm' cpu description anyway? It is not in upstream cpu/ https://sourceware.org/pipermail/gdb-patches/2019-September/160285.html --- From wilson.tuliptree.org Date 2021-09-23T13:45:44.213000 They have a newer verison obviously. --- From jemarch.gnu.org Date 2021-09-23T13:45:48.420000 > <@wilson.tuliptree.org:lpc.events> https://sourceware.org/pipermail/gdb-patches/2019-September/160285.html Nice, thanks --- From jemarch.gnu.org Date 2021-09-23T14:00:52.557000 Everyone: remember tomorrow there is the Toolchains & Kernel microconference. This year we have a lot of discussion on binary-postprocessing (objtool in the kernel, BOLT, ...) much of which could be moved up to the toolchain --- From richard.guenther.gmail.com Date 2021-09-23T14:01:58.418000 David, maybe you can post the shared notes on gcc@ so we can followup there --- From richard.guenther.gmail.com Date 2021-09-23T14:02:39.122000 Btw, thanks all for the great content this year! --- From jeffreyalaw.gmail.com Date 2021-09-23T14:02:46.934000 +1 --- From elena.zannoni.oracle.com Date 2021-09-23T14:02:48.880000 the shared notes will be on the linuxplumbers website, you can get them from there --- From elena.zannoni.oracle.com Date 2021-09-23T14:02:51.092000 as well --- From sarah.cook.embecosm.com Date 2021-09-23T14:02:52.669000 Thank you everyone!! Hope to see you in person next year --- From elena.zannoni.oracle.com Date 2021-09-23T14:03:04.446000 thank you all --- From jakub.redhat.com Date 2021-09-23T14:03:09.338000 Thanks --- From richard.guenther.gmail.com Date 2021-09-23T14:03:11.996000 fingers crossing... --- From elena.zannoni.oracle.com Date 2021-09-23T14:05:14.478000 oh, the room was closed too early --- From elena.zannoni.oracle.com Date 2021-09-23T14:05:24.587000 We will fetch the notes and the chat --- From elena.zannoni.oracle.com Date 2021-09-23T14:05:30.756000 from the servres --- From elena.zannoni.oracle.com Date 2021-09-23T14:05:37.312000 nothing lost --- From dje.gcc.gmail.com Date 2021-09-23T14:05:49.104000 I copied the register pressure notes --- From elena.zannoni.oracle.com Date 2021-09-23T14:05:56.037000 ok --- From elena.zannoni.oracle.com Date 2021-09-23T14:06:05.336000 i'll upload to the website --- From elena.zannoni.oracle.com Date 2021-09-23T14:06:09.417000 later today --- From elena.zannoni.oracle.com Date 2021-09-23T14:06:19.616000 then you can take from there if you want to post to gcc@ --- From dje.gcc.gmail.com Date 2021-09-23T14:06:24.029000 too bad the room was closed --- From elena.zannoni.oracle.com Date 2021-09-23T14:07:01.622000 the "end meeting" and "leave meeting" are too close to each other :-) ---