qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Blue Swirl <blauwirbel@gmail.com>
To: Pierre Riteau <Pierre.Riteau@irisa.fr>
Cc: G 3 <programmingkidx@gmail.com>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] Fixes a bug that tries to use the unimplemented function fdatasync on Mac OS X.
Date: Tue, 8 Dec 2009 20:35:15 +0200	[thread overview]
Message-ID: <f43fc5580912081035h223a6cd4h8787d505ebf84ebe@mail.gmail.com> (raw)
In-Reply-To: <BDDFA2A0-4592-48B6-B1FA-271224312C1A@irisa.fr>

On Tue, Dec 8, 2009 at 4:35 PM, Pierre Riteau <Pierre.Riteau@irisa.fr> wrote:
> On 1 oct. 2009, at 18:13, Blue Swirl wrote:
>
>> On Thu, Oct 1, 2009 at 6:30 PM, G 3 <programmingkidx@gmail.com> wrote:
>>> On Sep 30, 2009, at 3:16 PM, Anthony Liguori wrote:
>>>
>>> G 3 wrote:
>>>
>>> This patch fixes a problem in the file cutils.c that prevents qemu from
>>> being built on Mac OS X. This patch makes sure fsync is used instead.
>>>
>>> What is this against?  It doesn't apply to git.
>>>
>>> This is against the savannah
>>> repository: git://git.savannah.nongnu.org/qemu.git. Is this the wrong
>>> repository?
>>
>> The patch should not be needed since
>> 5f6b9e8fd5b9516170e582d9b6c27c98519a8031. Do you still have a problem?
>
> Sorry to dig up this old thread, but I just tried compiling qemu on my Mac and I see a warning when it compiles:
> cutils.c: In function ‘qemu_fdatasync’:
> cutils.c:128: warning: implicit declaration of function ‘fdatasync’
>
> I'm running OS X 10.6.2 with Xcode 3.2.1.
>
> Why this behavior? Because the configure check introduced in 5f6b9e finds that fdatasync is available.
> Although the fdatasync function is not referenced in the standard includes (hence the warning), it is present as a syscall:
> /usr/include/sys/syscall.h:#define      SYS_fdatasync      187
> Moreover, a fdatasync symbol is available through libSystem (which is why the linking done by the configure check works).
>
> It's not clear what is the best solution here. Googling the issue, some projects add the fdatasync prototype to their headers to avoid warnings.
> Other assume that fdatasync could be a noop and fall back to fsync.
>
> I would go with the second second: the function is not defined, there is no man page, let's assume it doesn't work.
> To fix the configure check we can simply add -Werror to the compile_prog cflags (I will send a patch if you agree with this).

I'd rather add something like
#ifdef __APPLE__
 exit(1);
#endif
(or the shell equivalent for configure) and a comment with your explanation.

  reply	other threads:[~2009-12-08 18:35 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-20  0:58 [Qemu-devel] [PATCH] Fixes a bug that tries to use the unimplemented function fdatasync on Mac OS X G 3
2009-09-30 19:16 ` Anthony Liguori
2009-10-01 15:30   ` G 3
2009-10-01 16:13     ` Blue Swirl
2009-12-08 14:35       ` Pierre Riteau
2009-12-08 18:35         ` Blue Swirl [this message]
2009-12-08 21:02           ` Pierre Riteau
2009-12-08 23:01           ` Alexander Graf
2009-12-10 16:49             ` Pierre Riteau

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=f43fc5580912081035h223a6cd4h8787d505ebf84ebe@mail.gmail.com \
    --to=blauwirbel@gmail.com \
    --cc=Pierre.Riteau@irisa.fr \
    --cc=programmingkidx@gmail.com \
    --cc=qemu-devel@nongnu.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).