Binutils help? Aarch64 PE/COFF support to enable UEFI Secure Boot

2021-06-25 Thread Steve McIntyre
Hi folks,

I'm hoping that I might be able to get some development help with
binutils for aarch64...

I'm maintaining the UEFI Secure Boot stack in Debian (shim etc.),
including for arm64/aarch64 (as I wanted to make that work too!). UEFI
binaries are awkward for those of used to the Linux and ELF world -
they're PE/COFF format with different calling conventions to match the
Microsoft world. But we've made things work.

On x86 platforms, the shim build process uses objcopy
--target=efi-app-$(ARCH) to produce the final output binaries. We've
never had similar support for the aarch64 platform, and instead
somebody came up with a method using locally-hacked linker script and
"-O binary" to generate the output binaries. That's worked well
enough for a while, but it's been annoying for various reasons
(particularly debugging problems).

*However*, recently for security reasons we've tweaked the layout of
Secure Boot binaries [1] and this has caused lots of problems. The
older hacks to hand-build the right sections etc. needed significant
extra work, and we're still dealing with awkward bugs related to
this. Based ont these problems, I recently had to make the painful
decision to drop support for arm64 SB in Debian. I know that other
distributions are feeling similar pain. :-(

Rather than continuing to hack on things, I think it's (way past) time
that we did things correctly! We need aarch64 binary format support in
binutils so we can just use it like we do on x86. AFAICS, there is
already a bug open asking for this from last year [2]. Could I please
prevail on some friendly neighourhood aarch64 toolchain engineer to
help with that?

Thanks for considering,

Steve

[1] https://github.com/rhboot/shim/blob/main/SBAT.md
[2] https://sourceware.org/bugzilla/show_bug.cgi?id=26206#add_comment

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"...In the UNIX world, people tend to interpret `non-technical user'
 as meaning someone who's only ever written one device driver." -- Daniel Pead

___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] report week ending 25 Jun

2021-06-25 Thread Peter Maydell
Progress:
 * UM-2 [QEMU upstream maintainership]
  + Not much this week. Reviewed rth's bswap improvement/cleanup series
 * QEMU-406 [QEMU support for MVE (M-profile Vector Extension; Helium)]
  + Implemented logical-immediate insns; various vector shifts; VADDLV;
some of the scalar shifts that work on general-purpose registers
  + Fixed a few bugs in already-implemented insns (widening/narrowing
load/store, and VRMLALDAVH, VRMLSLDAVH)
  + Progress: 102/210 (48%)

-- PMM
___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] week ending Jun. 27 2021

2021-06-25 Thread Alex Bennée
VirtIO Initiative ([STR-9])
===

  - spent some time trying to get Xen working on MachiatoBin again
- almost working, need SMC/HVC passthrough for platform


[STR-9] 


QEMU Upstream Work ([UM-2])
===

  - posted [[PATCH v3 0/2] semihosting/next (SYS_HEAPINFO)]
  - posted [PULL 0/7] misc fixes (docs, plugins, tests) Message-Id:
<20210625091355.25673-1-alex.ben...@linaro.org>


[UM-2] 

[[PATCH v3 0/2] semihosting/next (SYS_HEAPINFO)]


[RFC PATCH] semihosting/arm-compat: remove heuristic softmmu SYS_HEAPINFO
Message-Id: <20210601090715.22330-1-alex.ben...@linaro.org>


Other
=

  - ARM CCA Announcement Event
  - Rust Training


Completed Reviews [9/9]
===

[PATCH 00/11] softfloat: Improve denormal handling
Message-Id: <20210527041405.391567-1-richard.hender...@linaro.org>


[PATCH v2 00/28] Convert floatx80 and float128 to FloatParts
Message-Id: <20210525150706.294968-1-richard.hender...@linaro.org>


[PATCH 00/11] softfloat: Improve denormal handling
Message-Id: <20210527041405.391567-1-richard.hender...@linaro.org>


[PATCH v3 00/28] tcg: Clean up code_gen_buffer allocation
Message-Id: <20210502231844.1977630-1-richard.hender...@linaro.org>


Re: [PATCH] replay: fix watchpoint processing for reverse debugging
Message-Id: 


[Email from Richard Henderson: [PATCH v2 0/8] configure: Change to -std=gnu11]

[Email from Richard Henderson: [PATCH v2 0/8] configure: Change to
-std=gnu11]



[PATCH] i386: load kernel on xen using DMA
Message-Id: <20210426034709.595432-1-marma...@invisiblethingslab.com>


[PATCH v2 0/2] execlog TCG plugin to log instructions
Message-Id: <20210618091101.2802534-1-erdn...@crans.org>


[RFC PATCH v3 0/4] Cache TCG plugin & symbol-resolution API
Message-Id: <20210608040532.56449-1-ma.mando...@gmail.com>

Absences



Current Review Queue


TODO [PATCH 00/26] accel/tcg: Introduce translator_use_goto_tb
Message-Id: <20210621013439.1791385-1-richard.hender...@linaro.org>
=
TODO [Email from Mathieu Poirier: [PATCH v2 0/5] virtio: Add vhost-user based 
RNG]
==
[Email from Mathieu Poirier: [PATCH v2 0/5] virtio: Add vhost-user based
RNG]

TODO [PATCH 0/5] virtio: Add vhost-user based RNG service
Message-Id: <20210601200305.1772391-1-mathieu.poir...@linaro.org>
==
TODO [RFC PATCH 0/5] ebpf: Added ebpf helper for libvirtd.
-- 
Alex Bennée
___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/linaro-toolchain