All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Albrecht, Harald" <harald.albrecht@elreha.de>
To: linux-mtd@lists.infradead.org
Subject: Re: JFFS2 Garbage collection issue
Date: Thu, 28 Nov 2013 10:33:34 +0100	[thread overview]
Message-ID: <52970DEE.3070302@elreha.de> (raw)
In-Reply-To: <OFD4B20B8F.D587329D-ONC1257C30.0038B520-C1257C30.0039136C@transmode.se>

Hi All,

thank you for the fast reply.
What we figured out is that the jffs2_garbage_collect_pass loops for 
several minutes in the first for(;;) loop. It always went into the if 
statement after jffs2_get_ino_cache. In this situation it's not 
interruptable by any signals.

Regards
   Harald


"linux-mtd" <linux-mtd-bounces@lists.infradead.org> wrote on 2013/11/27 
11:11:04:
>> Hi all,
>>
>> we are currently facing a problem with the Garbage-collection on a JFFS2
>> file system.
>>
>> We have an embedded linux system based on an ARM9 AT91RM9200 processor
>> with an Intel / Micron JS28F256 NOR-flash of 32MB in size.
>> The Flash holds the U-Boot loader and its environment and in the main
>> part (30MB) of the chip a JFFS2-based root-file-system.
>> Our Linux kernel version is 2.6.24.3
>>
>> Some minutes after startup of the system, the garbage collector (gc.c)
>> does a scan of the file system, gathering information for the garbage
>> collection procedures that may be initiated based upon that data.
>> On some file systems, especially such with long runtime and therefore
>> many file operations, this scan consumes a lot of time. On some systems
>> it stays in that scan for more that 10 minutes. The problem with this
>> behaviour is the fact, that during the scan the file system is locked,
>> and therefore all file operations are suspended. This leads to a crash
>> of the system, when the application program hangs for a long time,
>> waiting for a file operation to return from a system call, and the
>> watchdog is not triggered.
>>
>> In a test system without watchdog, after the scan, the system runs
> normally.
>> The flash chip itself shows no errors, so it seems to be a problem of
>> the file system.
>>
>> Any idea or suggestion to solve the problem would be very welcome!
> The simple fix is to send a signal(SIGCONT?) to the GC process regularly
> to do GC
> over time. That way you don't get all GC at boot time.
>
>   Jocke
>   
>
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/

  parent reply	other threads:[~2013-11-28  9:34 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-27 10:11 JFFS2 Garbage collection issue Albrecht, Harald
2013-11-27 10:23 ` Joakim Tjernlund
2013-11-27 10:30   ` Joakim Tjernlund
2013-11-27 19:34     ` Albrecht Dreß
2013-11-28  6:33       ` Joakim Tjernlund
2013-11-28  9:33   ` Albrecht, Harald [this message]
2013-11-28 11:03     ` Joakim Tjernlund
2013-11-27 19:27 ` Albrecht Dreß
  -- strict thread matches above, loose matches on Subject: below --
2008-07-27 18:44 JFFS2 Garbage Collection Issue suresh

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=52970DEE.3070302@elreha.de \
    --to=harald.albrecht@elreha.de \
    --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.