On 7/8/23 19:26, Richard Henderson wrote:
On 7/6/23 12:34, Andreas Schwab wrote:
Fixes: 86f04735ac ("linux-user: Fix brk() to release pages")
Signed-off-by: Andreas Schwab <sch...@suse.de>
---
  linux-user/syscall.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 08162cc966..e8a17377f5 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -805,7 +805,7 @@ static abi_ulong brk_page;
  void target_set_brk(abi_ulong new_brk)
  {
-    target_brk = new_brk;
+    target_brk = TARGET_PAGE_ALIGN(new_brk);
      brk_page = HOST_PAGE_ALIGN(target_brk);
  }

It make sense, since that's how do_brk aligns things.

Yes, patch looks good.
I haven't tested, but it seems it adjusts the initial brk(0) value
only to make sure that it's target page aligned.
Maybe the title should be: ?
linux-user: make sure the initial brk(0) is page-aligned

I'm curious why this error might have produced host memory clobbering, but I'm 
not going to debug that.

I don't believe that this un-alignment triggers host memory clobbering either.

Helge

Reply via email to