linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: linux@arm.linux.org.uk (Russell King - ARM Linux)
To: linux-arm-kernel@lists.infradead.org
Subject: arm kernel oops in highmem.c with 4.2
Date: Tue, 11 Aug 2015 20:56:38 +0100	[thread overview]
Message-ID: <20150811195638.GC7557@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <alpine.LFD.2.20.1508111501130.1515@knanqh.ubzr>

On Tue, Aug 11, 2015 at 03:41:52PM -0400, Nicolas Pitre wrote:
> I'd agree.  But first I'd like to know why the fedora kernel is using 
> CONFIG_UACCESS_WITH_MEMCPY?  If it's just because it sounded cool then 
> that's a bad reason.
> 
> That code was created to work around inneficiency in the Orion CPU core 
> that didn't coalesce writes from STRT instructions, and by using plain 
> STR and/or STM the actual throughput was more than doubled.  This was 
> fixed in later cores. However Orion users (if they still exist) might 
> like the added performance. I don't have Orion-based targets anymore 
> (they took the way of the recycling facility a while ago).

Irrespective of that, what has been found is that the implementation is
unsafe - it is taking a semaphore when page faults are disabled.  In
other words, notwithstanding the above, it's buggy no matter if it's
an Orion CPU core, or highmem, or what.  Any place in the kernel which
uses pagefault_disable() and then calls into this code will be buggy.

It needs fixing or removing.

Even if it is fixed, making it _depend_ on CPU_FEROCEON sounds like a
good idea if non-orion stuff isn't supposed to be enabling it.  Or
something like that.

-- 
FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up
according to speedtest.net.

  reply	other threads:[~2015-08-11 19:56 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-05 10:01 arm kernel oops in highmem.c with 4.2 Peter Robinson
2015-08-05 10:07 ` Russell King - ARM Linux
2015-08-05 10:13   ` Peter Robinson
2015-08-05 11:27     ` Russell King - ARM Linux
2015-08-11 17:48       ` Mark Salter
2015-08-11 18:10         ` Russell King - ARM Linux
2015-08-11 19:41           ` Nicolas Pitre
2015-08-11 19:56             ` Russell King - ARM Linux [this message]
2015-08-11 20:20               ` Nicolas Pitre
2015-08-11 21:17                 ` Mark Salter
2015-08-12  2:18                   ` Nicolas Pitre
2015-08-12 13:33                     ` Mark Salter
2015-08-12 15:50                       ` Nicolas Pitre

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150811195638.GC7557@n2100.arm.linux.org.uk \
    --to=linux@arm.linux.org.uk \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).