limit = OS_ReservedPageGetLimit();
if (!BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
- uint32 limit32;
- /* Ensure limit fits in 32-bits */
- limit32 = (uint32)limit;
- if (limit32 != limit) {
- return BALLOON_FAILURE;
+ if (limit != (uint32)limit) {
+ limit = (uint32)limit;
}
}
status = BackdoorCmd(BALLOON_BDOOR_CMD_TARGET, limit, 0, target,
&b->resetFlag);
- if (!BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
- *target = MAX(MAX_UINT32, *target);
+ if (target != NULL && !BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
+ *target = MIN(MAX_UINT32, *target);
}
/* update stats */
status = BackdoorCmd(BALLOON_BDOOR_CMD_LOCK, ppn, 0, target,
&b->resetFlag);
- if (!BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
- *target = MAX(MAX_UINT32, *target);
+ if (target != NULL && !BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
+ *target = MIN(MAX_UINT32, *target);
}
/* update stats */
status = BackdoorCmd(BALLOON_BDOOR_CMD_UNLOCK, ppn, 0, target,
&b->resetFlag);
- if (!BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
- *target = MAX(MAX_UINT32, *target);
+ if (target != NULL && !BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
+ *target = MIN(MAX_UINT32, *target);
}
/* update stats */
}
status = BackdoorCmd(cmd, (size_t)ppn, nPages, target, &b->resetFlag);
- if (!BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
- *target = MAX(MAX_UINT32, *target);
+ if (target != NULL && !BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
+ *target = MIN(MAX_UINT32, *target);
}
/* update stats */
}
status = BackdoorCmd(cmd, (size_t)ppn, nPages, target, &b->resetFlag);
- if (!BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
- *target = MAX(MAX_UINT32, *target);
+ if (target != NULL && !BackdoorHasCapability(b, BALLOON_64_BIT_TARGET)) {
+ *target = MIN(MAX_UINT32, *target);
}
/* update stats */