With r205496 in place we should ensure that nargs and nreturns are always
set to sane values as they no longer default to 0, otherwise some OFW implementation might copy in or out arguments not based on what the actual function takes but what ever stack garbage nargs and nreturns supply. Reviewed by: nwhitehorn
This commit is contained in:
parent
4de64106dd
commit
bb4566312b
@ -589,6 +589,7 @@ ofw_std_close(ofw_t ofw, ihandle_t instance)
|
||||
} args = {
|
||||
(cell_t)"close",
|
||||
1,
|
||||
0,
|
||||
};
|
||||
|
||||
args.instance = instance;
|
||||
@ -717,6 +718,7 @@ ofw_std_release(ofw_t ofw, void *virt, size_t size)
|
||||
} args = {
|
||||
(cell_t)"release",
|
||||
2,
|
||||
0,
|
||||
};
|
||||
|
||||
args.virt = (cell_t)virt;
|
||||
@ -738,6 +740,8 @@ ofw_std_enter(ofw_t ofw)
|
||||
cell_t nreturns;
|
||||
} args = {
|
||||
(cell_t)"enter",
|
||||
0,
|
||||
0,
|
||||
};
|
||||
|
||||
openfirmware(&args);
|
||||
@ -754,6 +758,8 @@ ofw_std_exit(ofw_t ofw)
|
||||
cell_t nreturns;
|
||||
} args = {
|
||||
(cell_t)"exit",
|
||||
0,
|
||||
0,
|
||||
};
|
||||
|
||||
openfirmware(&args);
|
||||
|
@ -737,6 +737,7 @@ ofw_real_close(ofw_t ofw, ihandle_t instance)
|
||||
} args = {
|
||||
(cell_t)"close",
|
||||
1,
|
||||
0,
|
||||
};
|
||||
|
||||
args.instance = instance;
|
||||
@ -876,6 +877,7 @@ ofw_real_release(ofw_t ofw, void *virt, size_t size)
|
||||
} args = {
|
||||
(cell_t)"release",
|
||||
2,
|
||||
0,
|
||||
};
|
||||
|
||||
args.virt = (cell_t)virt;
|
||||
@ -897,6 +899,8 @@ ofw_real_enter(ofw_t ofw)
|
||||
cell_t nreturns;
|
||||
} args = {
|
||||
(cell_t)"enter",
|
||||
0,
|
||||
0,
|
||||
};
|
||||
|
||||
openfirmware(&args);
|
||||
@ -913,6 +917,8 @@ ofw_real_exit(ofw_t ofw)
|
||||
cell_t nreturns;
|
||||
} args = {
|
||||
(cell_t)"exit",
|
||||
0,
|
||||
0,
|
||||
};
|
||||
|
||||
openfirmware(&args);
|
||||
|
Loading…
x
Reference in New Issue
Block a user