qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PULL 0/1] Linux user for 7.1 patches
@ 2022-08-10 16:50 Laurent Vivier
  2022-08-10 19:14 ` Richard Henderson
  0 siblings, 1 reply; 5+ messages in thread
From: Laurent Vivier @ 2022-08-10 16:50 UTC (permalink / raw)
  To: qemu-devel; +Cc: Laurent Vivier

The following changes since commit 61b6e67171c602cf6451e4928c9cdcc24c57a485:

  Update version for v7.1.0-rc2 release (2022-08-09 19:25:15 -0700)

are available in the Git repository at:

  https://gitlab.com/laurent_vivier/qemu.git tags/linux-user-for-7.1-pull-request

for you to fetch changes up to 3cd3df2a9584e6f753bb62a0028bd67124ab5532:

  linux-user: fix compat with glibc >= 2.36 sys/mount.h (2022-08-10 18:37:46 +0200)

----------------------------------------------------------------
Pull request linux-user 20220810

fix compat with glibc >= 2.36 sys/mount.h

----------------------------------------------------------------

Daniel P. Berrangé (1):
  linux-user: fix compat with glibc >= 2.36 sys/mount.h

 linux-user/syscall.c | 18 ++++++++++++++++++
 meson.build          |  2 ++
 2 files changed, 20 insertions(+)

-- 
2.37.1



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PULL 0/1] Linux user for 7.1 patches
  2022-08-10 16:50 Laurent Vivier
@ 2022-08-10 19:14 ` Richard Henderson
  0 siblings, 0 replies; 5+ messages in thread
From: Richard Henderson @ 2022-08-10 19:14 UTC (permalink / raw)
  To: Laurent Vivier, qemu-devel

On 8/10/22 09:50, Laurent Vivier wrote:
> The following changes since commit 61b6e67171c602cf6451e4928c9cdcc24c57a485:
> 
>    Update version for v7.1.0-rc2 release (2022-08-09 19:25:15 -0700)
> 
> are available in the Git repository at:
> 
>    https://gitlab.com/laurent_vivier/qemu.git tags/linux-user-for-7.1-pull-request
> 
> for you to fetch changes up to 3cd3df2a9584e6f753bb62a0028bd67124ab5532:
> 
>    linux-user: fix compat with glibc >= 2.36 sys/mount.h (2022-08-10 18:37:46 +0200)
> 
> ----------------------------------------------------------------
> Pull request linux-user 20220810
> 
> fix compat with glibc >= 2.36 sys/mount.h

Applied, thanks.  Please update https://wiki.qemu.org/ChangeLog/7.1 as appropriate.


r~


> 
> ----------------------------------------------------------------
> 
> Daniel P. Berrangé (1):
>    linux-user: fix compat with glibc >= 2.36 sys/mount.h
> 
>   linux-user/syscall.c | 18 ++++++++++++++++++
>   meson.build          |  2 ++
>   2 files changed, 20 insertions(+)
> 



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PULL 0/1] Linux user for 7.1 patches
@ 2022-08-12 10:33 Laurent Vivier
  2022-08-12 10:33 ` [PULL 1/1] linux-user/aarch64: Reset target data on MADV_DONTNEED Laurent Vivier
  2022-08-12 17:45 ` [PULL 0/1] Linux user for 7.1 patches Richard Henderson
  0 siblings, 2 replies; 5+ messages in thread
From: Laurent Vivier @ 2022-08-12 10:33 UTC (permalink / raw)
  To: qemu-devel; +Cc: Laurent Vivier

The following changes since commit a6b1c53e79d08a99a28cc3e67a3e1a7c34102d6b:

  Merge tag 'linux-user-for-7.1-pull-request' of https://gitlab.com/laurent_vivier/qemu into staging (2022-08-10 10:26:57 -0700)

are available in the Git repository at:

  https://gitlab.com/laurent_vivier/qemu.git tags/linux-user-for-7.1-pull-request

for you to fetch changes up to dbbf89751b14aa5d281bad3af273e9ffaae82262:

  linux-user/aarch64: Reset target data on MADV_DONTNEED (2022-08-11 11:34:17 +0200)

----------------------------------------------------------------
Pull request linux-user 20220812

----------------------------------------------------------------

Vitaly Buka (1):
  linux-user/aarch64: Reset target data on MADV_DONTNEED

 accel/tcg/translate-all.c | 26 ++++++++++++++++++++++++++
 include/exec/cpu-all.h    |  1 +
 linux-user/mmap.c         |  3 +++
 3 files changed, 30 insertions(+)

-- 
2.37.1



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PULL 1/1] linux-user/aarch64: Reset target data on MADV_DONTNEED
  2022-08-12 10:33 [PULL 0/1] Linux user for 7.1 patches Laurent Vivier
@ 2022-08-12 10:33 ` Laurent Vivier
  2022-08-12 17:45 ` [PULL 0/1] Linux user for 7.1 patches Richard Henderson
  1 sibling, 0 replies; 5+ messages in thread
From: Laurent Vivier @ 2022-08-12 10:33 UTC (permalink / raw)
  To: qemu-devel; +Cc: Vitaly Buka, Richard Henderson, Laurent Vivier

From: Vitaly Buka <vitalybuka@google.com>

aarch64 stores MTE tags in target_date, and they should be reset by
MADV_DONTNEED.

Signed-off-by: Vitaly Buka <vitalybuka@google.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20220711220028.2467290-1-vitalybuka@google.com>
[lv: fix code style issues]
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 accel/tcg/translate-all.c | 26 ++++++++++++++++++++++++++
 include/exec/cpu-all.h    |  1 +
 linux-user/mmap.c         |  3 +++
 3 files changed, 30 insertions(+)

diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c
index ef62a199c7db..b83161a08190 100644
--- a/accel/tcg/translate-all.c
+++ b/accel/tcg/translate-all.c
@@ -2314,6 +2314,32 @@ void page_set_flags(target_ulong start, target_ulong end, int flags)
     }
 }
 
+void page_reset_target_data(target_ulong start, target_ulong end)
+{
+    target_ulong addr, len;
+
+    /*
+     * This function should never be called with addresses outside the
+     * guest address space.  If this assert fires, it probably indicates
+     * a missing call to h2g_valid.
+     */
+    assert(end - 1 <= GUEST_ADDR_MAX);
+    assert(start < end);
+    assert_memory_lock();
+
+    start = start & TARGET_PAGE_MASK;
+    end = TARGET_PAGE_ALIGN(end);
+
+    for (addr = start, len = end - start;
+         len != 0;
+         len -= TARGET_PAGE_SIZE, addr += TARGET_PAGE_SIZE) {
+        PageDesc *p = page_find_alloc(addr >> TARGET_PAGE_BITS, 1);
+
+        g_free(p->target_data);
+        p->target_data = NULL;
+    }
+}
+
 void *page_get_target_data(target_ulong address)
 {
     PageDesc *p = page_find(address >> TARGET_PAGE_BITS);
diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h
index f5bda2c3caa7..491629b9ba7a 100644
--- a/include/exec/cpu-all.h
+++ b/include/exec/cpu-all.h
@@ -271,6 +271,7 @@ int walk_memory_regions(void *, walk_memory_regions_fn);
 
 int page_get_flags(target_ulong address);
 void page_set_flags(target_ulong start, target_ulong end, int flags);
+void page_reset_target_data(target_ulong start, target_ulong end);
 int page_check_range(target_ulong start, target_ulong len, int flags);
 
 /**
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
index edceaca4a8e1..048c4135af14 100644
--- a/linux-user/mmap.c
+++ b/linux-user/mmap.c
@@ -894,6 +894,9 @@ abi_long target_madvise(abi_ulong start, abi_ulong len_in, int advice)
     if (advice == MADV_DONTNEED &&
         can_passthrough_madv_dontneed(start, end)) {
         ret = get_errno(madvise(g2h_untagged(start), len, MADV_DONTNEED));
+        if (ret == 0) {
+            page_reset_target_data(start, start + len);
+        }
     }
     mmap_unlock();
 
-- 
2.37.1



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PULL 0/1] Linux user for 7.1 patches
  2022-08-12 10:33 [PULL 0/1] Linux user for 7.1 patches Laurent Vivier
  2022-08-12 10:33 ` [PULL 1/1] linux-user/aarch64: Reset target data on MADV_DONTNEED Laurent Vivier
@ 2022-08-12 17:45 ` Richard Henderson
  1 sibling, 0 replies; 5+ messages in thread
From: Richard Henderson @ 2022-08-12 17:45 UTC (permalink / raw)
  To: Laurent Vivier, qemu-devel

On 8/12/22 03:33, Laurent Vivier wrote:
> The following changes since commit a6b1c53e79d08a99a28cc3e67a3e1a7c34102d6b:
> 
>    Merge tag 'linux-user-for-7.1-pull-request' of https://gitlab.com/laurent_vivier/qemu into staging (2022-08-10 10:26:57 -0700)
> 
> are available in the Git repository at:
> 
>    https://gitlab.com/laurent_vivier/qemu.git tags/linux-user-for-7.1-pull-request
> 
> for you to fetch changes up to dbbf89751b14aa5d281bad3af273e9ffaae82262:
> 
>    linux-user/aarch64: Reset target data on MADV_DONTNEED (2022-08-11 11:34:17 +0200)
> 
> ----------------------------------------------------------------
> Pull request linux-user 20220812

Applied, thanks.  Please update https://wiki.qemu.org/ChangeLog/7.1 as appropriate.


r~


> 
> ----------------------------------------------------------------
> 
> Vitaly Buka (1):
>    linux-user/aarch64: Reset target data on MADV_DONTNEED
> 
>   accel/tcg/translate-all.c | 26 ++++++++++++++++++++++++++
>   include/exec/cpu-all.h    |  1 +
>   linux-user/mmap.c         |  3 +++
>   3 files changed, 30 insertions(+)
> 



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-08-12 17:49 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-12 10:33 [PULL 0/1] Linux user for 7.1 patches Laurent Vivier
2022-08-12 10:33 ` [PULL 1/1] linux-user/aarch64: Reset target data on MADV_DONTNEED Laurent Vivier
2022-08-12 17:45 ` [PULL 0/1] Linux user for 7.1 patches Richard Henderson
  -- strict thread matches above, loose matches on Subject: below --
2022-08-10 16:50 Laurent Vivier
2022-08-10 19:14 ` Richard Henderson

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).