From: supriya kannery <supriyak@in.ibm.com>
To: Stefan Hajnoczi <stefanha@gmail.com>
Cc: Kevin Wolf <kwolf@redhat.com>,
Supriya Kannery <supriyak@linux.vnet.ibm.com>,
Christoph Hellwig <hch@lst.de>,
qemu-devel@nongnu.org, Luiz Capitulino <lcapitulino@redhat.com>
Subject: Re: [Qemu-devel] [v9 Patch 6/6]Qemu: raw posix implementation of reopen functions
Date: Tue, 22 Nov 2011 17:00:48 +0530 [thread overview]
Message-ID: <4ECB87E8.3030806@in.ibm.com> (raw)
In-Reply-To: <CAJSP0QVMUbWdss25=HV-8qBtgDuc8drUJckxgpVWzJiHju6-mA@mail.gmail.com>
Stefan Hajnoczi wrote:
> On Tue, Nov 22, 2011 at 9:45 AM, supriya kannery <supriyak@in.ibm.com> wrote:
>
>> supriya kannery wrote:
>>
>>> Stefan Hajnoczi wrote:
>>>
>>>> On Fri, Nov 11, 2011 at 6:48 AM, Supriya Kannery
>>>> <supriyak@linux.vnet.ibm.com> wrote:
>>>>
>>>>
>>>>> + }
>>>>> + if ((flags & BDRV_O_NOCACHE)) {
>>>>> + raw_rs->reopen_state.reopen_flags |= O_DIRECT;
>>>>> + } else {
>>>>> + raw_rs->reopen_state.reopen_flags &= ~O_DIRECT;
>>>>> + }
>>>>> + ret = fcntl_setfl(raw_rs->reopen_fd,
>>>>> raw_rs->reopen_state.reopen_flags);
>>>>>
>>>>>
>>>> I wonder if this works on Solaris, FreeBSD, etc?
>>>>
>>>> Perhaps there needs to be a fallback to the missing "else" case below...
>>>>
>>>>
>>>>
>>> ok. Will look into whether this will work on Solaris, FreeBSD etc..
>>>
>>>
>> This should work for all non-win Oses.
>> I have tested only in x86.
>>
>> #ifndef _WIN32
>> /* Sets a specific flag */
>> int fcntl_setfl(int fd, int flag)
>> {
>> int flags;
>>
>> flags = fcntl(fd, F_GETFL);
>>
>
> Are you sure POSIX guarantees that O_DIRECT can be changed with
> F_SETFL? I didn't find any statement in the specification. It is
> possible that this code compiles but does not actually work on
> non-Linux OSes. Did you run tests?
>
I don't have FreeBSD and Solaris systems to use.
Referred the following man page links to verify that O_DIRECT in these
OSes can be changed using fcntl.
http://fuse4bsd.creo.hu/localcgi/man-cgi.cgi?fcntl+2
http://man-wiki.net/index.php/2:fcntl
If anybody with these systems can confirm, that would be very helpful.
-thanks, Supriya
> Stefan
>
>
next prev parent reply other threads:[~2011-11-22 11:52 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-11 6:47 [Qemu-devel] [v9 Patch 0/6]Qemu: Host pagecache setting from cmdline and monitor Supriya Kannery
2011-11-11 6:47 ` [Qemu-devel] [v9 Patch 1/6]Qemu: Enhance "info block" to display host cache setting Supriya Kannery
2011-11-11 10:09 ` [Qemu-devel] [v9 Patch 1/6 - updated]Qemu: " Supriya Kannery
2011-11-17 12:38 ` Luiz Capitulino
2011-11-18 9:14 ` supriya kannery
2011-11-11 6:47 ` [Qemu-devel] [v9 Patch 2/6]Qemu: Error classes for file reopen and data sync failure Supriya Kannery
2011-11-17 12:50 ` Luiz Capitulino
2011-11-18 9:29 ` supriya kannery
2011-11-18 12:09 ` Luiz Capitulino
2011-11-11 6:47 ` [Qemu-devel] [v9 Patch 3/6]Qemu: Cmd "block_set_hostcache" for dynamic cache change Supriya Kannery
2011-11-16 18:34 ` Stefan Hajnoczi
2011-11-17 5:45 ` Supriya Kannery
2011-11-17 13:14 ` Luiz Capitulino
2011-11-17 13:11 ` Luiz Capitulino
2011-11-18 10:44 ` supriya kannery
2011-11-11 6:48 ` [Qemu-devel] [v9 Patch 4/6]Qemu: Add commandline -drive option 'hostcache' Supriya Kannery
2011-11-16 20:06 ` Stefan Hajnoczi
2011-11-17 5:18 ` Supriya Kannery
2011-11-17 14:11 ` Stefan Hajnoczi
2011-11-21 12:28 ` supriya kannery
2011-11-21 14:03 ` Stefan Hajnoczi
2011-11-22 8:10 ` supriya kannery
2011-11-22 9:55 ` Kevin Wolf
2011-11-22 11:17 ` Stefan Hajnoczi
2011-11-22 11:31 ` Kevin Wolf
2011-11-11 6:48 ` [Qemu-devel] [v9 Patch 5/6]Qemu: Framework for reopening images safely Supriya Kannery
2011-11-17 13:16 ` Luiz Capitulino
2011-11-17 14:36 ` Stefan Hajnoczi
2011-11-21 12:13 ` supriya kannery
2011-11-21 14:31 ` Stefan Hajnoczi
2011-11-22 10:24 ` supriya kannery
2011-11-22 11:04 ` Kevin Wolf
2011-11-22 11:16 ` supriya kannery
2011-11-22 11:49 ` Stefan Hajnoczi
2011-11-23 3:52 ` Supriya Kannery
2011-11-11 6:48 ` [Qemu-devel] [v9 Patch 6/6]Qemu: raw posix implementation of reopen functions Supriya Kannery
2011-11-17 14:41 ` Stefan Hajnoczi
2011-11-21 12:30 ` supriya kannery
2011-11-22 9:45 ` supriya kannery
2011-11-22 11:32 ` Stefan Hajnoczi
2011-11-22 11:30 ` supriya kannery [this message]
2011-11-22 11:54 ` Stefan Hajnoczi
2011-11-22 11:36 ` Christoph Hellwig
2012-01-19 16:24 ` [Qemu-devel] [v9 Patch 0/6]Qemu: Host pagecache setting from cmdline and monitor Kevin Wolf
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=4ECB87E8.3030806@in.ibm.com \
--to=supriyak@in.ibm.com \
--cc=hch@lst.de \
--cc=kwolf@redhat.com \
--cc=lcapitulino@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.com \
--cc=supriyak@linux.vnet.ibm.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.