Browse Source

page-vary: Build migration_legacy_page_bits as common code

Use target_info->page_bits_init to implement
migration_legacy_page_bits.  Because this is the last
function within the file, rename page-vary-target.c
to page-vary-system.c and build once for system mode.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <20260217095106.598486-7-richard.henderson@linaro.org>
[PMD: Update MAINTAINERS]
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
master
Richard Henderson 1 month ago
committed by Philippe Mathieu-Daudé
parent
commit
c87bf20b07
  1. 2
      MAINTAINERS
  2. 2
      meson.build
  3. 19
      page-vary-system.c

2
MAINTAINERS

@ -159,7 +159,7 @@ M: Richard Henderson <richard.henderson@linaro.org>
R: Paolo Bonzini <pbonzini@redhat.com>
S: Maintained
F: system/watchpoint.c
F: page-vary-target.c
F: page-vary-system.c
F: page-vary-common.c
F: accel/tcg/
F: accel/stubs/tcg-stub.c

2
meson.build

@ -3833,7 +3833,7 @@ if get_option('b_lto')
pagevary = declare_dependency(link_with: pagevary)
endif
common_ss.add(pagevary)
specific_ss.add(files('page-vary-target.c'))
system_ss.add(files('page-vary-system.c'))
common_ss.add(files('target-info.c'))
system_ss.add(files('target-info-qom.c'))

19
page-vary-target.c → page-vary-system.c

@ -1,5 +1,5 @@
/*
* Variable page size handling -- target specific part.
* Variable page size handling -- system specific part.
*
* Copyright (c) 2003 Fabrice Bellard
*
@ -17,24 +17,17 @@
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
#define IN_PAGE_VARY 1
#include "qemu/osdep.h"
#include "exec/page-vary.h"
#include "exec/target_page.h"
#ifndef CONFIG_USER_ONLY
#include "exec/tlb-flags.h"
#include "qemu/target-info-impl.h"
QEMU_BUILD_BUG_ON(TLB_FLAGS_MASK & ((1u < TARGET_PAGE_BITS_MIN) - 1));
int migration_legacy_page_bits(void)
{
#ifdef TARGET_PAGE_BITS_VARY
QEMU_BUILD_BUG_ON(TARGET_PAGE_BITS_LEGACY < TARGET_PAGE_BITS_MIN);
return TARGET_PAGE_BITS_LEGACY;
#else
return TARGET_PAGE_BITS;
#endif
const TargetInfo *ti = target_info();
assert(ti->page_bits_init >= TARGET_PAGE_BITS_MIN);
return ti->page_bits_init;
}
#endif
Loading…
Cancel
Save