All of lore.kernel.org
 help / color / mirror / Atom feed
From: Orjan Friberg <of@flatfrog.com>
To: Joakim Tjernlund <joakim.tjernlund@transmode.se>
Cc: linux-mtd@lists.infradead.org
Subject: Re: JFFS2 oops when writing to two partitions simultaneously
Date: Thu, 26 Jan 2012 17:05:15 +0100	[thread overview]
Message-ID: <4F2179BB.6080804@flatfrog.com> (raw)
In-Reply-To: <4F217072.6070709@flatfrog.com>

On 01/26/2012 04:25 PM, Orjan Friberg wrote:
> On 01/26/2012 04:17 PM, Joakim Tjernlund wrote:
>> You could try removing the lock dropping, one at a time, to see if it makes a difference.
>> That would be a data point for anyone wanting to fix this.
>
> I'll turn on CONFIG_DEBUG_SPINLOCK and CONFIG_DEBUG_SPINLOCK_SLEEP and
> see what happens.

As expected, dropping the lock around kmalloc was fine once I changed 
GFP_KERNEL to GFP_ATOMIC.

Dropping the lock around kfree worked fine (I didn't think it would).

And, as you suggested, we could probably combine those.


We must hold the lock when calling this->compress (to protect compr_buf; 
we oops without it) but in doing so I get

BUG: sleeping function called from invalid context at kernel/mutex.c:85

because jffs2_lzo_compress does a mutex_lock.


Even if it did work, I think we'd unneccessarily be limiting the 
throughput in that piece of code by holding the lock for that long.

-- 
Orjan Friberg
FlatFrog Laboratories AB

  reply	other threads:[~2012-01-26 16:05 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-24  9:55 JFFS2 oops when writing to two partitions simultaneously Orjan Friberg
2012-01-24 17:15 ` Orjan Friberg
2012-01-24 19:02   ` Orjan Friberg
2012-01-25 19:53     ` Orjan Friberg
2012-01-25 21:01       ` Orjan Friberg
2012-01-26  8:19         ` Joakim Tjernlund
2012-01-26  9:02           ` Orjan Friberg
2012-01-26  9:53             ` Joakim Tjernlund
2012-01-26  9:02         ` Orjan Friberg
2012-01-26 11:53           ` Joakim Tjernlund
2012-01-26 12:51             ` Orjan Friberg
2012-01-26 13:16               ` Joakim Tjernlund
2012-01-26 14:07                 ` Orjan Friberg
2012-01-26 14:23                   ` Joakim Tjernlund
2012-01-26 14:53                     ` Orjan Friberg
2012-01-26 15:17                       ` Joakim Tjernlund
2012-01-26 15:25                         ` Orjan Friberg
2012-01-26 16:05                           ` Orjan Friberg [this message]
2012-01-26 16:17                             ` Joakim Tjernlund
2012-01-26 14:52                   ` Joakim Tjernlund
2012-01-26 15:09                     ` Joakim Tjernlund
2012-01-26 15:18                       ` Orjan Friberg

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=4F2179BB.6080804@flatfrog.com \
    --to=of@flatfrog.com \
    --cc=joakim.tjernlund@transmode.se \
    --cc=linux-mtd@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.