Messages in this thread | | | Date | Thu, 17 Mar 2016 16:42:56 +0100 | From | Torsten Duwe <> | Subject | Re: [PATCH][v6][RFC] livepatch/ppc: Enable livepatching on powerpc |
| |
On Wed, Mar 09, 2016 at 05:59:40PM +1100, Balbir Singh wrote: > > Changelog v6: > 1. Experimental changes -- need loads of testing > Based on the assumption that very far TOC and LR values > indicate the call happened through a stub and the > stub return works differently from a local call which > uses klp_return_helper.
Well, this is true, but the inverse is not. Less than 2GiB between LR and TOC is a necessary but not a sufficient condition for a local call.
I see the problem with your code that it hardly detects calls from one module to another nearby. It will fail iff you mistake a global call to a module loaded earlier to be local while patching AND you access global data / 64-bit constants after that call before the TOC is sanitised again.
Torsten
| |