Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: paul@pwsan.com (Paul Walmsley)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 11/12] OMAP2/3: SRAM: add comment about crashes during a TLB miss
Date: Mon, 13 Dec 2010 23:34:54 -0700	[thread overview]
Message-ID: <20101214063453.21555.15306.stgit@twilight.localdomain> (raw)
In-Reply-To: <20101214063308.21555.76050.stgit@twilight.localdomain>

Some users were observing crashes during the execution of CORE DVFS
code from OCM RAM -- a locally-modified copy of the linux-omap code.
Richard Woodruff tracked this down to a DTLB miss which had been
inadvertently and intermittently caused by the local modifications.
(The TLB miss caused the ARM MMU to attempt to walk the page tables
stored in SDRAM, which was not possible since SDRAM is off-line for a
portion of the CORE DVFS OCM RAM code.)

Add a note to the OMAP2 & OMAP3 CORE DVFS SRAM code to warn others that
changes may result in crashes here if they are not carefully tested.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Richard Woodruff <r-woodruff2@ti.com>
Cc: Jon Hunter <jon-hunter@ti.com>
Cc: Nishanth Menon <nm@ti.com>
---
 arch/arm/mach-omap2/sram242x.S |    6 ++++++
 arch/arm/mach-omap2/sram243x.S |    6 ++++++
 arch/arm/mach-omap2/sram34xx.S |    6 ++++++
 3 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap2/sram242x.S b/arch/arm/mach-omap2/sram242x.S
index 92e6e1a..6d88cee 100644
--- a/arch/arm/mach-omap2/sram242x.S
+++ b/arch/arm/mach-omap2/sram242x.S
@@ -21,6 +21,12 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  * MA 02111-1307 USA
+ *
+ * Richard Woodruff notes that any changes to this code must be carefully
+ * audited and tested to ensure that they don't cause a TLB miss while
+ * the SDRAM is inaccessible.  Such a situation will crash the system
+ * since it will cause the ARM MMU to attempt to walk the page tables.
+ * These crashes may be intermittent.
  */
 #include <linux/linkage.h>
 #include <asm/assembler.h>
diff --git a/arch/arm/mach-omap2/sram243x.S b/arch/arm/mach-omap2/sram243x.S
index ab49736..2f104a6 100644
--- a/arch/arm/mach-omap2/sram243x.S
+++ b/arch/arm/mach-omap2/sram243x.S
@@ -21,6 +21,12 @@
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  * MA 02111-1307 USA
+ *
+ * Richard Woodruff notes that any changes to this code must be carefully
+ * audited and tested to ensure that they don't cause a TLB miss while
+ * the SDRAM is inaccessible.  Such a situation will crash the system
+ * since it will cause the ARM MMU to attempt to walk the page tables.
+ * These crashes may be intermittent.
  */
 #include <linux/linkage.h>
 #include <asm/assembler.h>
diff --git a/arch/arm/mach-omap2/sram34xx.S b/arch/arm/mach-omap2/sram34xx.S
index 3637274..43f67f5 100644
--- a/arch/arm/mach-omap2/sram34xx.S
+++ b/arch/arm/mach-omap2/sram34xx.S
@@ -104,6 +104,12 @@
  * touching the SDRAM.  Until that time, users who know that their use case
  * can satisfy the above requirement can enable the CONFIG_OMAP3_SDRC_AC_TIMING
  * option.
+ *
+ * Richard Woodruff notes that any changes to this code must be carefully
+ * audited and tested to ensure that they don't cause a TLB miss while
+ * the SDRAM is inaccessible.  Such a situation will crash the system
+ * since it will cause the ARM MMU to attempt to walk the page tables.
+ * These crashes may be intermittent.
  */
 ENTRY(omap3_sram_configure_core_dpll)
 	stmfd	sp!, {r1-r12, lr}	@ store regs to stack

  parent reply	other threads:[~2010-12-14  6:34 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-14  6:34 [PATCH 00/12] OMAP: clock/SRAM: patches for 2.6.38, part one Paul Walmsley
2010-12-14  6:34 ` [PATCH 01/12] OMAP4: clock data: Add control for pad_clks_ck and slimbus_clk Paul Walmsley
2010-12-14  6:34 ` [PATCH 02/12] OMAP3: clock data: Add "wkup_clkdm" in sr1_fck and sr2_fck Paul Walmsley
2010-12-14  6:34 ` [PATCH 03/12] OMAP4: clock data: Add missing DPLL x2 clock nodes Paul Walmsley
2010-12-22  1:47   ` Paul Walmsley
2010-12-30  4:52     ` Gopinath, Thara
2010-12-14  6:34 ` [PATCH 04/12] OMAP4: clock data: Add missing fields in iva_hsd_byp_clk_mux_ck Paul Walmsley
2010-12-14  6:34 ` [PATCH 05/12] OMAP4: PRCM: Add SCRM header file Paul Walmsley
2010-12-14 13:59   ` Cousson, Benoit
2010-12-14 18:13     ` Paul Walmsley
2010-12-14 20:16       ` Cousson, Benoit
2010-12-15  1:15         ` Paul Walmsley
2010-12-15  1:17   ` Paul Walmsley
2010-12-14  6:34 ` [PATCH 06/12] OMAP4: clock data: Add SCRM auxiliary clock nodes Paul Walmsley
2010-12-14  6:34 ` [PATCH 07/12] OMAP4: clock data: Export control to enable/disable CORE/PER M3 clocks Paul Walmsley
2010-12-14  6:34 ` [PATCH 08/12] OMAP2xxx clock: fix dss2_fck recalc to use clksel Paul Walmsley
2010-12-14  6:34 ` [PATCH 09/12] OMAP3: clock: clarify usage of struct clksel_rate.flags and struct omap_clk.cpu Paul Walmsley
2010-12-14  6:34 ` [PATCH 10/12] OMAP3: clock: fix incorrect rate display when switching MPU rate at boot Paul Walmsley
2010-12-14  6:34 ` Paul Walmsley [this message]
2010-12-14  6:34 ` [PATCH 12/12] OMAP1: clock_data: use runtime cpu / machine checks Paul Walmsley
2010-12-14  6:49 ` [PATCH 00/12] OMAP: clock/SRAM: patches for 2.6.38, part one Santosh Shilimkar
2010-12-14  6:53   ` Paul Walmsley
2010-12-14  6:53   ` Santosh Shilimkar
2010-12-14 20:05 ` Kevin Hilman

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=20101214063453.21555.15306.stgit@twilight.localdomain \
    --to=paul@pwsan.com \
    --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