This is rather clever, but I don't like this direction. I'd like to remove the embedding of awk in sh that currently exists and this makes it much harder.
Sat, Sep 21
Thu, Sep 19
Sorry about this. Fixed in rP512326
See also D21366 which includes an identical review diff. I didn't commit it at the time as my initial deprecation target didn't immediately make sense.
Fri, Sep 13
Thu, Sep 12
Wed, Sep 11
Mon, Sep 9
Fri, Sep 6
Tue, Sep 3
Mon, Sep 2
I suspect I know what's going on. If vectp % 16 == 8 then when long argc is stuck in front of it per the ABI requirements, the stack is aligned to 16 bytes. I suspect a change was made to require 16-byte alignment as recommend by Intel. A possibly relevant thread (I've only skimmed it) https://lore.kernel.org/patchwork/patch/749568/
sys/compat/freebsd32/syscalls.master seems to be missing now...
Fri, Aug 30
- Remove dead check.
- Return immediatly from the loop if bucket gets to big.
Thu, Aug 29
I've now booted on amd64 in addition to CheriBSD.
Wed, Aug 28
Tue, Aug 27
Aug 23 2019
Aug 22 2019
Aug 21 2019
It would be helpful to generate this diff against HEAD. That would exclude the generated files and the freebsd32 capabilities.conf entry.
Aug 20 2019
Aug 19 2019
- Always follow the allocated path, don't free prematurely.
Aug 17 2019
Aug 16 2019
Aug 15 2019
Aug 9 2019
I've fixed the expression to exclude gcc < 8 and tested on amd64 and riscv.
- Use the correct expression to add -Wno-class-memaccess.
I completely misunderstood what was going on. The in .. excludes gcc 4.2.1 and this is a gcc 8.0+ warning. The incorrect copy and paste meant it worked by accident for 6.4. I'm testing a new version now...
Aug 8 2019
This is breaking the xtoolchain CI jobs https://ci.freebsd.org/job/FreeBSD-head-amd64-gcc/10997/
Aug 7 2019
Aug 5 2019
Aug 2 2019
Aug 1 2019
Jul 31 2019
Jul 30 2019
Jul 29 2019
Why is a shim required? All arguments are extended to 64-bits as part of the combat layer. There would be an issue if len were an off_t, but it's a size_t. The only pointers point to off_t's which are always 64-bit and thus require no special handling.
Jul 26 2019
Jul 25 2019
Jul 24 2019
This looks like it provides a viable update path. As you say, libc may have some edge case issues, but it does look like it does the job of letting people upgrade without a reinstall from media. What do you think about about timing this change? It seems like it should happen close to the ELFv2 switch so people get the whole thing out of the way at once.
- Detect old auxargs constant and translate them (from bdragon@).
- Put freebsd_fixup_old_auxargs under #ifdef powerpc.
Jul 23 2019
OK, I wasn't sure exactly how the bits in rtld were going to go. It doesn't look like this is going to be as much help as I'd hoped.
- Use the correct AT_COUNT value, not the CheriBSD one.
Jul 22 2019
Did you apply a manual bump of __FreeBSD_version and P_OSREL_POWERPC_NEW_AUX_ARGS? That part of the patch is now out of date.