mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
nodeinfo: report error when given node is out of range
https://bugzilla.redhat.com/show_bug.cgi?id=1145050 Signed-off-by: Jincheng Miao <jmiao@redhat.com> Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
c3e2d5929c
commit
7db1936642
@ -2028,10 +2028,24 @@ nodeGetFreePages(unsigned int npages,
|
||||
unsigned long long *counts)
|
||||
{
|
||||
int ret = -1;
|
||||
int cell;
|
||||
int cell, lastCell;
|
||||
size_t i, ncounts = 0;
|
||||
|
||||
for (cell = startCell; cell < (int) (startCell + cellCount); cell++) {
|
||||
if ((lastCell = virNumaGetMaxNode()) < 0)
|
||||
return 0;
|
||||
|
||||
if (startCell > lastCell) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||
_("start cell %d out of range (0-%d)"),
|
||||
startCell, lastCell);
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
lastCell = startCell + cellCount;
|
||||
if (startCell + cellCount < lastCell)
|
||||
lastCell = startCell + cellCount;
|
||||
|
||||
for (cell = startCell; cell < lastCell; cell++) {
|
||||
for (i = 0; i < npages; i++) {
|
||||
unsigned int page_size = pages[i];
|
||||
unsigned int page_free;
|
||||
|
Loading…
Reference in New Issue
Block a user