qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: Beata Michalska <beata.michalska@linaro.org>, qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org, quintela@redhat.com,
	dgilbert@redhat.com, shameerali.kolothum.thodi@huawei.com,
	eric.auger@redhat.com, qemu-arm@nongnu.org, pbonzini@redhat.com
Subject: Re: [Qemu-devel] [PATCH 2/4] Memory: Enable writeback for given memory region
Date: Tue, 24 Sep 2019 09:28:36 -0700	[thread overview]
Message-ID: <d8ca7a99-ca3d-00b8-f34c-82375ecb7c4d@linaro.org> (raw)
In-Reply-To: <20190910095610.4546-3-beata.michalska@linaro.org>

On 9/10/19 2:56 AM, Beata Michalska wrote:
> +int main(void) {
> +#if defined(_POSIX_MAPPED_FILES) && _POSIX_MAPPED_FILES > 0 \
> +&& defined(_POSIX_SYNCHRONIZED_IO) && _POSIX_SYNCHRONIZED_IO > 0
> +return msync(NULL,0, MS_SYNC);
> +#else
> +#error Not supported
> +#endif
> +}

Is there any particular reason to check _POSIX_MAPPED_FILES &
_POSIX_SYNCHRONIZED_IO?  IIRC, you can use those to "safely" use MS_SYNC.  But
this is a configure test, and an error is in fact our defined failure case, so
"safely" doesn't seem particularly relevant.

Alternately, do we even support any systems (besides perhaps windows) that do
not provide POSIX-2001 support, and so include msync + MS_SYNC?  My first guess
is that we don't.

> +        msync((void *)((uintptr_t)addr & qemu_host_page_mask),
> +               HOST_PAGE_ALIGN(length), MS_SYNC);

This isn't quite right.  If you move addr down to a lower address via this page
mask, you must also increase length by the same amount, and only afterward
increase length to the host page size.

Consider addr == 0xffffff, length = 2.  This covers two pages, so you'd expect
the final parameters to be, for 4k page size, 0xfff000, 0x2000.


r~


  parent reply	other threads:[~2019-09-24 17:13 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-10  9:56 [Qemu-devel] [PATCH 0/4] target/arm: Support for Data Cache Clean up to PoP Beata Michalska
2019-09-10  9:56 ` [Qemu-devel] [PATCH 1/4] tcg: cputlb: Add probe_read Beata Michalska
2019-09-23 23:54   ` Alex Bennée
2019-09-10  9:56 ` [Qemu-devel] [PATCH 2/4] Memory: Enable writeback for given memory region Beata Michalska
2019-09-24  0:00   ` Alex Bennée
2019-10-09 11:40     ` Beata Michalska
2019-09-24 16:28   ` Richard Henderson [this message]
2019-10-09 11:44     ` Beata Michalska
2019-09-24 16:30   ` Richard Henderson
2019-10-09 11:45     ` Beata Michalska
2019-09-10  9:56 ` [Qemu-devel] [PATCH 3/4] migration: ram: Switch to ram block writeback Beata Michalska
2019-09-10 10:26   ` Dr. David Alan Gilbert
2019-09-10 11:28     ` Beata Michalska
2019-09-10 13:16       ` Dr. David Alan Gilbert
2019-09-10 14:21         ` Beata Michalska
2019-09-11 10:36           ` Dr. David Alan Gilbert
2019-09-12  9:10             ` Beata Michalska
2019-09-24 16:30   ` Richard Henderson
2019-09-10  9:56 ` [Qemu-devel] [PATCH 4/4] target/arm: Add support for DC CVAP & DC CVADP ins Beata Michalska
2019-09-23 23:54   ` Alex Bennée
2019-10-09 11:47     ` Beata Michalska
2019-09-24  1:16   ` Alex Bennée
2019-10-09 11:49     ` Beata Michalska
2019-09-24 17:22   ` Richard Henderson
2019-10-09 11:53     ` Beata Michalska

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=d8ca7a99-ca3d-00b8-f34c-82375ecb7c4d@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=beata.michalska@linaro.org \
    --cc=dgilbert@redhat.com \
    --cc=eric.auger@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    --cc=shameerali.kolothum.thodi@huawei.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 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).