[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 9/9] block: check availablity for preadv/pwritev on mac
From: |
Thomas Huth |
Subject: |
Re: [PATCH v2 9/9] block: check availablity for preadv/pwritev on mac |
Date: |
Tue, 20 Oct 2020 07:19:23 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 |
On 20/10/2020 00.20, Joelle van Dyne wrote:
> On Mon, Oct 19, 2020 at 1:27 AM Thomas Huth <thuth@redhat.com> wrote:
>>
>> On 19/10/2020 03.39, Joelle van Dyne wrote:
>>> From: osy <osy86@users.noreply.github.com>
>>
>> That "From:" line looks wrong ... could you please fix the "Author" of your
>> patches / your git config?
> osy wrote the original changes. I joined the UTM project to help bring
> the changes upstream with permission. However, they have agreed that
> if required that we can use my name as the author.
In any way, that "users.noreply.github.com" does not look like a valid
e-mail address and should be replaced.
>>
>>> macOS 11/iOS 14 added preadv/pwritev APIs. Due to weak linking, configure
>>> will succeed with CONFIG_PREADV even when targeting a lower OS version. We
>>> therefore need to check at run time if we can actually use these APIs.
>>
>> That sounds like the wrong approach to me ... could you please try to fix
>> the check in "configure" instead? E.g. by running compile_prog with
>> "-Werror", so that the test fails if there is no valid prototype available?
> It's not that simple. Xcode 11 and below (supporting macOS 10.15 and
> below, iOS 13 and below, etc) does not have preadv/pwritev symbols
> defined and would fail to compile. Xcode 12 (supporting macOS 11 and
> below, iOS 14 and below, etc) have preadv/pwritev weakly defined so if
> it runs on, for example, 10.15, it would abort. There is no way to
> determine at compile time if you can use preadv/pwritev or not when
> building with Xcode 12. The availability checks are Apple's preferred
> way to handle this kind of situation (they discourage directly
> checking if an API exists on a system).
Ok, got it now, thanks for the detailed explanation!
Thomas
- Re: [PATCH v2 6/9] tcg: implement mirror mapped JIT for iOS, (continued)
- Re: [PATCH v2 6/9] tcg: implement mirror mapped JIT for iOS, Joelle van Dyne, 2020/10/19
- Re: [PATCH v2 6/9] tcg: implement mirror mapped JIT for iOS, BALATON Zoltan, 2020/10/19
- Re: [PATCH v2 6/9] tcg: implement mirror mapped JIT for iOS, Richard Henderson, 2020/10/19
- Re: [PATCH v2 6/9] tcg: implement mirror mapped JIT for iOS, Joelle van Dyne, 2020/10/25
- Re: [PATCH v2 6/9] tcg: implement mirror mapped JIT for iOS, Joelle van Dyne, 2020/10/25
- Re: [PATCH v2 6/9] tcg: implement mirror mapped JIT for iOS, Alexander Bulekov, 2020/10/25
[PATCH v2 8/9] tcg: support JIT on Apple Silicon, Joelle van Dyne, 2020/10/18
[PATCH v2 9/9] block: check availablity for preadv/pwritev on mac, Joelle van Dyne, 2020/10/18
Re: [PATCH v2 0/9] iOS and Apple Silicon host support, Thomas Huth, 2020/10/19