Re: ASM flags in general

From: Andy Lutomirski
Date: Mon Jul 27 2015 - 19:36:52 EST


On Mon, Jul 27, 2015 at 4:22 PM, H. Peter Anvin <hpa@xxxxxxxxx> wrote:
> For that to work, gcc would have to know about the extable.

It could, I think:

asm goto (
"1: mov ...\n\t"
_ASM_EXTABLE(1b, %l2) /* or whatever index it is */
: ... : ... : ... : efault);

return 0;

efault:
return -EFAULT;

I think that wrmsr_safe could get this treatment with current GCC.
put_user plausibly could, too, if we were willing to mark it volatile
and accept that we're lying a little bit about the lack of an output
constraint. get_user would need GCC to understand output constraints
for real.

--Andy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/