From: Linus Torvalds Date: Fri, 27 Dec 2013 23:30:58 +0000 (-0800) Subject: x86: Replace assembly access_ok() with a C variant X-Git-Tag: v3.14-rc1~167^2~1 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c5fe5d80680e2949ffe102180f5fc6cefc0d145f;p=pandora-kernel.git x86: Replace assembly access_ok() with a C variant It turns out that the assembly variant doesn't actually produce that good code, presumably partly because it creates a long dependency chain with no scheduling, and partly because we cannot get a flags result out of gcc (which could be fixed with asm goto, but it turns out not to be worth it.) The C code allows gcc to schedule and generate multiple (easily predictable) branches, and as a side benefit we can really optimize the case where the size is constant. Link: http://lkml.kernel.org/r/CA%2B55aFzPBdbfKovMT8Edr4SmE2_=%2BOKJFac9XW2awegogTkVTA@mail.gmail.com Signed-off-by: H. Peter Anvin --- Reading git-diff-tree failed