* Please Help, problem mounting jffs2
@ 2003-06-13 14:51 Frank R Callaghan
2003-06-13 15:47 ` Sid Gluckman
0 siblings, 1 reply; 16+ messages in thread
From: Frank R Callaghan @ 2003-06-13 14:51 UTC (permalink / raw)
To: linux-mtd
Hi All,
I have a problem with mounting my new mtd/jffs2 system
after lots of experiment I have found the after doing
'eraseall /dev/mtd0' I can 'mount -t jffs2 /dev/mtdblock0 /mnt/flash'
with no problem :) but if I umount it and try to re-mount it
will sit there forever !
If I cp a jffs2.img to the device the mount will also lockup
If I erase -> mount I can create files df with no problems,
It seem like the mount does not like mounting with anything
in the filesystem !
What infomation should I gather to find out whats gonig on here ?
Any help greatly appreciated,
TIA,
Frank.
^ permalink raw reply [flat|nested] 16+ messages in thread
* RE: Please Help, problem mounting jffs2
2003-06-13 14:51 Please Help, problem mounting jffs2 Frank R Callaghan
@ 2003-06-13 15:47 ` Sid Gluckman
2003-06-13 15:53 ` Frank R Callaghan
0 siblings, 1 reply; 16+ messages in thread
From: Sid Gluckman @ 2003-06-13 15:47 UTC (permalink / raw)
To: linux-mtd
I am kind of a newbie to the jffs2 thing but are you sure that it is just
"sitting" there? I found that when a jffs2 system is mounted for the first
time with something in the filesystem it goes through some kind of
cataloging function where I'm guessing it is characterizing the device for
bad flash bytes? Anyways, if you do a 'df' in another shell while it is
sitting there you will see that the device is mounted and that the used
space first slowly cycles to fully used then slowly back down to the correct
used space. I'm sure someone else could enlighten us both as to what it is
actually doing during this time. Once it completes this cycle everything is
fine and it doesn't do it on subsequent mounts. Depending on the flash size
this could take quite a while.
Hope this helps.
Sid
-----Original Message-----
From: linux-mtd-bounces@lists.infradead.org
[mailto:linux-mtd-bounces@lists.infradead.org]On Behalf Of Frank R
Callaghan
Sent: Friday, June 13, 2003 8:52 AM
To: linux-mtd@lists.infradead.org
Subject: Please Help, problem mounting jffs2
Hi All,
I have a problem with mounting my new mtd/jffs2 system
after lots of experiment I have found the after doing
'eraseall /dev/mtd0' I can 'mount -t jffs2 /dev/mtdblock0 /mnt/flash'
with no problem :) but if I umount it and try to re-mount it
will sit there forever !
If I cp a jffs2.img to the device the mount will also lockup
If I erase -> mount I can create files df with no problems,
It seem like the mount does not like mounting with anything
in the filesystem !
What infomation should I gather to find out whats gonig on here ?
Any help greatly appreciated,
TIA,
Frank.
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 15:47 ` Sid Gluckman
@ 2003-06-13 15:53 ` Frank R Callaghan
2003-06-13 16:31 ` David Woodhouse
0 siblings, 1 reply; 16+ messages in thread
From: Frank R Callaghan @ 2003-06-13 15:53 UTC (permalink / raw)
To: linux-mtd
Thanks Sid, but I don't think I'm getting that far :(
# mount -t jffs2 /dev/mtdblock0 /var/fixed_flash &
# mtdblock_open
ok
# ps ax
PID TTY Uid Size State Command
1 root 468 S init
2 root 0 S [keventd]
3 root 0 S [ksoftirqd_CPU0]
4 root 0 S [kswapd]
5 root 0 S [bdflush]
6 root 0 D [kupdated]
7 root 0 S [mtdblockd]
11 root 0 S [kjournald]
35 root 376 S /sbin/udhcpc -n -s
/etc/udhcpd/default.scri
41 nobody 472 S /sbin/boa
46 root 492 S /sbin/bftpd -d
50 root 0 S [rpciod]
54 root 0 S [kjournald]
81 root 1528 R /myapp/hiresprinthead
83 root 656 R /myapp/hires_controler
85 ttyS1 root 488 S -sh
87 ttyS1 root 468 D mount -t jffs2 /dev/mtdblock0
/var/fixed_fl
88 ttyS1 root 468 R mount -t jffs2 /dev/mtdblock0
/var/fixed_fl
92 ttyS1 root 460 R ps ax
On Friday 13 June 2003 11:47 am, Sid Gluckman wrote:
> I am kind of a newbie to the jffs2 thing but are you sure that it is just
> "sitting" there? I found that when a jffs2 system is mounted for the first
> time with something in the filesystem it goes through some kind of
> cataloging function where I'm guessing it is characterizing the device for
> bad flash bytes? Anyways, if you do a 'df' in another shell while it is
> sitting there you will see that the device is mounted and that the used
> space first slowly cycles to fully used then slowly back down to the
> correct used space. I'm sure someone else could enlighten us both as to
> what it is actually doing during this time. Once it completes this cycle
> everything is fine and it doesn't do it on subsequent mounts. Depending on
> the flash size this could take quite a while.
>
> Hope this helps.
>
> Sid
>
> -----Original Message-----
> From: linux-mtd-bounces@lists.infradead.org
> [mailto:linux-mtd-bounces@lists.infradead.org]On Behalf Of Frank R
> Callaghan
> Sent: Friday, June 13, 2003 8:52 AM
> To: linux-mtd@lists.infradead.org
> Subject: Please Help, problem mounting jffs2
>
>
> Hi All,
>
> I have a problem with mounting my new mtd/jffs2 system
> after lots of experiment I have found the after doing
> 'eraseall /dev/mtd0' I can 'mount -t jffs2 /dev/mtdblock0 /mnt/flash'
> with no problem :) but if I umount it and try to re-mount it
> will sit there forever !
> If I cp a jffs2.img to the device the mount will also lockup
> If I erase -> mount I can create files df with no problems,
>
> It seem like the mount does not like mounting with anything
> in the filesystem !
>
> What infomation should I gather to find out whats gonig on here ?
>
> Any help greatly appreciated,
>
> TIA,
> Frank.
>
>
>
>
>
>
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
>
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 15:53 ` Frank R Callaghan
@ 2003-06-13 16:31 ` David Woodhouse
2003-06-13 16:58 ` Frank R Callaghan
0 siblings, 1 reply; 16+ messages in thread
From: David Woodhouse @ 2003-06-13 16:31 UTC (permalink / raw)
To: f.callaghan; +Cc: linux-mtd
On Fri, 2003-06-13 at 16:53, Frank R Callaghan wrote:
> Thanks Sid, but I don't think I'm getting that far :(
>
> # mount -t jffs2 /dev/mtdblock0 /var/fixed_flash &
> # mtdblock_open
> ok
>
> # ps ax
> 6 root 0 D [kupdated]
>
> 87 ttyS1 root 468 D mount -t jffs2 /dev/mtdblock0
> /var/fixed_fl
> 88 ttyS1 root 468 R mount -t jffs2 /dev/mtdblock0
> /var/fixed_fl
Why are there two mounts running simultaneously? What if you compile
with CONFIG_JFFS2_FS_DEBUG=1 and set the console loglevel to 9 before
mounting? Is it actually _doing_ anything or is it just deadlocked?
If it's just deadlocked (and you're not using 2.4.18) then what was the
last thing it said _before_ stopping?
--
dwmw2
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 16:31 ` David Woodhouse
@ 2003-06-13 16:58 ` Frank R Callaghan
2003-06-13 17:39 ` David Woodhouse
0 siblings, 1 reply; 16+ messages in thread
From: Frank R Callaghan @ 2003-06-13 16:58 UTC (permalink / raw)
To: linux-mtd
On Friday 13 June 2003 12:31 pm, David Woodhouse wrote:
> On Fri, 2003-06-13 at 16:53, Frank R Callaghan wrote:
> > Thanks Sid, but I don't think I'm getting that far :(
> >
> > # mount -t jffs2 /dev/mtdblock0 /var/fixed_flash &
> > # mtdblock_open
> > ok
> >
> > # ps ax
> >
> > 6 root 0 D [kupdated]
> >
> > 87 ttyS1 root 468 D mount -t jffs2 /dev/mtdblock0
> > /var/fixed_fl
> > 88 ttyS1 root 468 R mount -t jffs2 /dev/mtdblock0
> > /var/fixed_fl
>
> Why are there two mounts running simultaneously? What if you compile
> with CONFIG_JFFS2_FS_DEBUG=1 and set the console loglevel to 9 before
> mounting? Is it actually _doing_ anything or is it just deadlocked?
>
> If it's just deadlocked (and you're not using 2.4.18) then what was the
> last thing it said _before_ stopping?
jffs2_dump_block_lists:
flash_size: 00100000
used_size: 00000000
dirty_size: 00000000
wasted_size: 00000000
unchecked_size: 00000000
free_size: 00100000
erasing_size: 00000000
bad_size: 00000000
sector_size: 00010000
jffs2_reserved_blocks size: 00050000
nextblock: NULL
gcblock: NULL
clean_list: empty
very_dirty_list: empty
dirty_list: empty
erasable_list: empty
erasing_list: empty
erase_pending_list: 000f0000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 000e0000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 000d0000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 000c0000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 000b0000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 000a0000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 00090000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 00080000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 00070000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 00060000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 00050000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 00040000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 00030000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 00020000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 00010000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erase_pending_list: 00000000 (used 00000000, dirty 00000000, wasted 00000000,
un
checked 00000000, free 00010000)
erasable_pending_wbuf_list: empty
free_list: empty
bad_list: empty
bad_used_list: empty
Not rotating empty clean_list
Not rotating empty very_dirty_list
Not rotating empty dirty_list
Not rotating empty erasable_list
Rotating erase_pending_list by 0
Erase block at front of erase_pending_list is at 000e0000
Not rotating empty free_list
jffs2_do_fill_super(): Getting root inode
jffs2_read_inode(): inode->i_ino == 1
jffs2_do_read_inode(): getting inocache
jffs2_get_ino_cache(): ino 1
jffs2_get_ino_cache found 00000000 for ino 1
jffs2_do_read_inode(): Got inocache at 00000000
jffs2_do_read_inode(): Creating inocache for root inode
jffs2_add_ino_cache: Add c058d260 (ino #1)
jffs2_do_read_inode_internal(): ino #1 nlink is 1
jffs2_get_inode_nodes(): ino #1
jffs2_read_inode() returning
jffs2_do_fill_super(): d_alloc_root()
JFFS2: Garbage collect thread is pid 95
kernel 2.4.19 + RTAI + mtd<CVS> yesterday
Oops that was DEBUG=3 oh well the more info the better ;)
dmesg -n will only let me set level=8 max !
TIA,
Frank.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 16:58 ` Frank R Callaghan
@ 2003-06-13 17:39 ` David Woodhouse
2003-06-13 18:11 ` Frank R Callaghan
0 siblings, 1 reply; 16+ messages in thread
From: David Woodhouse @ 2003-06-13 17:39 UTC (permalink / raw)
To: f.callaghan; +Cc: linux-mtd
Looks like it's waiting for the garbage collect thread. What happened to
it? Can you put a printk into the very beginning of
'jffs2_garbage_collect_thread()' in background.c, and another printk
after the daemonize() call.
Also hit SysRq-T and see exactly where the mount process is waiting -- I
suspect it's in jffs2_start_garbage_collect_thread().
--
dwmw2
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 17:39 ` David Woodhouse
@ 2003-06-13 18:11 ` Frank R Callaghan
2003-06-13 18:28 ` David Woodhouse
0 siblings, 1 reply; 16+ messages in thread
From: Frank R Callaghan @ 2003-06-13 18:11 UTC (permalink / raw)
To: David Woodhouse, linux-mtd
On Friday 13 June 2003 01:39 pm, David Woodhouse wrote:
> Looks like it's waiting for the garbage collect thread. What happened to
> it? Can you put a printk into the very beginning of
> 'jffs2_garbage_collect_thread()' in background.c, and another printk
> after the daemonize() call.
Like this:
static int jffs2_garbage_collect_thread(void *_c)
{
struct jffs2_sb_info *c = _c;
D1(printk(KERN_DEBUG "****jffs2_garbage_collect_thread start...\n"));
daemonize("jffs2_gcd_mtd%d", c->mtd->index);
D1(printk(KERN_DEBUG "****jffs2_garbage_collect_thread after
daemonize()...\n"));
c->gc_task = current;
up(&c->gc_thread_start);
-----------------
No extra output !!!
-----------------
>
> Also hit SysRq-T and see exactly where the mount process is waiting -- I
> suspect it's in jffs2_start_garbage_collect_thread().
I'm running this on an embedded system and the console is via minicom (ttyS1),
SysRq-T doesn't seem to work !
If I have to I can bodge up some H/W to allow a real console (only as a last
resort) ;)
TIA,
Frank.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 18:11 ` Frank R Callaghan
@ 2003-06-13 18:28 ` David Woodhouse
2003-06-13 18:47 ` Frank R Callaghan
0 siblings, 1 reply; 16+ messages in thread
From: David Woodhouse @ 2003-06-13 18:28 UTC (permalink / raw)
To: f.callaghan; +Cc: linux-mtd
On Fri, 2003-06-13 at 19:11, Frank R Callaghan wrote:
> On Friday 13 June 2003 01:39 pm, David Woodhouse wrote:
> > Looks like it's waiting for the garbage collect thread. What happened to
> > it? Can you put a printk into the very beginning of
> > 'jffs2_garbage_collect_thread()' in background.c, and another printk
> > after the daemonize() call.
>
> Like this:
>
> static int jffs2_garbage_collect_thread(void *_c)
> {
> struct jffs2_sb_info *c = _c;
>
> D1(printk(KERN_DEBUG "****jffs2_garbage_collect_thread start...\n"));
>
> -----------------
> No extra output !!!
> -----------------
Just like that... in which case for some reason kernel_thread() is not
working. What architecture is it?
> >
> > Also hit SysRq-T and see exactly where the mount process is waiting -- I
> > suspect it's in jffs2_start_garbage_collect_thread().
>
> I'm running this on an embedded system and the console is via minicom (ttyS1),
> SysRq-T doesn't seem to work !
Hmmm. It may require that there's something in userspace trying to read
from the port. There are also hacks around to enable sysrq by echoing
letters to a /proc file. Doesn't really matter -- it's fairly obvious
it's never actually making it into the kernel thread.
--
dwmw2
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 18:28 ` David Woodhouse
@ 2003-06-13 18:47 ` Frank R Callaghan
2003-06-13 19:18 ` David Woodhouse
0 siblings, 1 reply; 16+ messages in thread
From: Frank R Callaghan @ 2003-06-13 18:47 UTC (permalink / raw)
To: David Woodhouse, linux-mtd
On Friday 13 June 2003 02:28 pm, David Woodhouse wrote:
> On Fri, 2003-06-13 at 19:11, Frank R Callaghan wrote:
> > On Friday 13 June 2003 01:39 pm, David Woodhouse wrote:
> > > Looks like it's waiting for the garbage collect thread. What happened
> > > to it? Can you put a printk into the very beginning of
> > > 'jffs2_garbage_collect_thread()' in background.c, and another printk
> > > after the daemonize() call.
> >
> > Like this:
> >
> > static int jffs2_garbage_collect_thread(void *_c)
> > {
> > struct jffs2_sb_info *c = _c;
> >
> > D1(printk(KERN_DEBUG "****jffs2_garbage_collect_thread
> > start...\n"));
> >
> > -----------------
> > No extra output !!!
> > -----------------
>
> Just like that... in which case for some reason kernel_thread() is not
> working. What architecture is it?
>
i486 ELAN(SC520)
> > > Also hit SysRq-T and see exactly where the mount process is waiting --
> > > I suspect it's in jffs2_start_garbage_collect_thread().
> >
> > I'm running this on an embedded system and the console is via minicom
> > (ttyS1), SysRq-T doesn't seem to work !
>
> Hmmm. It may require that there's something in userspace trying to read
> from the port. There are also hacks around to enable sysrq by echoing
> letters to a /proc file. Doesn't really matter -- it's fairly obvious
> it's never actually making it into the kernel thread.
OK, this sounds bad ! Where can I go from here ?
I really need this flash working for the product to be viable !
Is this a kernel bug ? uclibc ? RTAI ?
Is there anyway to hack the code to get it working ?
Help !!!
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 18:47 ` Frank R Callaghan
@ 2003-06-13 19:18 ` David Woodhouse
2003-06-13 22:52 ` Thomas Gleixner
0 siblings, 1 reply; 16+ messages in thread
From: David Woodhouse @ 2003-06-13 19:18 UTC (permalink / raw)
To: f.callaghan; +Cc: linux-mtd
On Fri, 2003-06-13 at 19:47, Frank R Callaghan wrote:
> OK, this sounds bad ! Where can I go from here ?
Well, you can start by just commenting out the whole of both the
jffs2_{start,stop}_garbage_collect_thread() functions since the thread
is an optimisation anyway. But basically you need to find out why
kernel_thread() isn't working.
It's not a uclibc bug -- it's a kernel bug, and not one in the standard
kernel either -- I'm inclined to suspect RTAI at this stage, although
you blatantly have other kernel threads running so it's not a simple and
obvious breakage.
--
dwmw2
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 19:18 ` David Woodhouse
@ 2003-06-13 22:52 ` Thomas Gleixner
2003-06-13 22:54 ` Frank R Callaghan
0 siblings, 1 reply; 16+ messages in thread
From: Thomas Gleixner @ 2003-06-13 22:52 UTC (permalink / raw)
To: David Woodhouse, f.callaghan; +Cc: linux-mtd
On Friday 13 June 2003 21:18, David Woodhouse wrote:
> On Fri, 2003-06-13 at 19:47, Frank R Callaghan wrote:
> > OK, this sounds bad ! Where can I go from here ?
>
> Well, you can start by just commenting out the whole of both the
> jffs2_{start,stop}_garbage_collect_thread() functions since the thread
> is an optimisation anyway. But basically you need to find out why
> kernel_thread() isn't working.
>
> It's not a uclibc bug -- it's a kernel bug, and not one in the standard
> kernel either -- I'm inclined to suspect RTAI at this stage, although
> you blatantly have other kernel threads running so it's not a simple and
> obvious breakage.
Maybe it's a RTAI problem. But I have JFFS2 / RTAI running on a couple of
boards.
Have you tried this with a vanilla kernel without RTAI ? If not, can you do
that ?
If RTAI is the guilty one, then consider the following:
kernel_thread () is a syscall. RTAI captures syscalls. Maybe the syscall is
lost anywhere in RTAI.
--
Thomas
________________________________________________________________________
linutronix - competence in embedded & realtime linux
http://www.linutronix.de
mail: tglx@linutronix.de
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 22:52 ` Thomas Gleixner
@ 2003-06-13 22:54 ` Frank R Callaghan
2003-06-16 16:06 ` Frank R Callaghan
0 siblings, 1 reply; 16+ messages in thread
From: Frank R Callaghan @ 2003-06-13 22:54 UTC (permalink / raw)
To: tglx; +Cc: linux-mtd
On Friday 13 June 2003 18:52, you wrote:
> On Friday 13 June 2003 21:18, David Woodhouse wrote:
> > On Fri, 2003-06-13 at 19:47, Frank R Callaghan wrote:
> > > OK, this sounds bad ! Where can I go from here ?
> >
> > Well, you can start by just commenting out the whole of both the
> > jffs2_{start,stop}_garbage_collect_thread() functions since the thread
> > is an optimisation anyway. But basically you need to find out why
> > kernel_thread() isn't working.
> >
> > It's not a uclibc bug -- it's a kernel bug, and not one in the standard
> > kernel either -- I'm inclined to suspect RTAI at this stage, although
> > you blatantly have other kernel threads running so it's not a simple and
> > obvious breakage.
>
> Maybe it's a RTAI problem. But I have JFFS2 / RTAI running on a couple of
> boards.
>
> Have you tried this with a vanilla kernel without RTAI ? If not, can you do
> that ?
>
> If RTAI is the guilty one, then consider the following:
> kernel_thread () is a syscall. RTAI captures syscalls. Maybe the syscall is
> lost anywhere in RTAI.
I have two userland processes communicating via shared mem to an rtai_module
also using two rtf's.
what I have found is after loading rtai & starting the programs - attempting
to mount the jffs2 filesystem stops. When I killed the two processes the mount
resumed and all works perfectly (killing the proceses forces the unload of the
shared memory & forces the closing of the rtf's)
Starting them backup after mounting sees to work fine !
I guess I can try to isolate it futher by not starting the
fifo's / shared memory, unless anyone can suggest a better way to locate
the problem.
TIA,
Frank.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-13 22:54 ` Frank R Callaghan
@ 2003-06-16 16:06 ` Frank R Callaghan
2003-06-16 16:25 ` David Woodhouse
0 siblings, 1 reply; 16+ messages in thread
From: Frank R Callaghan @ 2003-06-16 16:06 UTC (permalink / raw)
To: linux-mtd
Hi All,
I methodically removed code from my usrland programs until I'm left with
int main()
{
while(1) {
// sleep(1);
}
}
With no RTAI modules loaded, the gc thread still stalls.
With the sleep(1) works fine !
Does this mean that the gc thread has such a low priority that it never runs ?
I'm sorry if this is a stupid question, but it doesn't seem right that a mount
should suspend if a fg process is in a while loop !!!
What should I do/try next ?
TIA,
Frank.
> attempting to mount the jffs2 filesystem stops. When I killed the two
> processes the mount resumed and all works perfectly (killing the processes
> forces the unload of the shared memory & forces the closing of the rtf's)
> Starting them backup after mounting sees to work fine !
>
> I guess I can try to isolate it futher by not starting the
> fifo's / shared memory, unless anyone can suggest a better way to locate
> the problem.
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-16 16:06 ` Frank R Callaghan
@ 2003-06-16 16:25 ` David Woodhouse
2003-06-16 18:21 ` Frank R Callaghan
0 siblings, 1 reply; 16+ messages in thread
From: David Woodhouse @ 2003-06-16 16:25 UTC (permalink / raw)
To: f.callaghan; +Cc: linux-mtd
On Mon, 2003-06-16 at 17:06, Frank R Callaghan wrote:
> Hi All,
>
> I methodically removed code from my usrland programs until I'm left with
>
> int main()
> {
> while(1) {
> // sleep(1);
> }
> }
>
> With no RTAI modules loaded, the gc thread still stalls.
> With the sleep(1) works fine !
>
> Does this mean that the gc thread has such a low priority that it never runs ?
No, it looks like your userspace prograem has such a _high_ priority
that the GC thread never runs. A subtle difference :)
> What should I do/try next ?
This is an RTAI-specific issue. I suspect your test program above has
its priority set such that when it's eating 100% CPU time in a tight
loop, nothing else gets to run. Have you asked on the RTAI mailing
lists?
--
dwmw2
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-16 16:25 ` David Woodhouse
@ 2003-06-16 18:21 ` Frank R Callaghan
2003-06-16 20:21 ` Thomas Gleixner
0 siblings, 1 reply; 16+ messages in thread
From: Frank R Callaghan @ 2003-06-16 18:21 UTC (permalink / raw)
To: linux-mtd
On Monday 16 June 2003 12:25 pm, David Woodhouse wrote:
> On Mon, 2003-06-16 at 17:06, Frank R Callaghan wrote:
> > Hi All,
> >
> > I methodically removed code from my usrland programs until I'm left with
> >
> > int main()
> > {
> > while(1) {
> > // sleep(1);
> > }
> > }
> >
> > With no RTAI modules loaded, the gc thread still stalls.
> > With the sleep(1) works fine !
> >
> > Does this mean that the gc thread has such a low priority that it never
> > runs ?
>
> No, it looks like your userspace program has such a _high_ priority
> that the GC thread never runs. A subtle difference :)
>
I have reniced the test program to +20 but the mount is still hung !
> > What should I do/try next ?
>
> This is an RTAI-specific issue. I suspect your test program above has
> its priority set such that when it's eating 100% CPU time in a tight
> loop, nothing else gets to run. Have you asked on the RTAI mailing
> lists?
yes - no response yet !
I'm not sure how rtai can be interfering if there are no-rtai modules
loaded - unless the kernel patches messed something up !
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Please Help, problem mounting jffs2
2003-06-16 18:21 ` Frank R Callaghan
@ 2003-06-16 20:21 ` Thomas Gleixner
0 siblings, 0 replies; 16+ messages in thread
From: Thomas Gleixner @ 2003-06-16 20:21 UTC (permalink / raw)
To: f.callaghan, linux-mtd
On Monday 16 June 2003 20:21, Frank R Callaghan wrote:
> > No, it looks like your userspace program has such a _high_ priority
> > that the GC thread never runs. A subtle difference :)
>
> I have reniced the test program to +20 but the mount is still hung !
>
> > > What should I do/try next ?
> >
> > This is an RTAI-specific issue. I suspect your test program above has
> > its priority set such that when it's eating 100% CPU time in a tight
> > loop, nothing else gets to run. Have you asked on the RTAI mailing
> > lists?
>
> yes - no response yet !
>
> I'm not sure how rtai can be interfering if there are no-rtai modules
> loaded - unless the kernel patches messed something up !
A RTAI patched kernel without modules loaded should behave like a unpatched
kernel.
Switch off CONFIG_RTHAL and try again. This should remove all RTAI tweaks from
the kernel.
If that does not work try a (RTAI) unpatched kernel.
--
Thomas
________________________________________________________________________
linutronix - competence in embedded & realtime linux
http://www.linutronix.de
mail: tglx@linutronix.de
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2003-06-16 19:23 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-06-13 14:51 Please Help, problem mounting jffs2 Frank R Callaghan
2003-06-13 15:47 ` Sid Gluckman
2003-06-13 15:53 ` Frank R Callaghan
2003-06-13 16:31 ` David Woodhouse
2003-06-13 16:58 ` Frank R Callaghan
2003-06-13 17:39 ` David Woodhouse
2003-06-13 18:11 ` Frank R Callaghan
2003-06-13 18:28 ` David Woodhouse
2003-06-13 18:47 ` Frank R Callaghan
2003-06-13 19:18 ` David Woodhouse
2003-06-13 22:52 ` Thomas Gleixner
2003-06-13 22:54 ` Frank R Callaghan
2003-06-16 16:06 ` Frank R Callaghan
2003-06-16 16:25 ` David Woodhouse
2003-06-16 18:21 ` Frank R Callaghan
2003-06-16 20:21 ` Thomas Gleixner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox