[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: secure exec
From: |
Niels Möller |
Subject: |
Re: secure exec |
Date: |
25 May 2003 11:18:06 +0200 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 |
address@hidden (Niels Möller) writes:
> Marcus Brinkmann <address@hidden> writes:
>
> > The label in the reply should be the label of the request + 1 (where the
> > request always has the least significant bit 0).
>
> Ok. So the error code goes in mr1 then?
I think it might be a significant optimization to use one bit of the
reply label for an error indication. Consider a call foo. If it
succeeds, it sends a reply with
label: FOO_REPLY
mr1: returned value
And on error, it sends
label: FOO_REPLY | ERROR
mr1: error code
The optimization is of the successful case, where the alternative,
without allocating an error bit, would be
label: FOO_REPLY
mr1: 0 /* ERR_OK */
mr2: returned value
So by using one bit of the label, we save one mr-register on *all*
successful ipc replies. That should increases the set of ipc:s for
which the reply fits entirely in registers. If I understood the x86
ABI correctly, for x86 this primarily affects calls that don't return
any values on success.
/Niels
- secure exec, Marcus Brinkmann, 2003/05/22
- Re: secure exec, Niels Möller, 2003/05/23
- Re: secure exec, Marcus Brinkmann, 2003/05/23
- Re: secure exec, Niels Möller, 2003/05/23
- Re: secure exec, Marcus Brinkmann, 2003/05/24
- Re: secure exec, Niels Möller, 2003/05/25
- Re: secure exec,
Niels Möller <=
- Re: secure exec, Marcus Brinkmann, 2003/05/25
- Re: secure exec, Niels Möller, 2003/05/25
- Re: secure exec, Marcus Brinkmann, 2003/05/25
Re: secure exec, Marcus Brinkmann, 2003/05/23