qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Eric Blake <eblake@redhat.com>
To: "Richard Henderson" <richard.henderson@linaro.org>,
	"Daniel P. Berrangé" <berrange@redhat.com>
Cc: Markus Armbruster <armbru@redhat.com>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v6 00/25] Add qemu_getrandom and ARMv8.5-RNG etc
Date: Tue, 14 May 2019 16:43:33 -0500	[thread overview]
Message-ID: <dfed572d-6104-8ada-3bd8-1231dc6d6392@redhat.com> (raw)
In-Reply-To: <f0da55b5-e14d-e718-0608-fa37d1cb6c2b@linaro.org>

[-- Attachment #1: Type: text/plain, Size: 1464 bytes --]

On 5/14/19 12:46 PM, Richard Henderson wrote:
> On 5/14/19 9:50 AM, Daniel P. Berrangé wrote:
>> On Tue, May 14, 2019 at 09:14:57AM -0700, Richard Henderson wrote:
>>> Yes, that would do it.  We would need something in the test that forces the
>>> objects into the link.  Without having yet looked at the test cases, any ideas?
>>
>> I don't think this is only the test suite. I think it will affect all the
>> binaries we build
> 
> You're right, it does.
> 
> $ nm aarch64-softmmu/qemu-system-aarch64  \
>   | grep qcrypto_tls_creds_x509_register_types
> 
> comes up empty.
> 
> It didn't occur to me that there was nothing in the object files for the
> reference.  I'll have to drop the crypto-obj-y patch and come up with a
> different solution.

Isn't there a gcc annotation for marking a simple as mandatorily
included during link?

/me goes looking...

__attribute__((externally_visible)) sounds promising (it nullifies the
effects of -fwhole-program, so that a function remains visible even if
the linker would have otherwise suppressed it)

__attribute__((used)) also sounds useful (the function must be emitted
even if it does not appear to be referenced, which may be enough for the
linker to infer that it is used)

There may be other tricks, although I didn't go searching very hard.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  reply	other threads:[~2019-05-14 21:47 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-10 17:30 [Qemu-devel] [PATCH v6 00/25] Add qemu_getrandom and ARMv8.5-RNG etc Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 01/25] configure: Link test before auto-enabling crypto libraries Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 02/25] crypto: Merge crypto-obj-y into libqemuutil.a Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 03/25] crypto: Reverse code blocks in random-platform.c Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 04/25] crypto: Do not fail for EINTR during qcrypto_random_bytes Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 05/25] crypto: Use O_CLOEXEC in qcrypto_random_init Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 06/25] crypto: Use getrandom for qcrypto_random_bytes Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 07/25] crypto: Change the qcrypto_random_bytes buffer type to void* Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 08/25] ui/vnc: Split out authentication_failed Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 09/25] ui/vnc: Use gcrypto_random_bytes for start_auth_vnc Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 10/25] util: Add qemu_guest_getrandom and associated routines Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 11/25] cpus: Initialize pseudo-random seeds for all guest cpus Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 12/25] linux-user: " Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 13/25] linux-user: Call qcrypto_init if not using -seed Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 14/25] linux-user: Use qemu_guest_getrandom_nofail for AT_RANDOM Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 15/25] linux-user/aarch64: Use qemu_guest_getrandom for PAUTH keys Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 16/25] linux-user: Remove srand call Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 17/25] aspeed/scu: Use qemu_guest_getrandom_nofail Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 18/25] hw/misc/nrf51_rng: " Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 19/25] hw/misc/bcm2835_rng: " Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 20/25] hw/misc/exynos4210_rng: Use qemu_guest_getrandom Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 21/25] target/arm: Put all PAC keys into a structure Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 22/25] target/arm: Implement ARMv8.5-RNG Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 23/25] target/ppc: Use qemu_guest_getrandom for DARN Richard Henderson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 24/25] target/ppc: Use gen_io_start/end around DARN Richard Henderson
2019-05-13  1:38   ` David Gibson
2019-05-13 12:48   ` Laurent Vivier
2019-05-16  1:48   ` David Gibson
2019-05-10 17:30 ` [Qemu-devel] [PATCH v6 25/25] target/i386: Implement CPUID_EXT_RDRAND Richard Henderson
2019-05-14 15:15 ` [Qemu-devel] [PATCH v6 00/25] Add qemu_getrandom and ARMv8.5-RNG etc Markus Armbruster
2019-05-14 15:23   ` Daniel P. Berrangé
2019-05-14 16:14     ` Richard Henderson
2019-05-14 16:50       ` Daniel P. Berrangé
2019-05-14 17:46         ` Richard Henderson
2019-05-14 21:43           ` Eric Blake [this message]
2019-05-14 23:22             ` Richard Henderson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=dfed572d-6104-8ada-3bd8-1231dc6d6392@redhat.com \
    --to=eblake@redhat.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).