lkml.org 
[lkml]   [2012]   [Aug]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/5] x86/uprobes: implement x86 specific arch_uprobe_*_step
On 08/08/2012 04:53 PM, Oleg Nesterov wrote:
>> Why? I tried 'lock popf' and I got invalid instruction. The same for
>> 'rep popf'.
>
> int main(void)
> {
> asm volatile ("pushf; rep; popf");
>
> return 0;
> }
>

Just tested and it works. Hmm.

> OK, probably nobody should do this (although the kernel should not
> assume this imho), but
>
> asm volatile ("pushfw; popfw");
>
> doesn't look bad and the code is
>
> 000000000040047c<main>:
> 40047c: 55 push %rbp
> 40047d: 48 89 e5 mov %rsp,%rbp
> 400480: 66 9c pushfw
> 400482: 66 9d popfw
> 400484: b8 00 00 00 00 mov $0x0,%eax
> 400489: c9 leaveq
> 40048a: c3 retq

Yes, that one works as well.

> And in any case it would be better to re-use auprobe->fixups.

Okay.

> Oleg.
>

Sebastian


\
 
 \ /
  Last update: 2012-08-08 17:42    [W:0.095 / U:0.088 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site