hw/mips: Simplify code using ROUND_UP(INITRD_PAGE_SIZE)
Instead of using a INITRD_PAGE_MASK definition, use the simpler INITRD_PAGE_SIZE one which allows us to simplify the code by using directly the self-explicit ROUND_UP() macro. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20200927163943.614604-3-f4bug@amsat.org>
This commit is contained in:
parent
9d585eaa87
commit
acab36ca25
@ -133,8 +133,7 @@ static int64_t load_kernel(CPUMIPSState *env)
|
||||
if (loaderparams.initrd_filename) {
|
||||
initrd_size = get_image_size(loaderparams.initrd_filename);
|
||||
if (initrd_size > 0) {
|
||||
initrd_offset = (kernel_high + ~INITRD_PAGE_MASK) &
|
||||
INITRD_PAGE_MASK;
|
||||
initrd_offset = ROUND_UP(kernel_high, INITRD_PAGE_SIZE);
|
||||
if (initrd_offset + initrd_size > ram_size) {
|
||||
error_report("memory too small for initial ram disk '%s'",
|
||||
loaderparams.initrd_filename);
|
||||
|
@ -1077,9 +1077,9 @@ static int64_t load_kernel(void)
|
||||
* the initrd. It takes at most 128kiB for 2GB RAM and 4kiB
|
||||
* pages.
|
||||
*/
|
||||
initrd_offset = (loaderparams.ram_low_size - initrd_size
|
||||
- (128 * KiB)
|
||||
- ~INITRD_PAGE_MASK) & INITRD_PAGE_MASK;
|
||||
initrd_offset = ROUND_UP(loaderparams.ram_low_size
|
||||
- (initrd_size + 128 * KiB),
|
||||
INITRD_PAGE_SIZE);
|
||||
if (kernel_high >= initrd_offset) {
|
||||
error_report("memory too small for initial ram disk '%s'",
|
||||
loaderparams.initrd_filename);
|
||||
|
@ -90,8 +90,7 @@ static int64_t load_kernel(void)
|
||||
if (loaderparams.initrd_filename) {
|
||||
initrd_size = get_image_size(loaderparams.initrd_filename);
|
||||
if (initrd_size > 0) {
|
||||
initrd_offset = (kernel_high + ~INITRD_PAGE_MASK) &
|
||||
INITRD_PAGE_MASK;
|
||||
initrd_offset = ROUND_UP(kernel_high, INITRD_PAGE_SIZE);
|
||||
if (initrd_offset + initrd_size > loaderparams.ram_size) {
|
||||
error_report("memory too small for initial ram disk '%s'",
|
||||
loaderparams.initrd_filename);
|
||||
|
@ -115,8 +115,7 @@ static int64_t load_kernel(void)
|
||||
if (loaderparams.initrd_filename) {
|
||||
initrd_size = get_image_size(loaderparams.initrd_filename);
|
||||
if (initrd_size > 0) {
|
||||
initrd_offset = (kernel_high + ~INITRD_PAGE_MASK) &
|
||||
INITRD_PAGE_MASK;
|
||||
initrd_offset = ROUND_UP(kernel_high, INITRD_PAGE_SIZE);
|
||||
if (initrd_offset + initrd_size > ram_size) {
|
||||
error_report("memory too small for initial ram disk '%s'",
|
||||
loaderparams.initrd_filename);
|
||||
|
@ -2,8 +2,10 @@
|
||||
#define HW_MIPS_H
|
||||
/* Definitions for mips board emulation. */
|
||||
|
||||
#include "qemu/units.h"
|
||||
|
||||
/* Kernels can be configured with 64KB pages */
|
||||
#define INITRD_PAGE_MASK (~((1 << 16) - 1))
|
||||
#define INITRD_PAGE_SIZE (64 * KiB)
|
||||
|
||||
#include "exec/memory.h"
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user