This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH V7] amd64-mpx: initialize bnd register before performing inferior calls.



Am 2/8/2017 um 4:21 PM schrieb Pedro Alves:
I just occurred to me that I think it's important that
we test what happens to the BND registers _after_ the
infcall finishes:

  #1 - by normal completion

  #2 - when it is interrupted midway, e.g., because the
       called function trips on a breakpoint.

I didn't find this in the current test.

I expect that in case #1, the BND registers are restored to
what they were before the infcall.  The test should exercise
this, by continuing execution after the infcall returns, and
checking that a bounds violation / lack of bounds violation,
is still detected / not detected as if the infcall didn't
happen.
BND registers should be restored to the values they had previous to the inferior call.
AFAIR that is the behaviour.

I will change the test to reflect more what you are proposing. Nice ideas have to be integrated!
Thanks a lot! :)
Similarly, for #2, once gdb "silently stops" after being
resumed from the breakpoint hit, I think all registers are
restored, so the same testing would apply then.
Yes, will add the test!
You may also think about testing what should happen
to bounds checks done by the function that had the
breakpoint that interrupted the infcall, if you say, step
over some code inside that interrupted function.

Comprehensive testing like that would make it clearer how
the feature is meant to behave, and ensure it continues
working like that going forward.
Agreed! I was considering that was default GDB functionality before.
But it is indeed interesting to test those cases. Being sure that also in this context
those functionalities are not broken. Thanks again!
Lastly, shouldn't the manual say something about all this?
I think so, explaing what is expected for inferior calls in presence of MPX in general.
The entry should explain the case that you have pointed out above, right?
Thanks,
Pedro Alves


Thanks a lot for the valuable contribution,
/Fred
Intel Deutschland GmbH
Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de
Managing Directors: Christin Eisenschmid, Christian Lamprechter
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]