Masami Hiramatsu <[email protected]> writes:

> Add following APIs for accessing registers and stack entries from pt_regs.

You forgot to state who calls these functions/why are they added?
Who only has strings for registers?

I can see the point of having a function for nth argument though,
that's useful.

> +static inline unsigned long regs_get_argument_nth(struct pt_regs *regs,
> +                                               unsigned n)
> +{
> +     if (n < NR_REGPARMS) {
> +             switch (n) {
> +             case 0:
> +                     return regs->ax;
> +             case 1:
> +                     return regs->dx;
> +             case 2:
> +                     return regs->cx;


[....]

That could be done shorter with a offsetof table.

> +     if (n < NR_REGPARMS) {
> +             switch (n) {
> +             case 0:
> +                     return regs->di;
> +             case 1:
> +                     return regs->si;
> +             case 2:
> +                     return regs->dx;
> +             case 3:
> +                     return regs->cx;
> +             case 4:
> +                     return regs->r8;
> +             case 5:
> +                     return regs->r9;

and that too.


-Andi
-- 
[email protected] -- Speaking for myself only.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to