On Fri, Sep 02, 2016 at 03:05:10PM +0300, Alexander Gordeev wrote:
> Hi Jaegeuk,
> 
> 01.09.2016, 23:16, "Jaegeuk Kim" <[email protected]>:
> > On Thu, Sep 01, 2016 at 10:37:36PM +0300, Alexander Gordeev wrote:
> >>  Hi ,
> >>
> >>  01.09.2016, 21:25, "Jaegeuk Kim" <[email protected]>:
> >>  > Hello,
> >>  >
> >>  > On Thu, Sep 01, 2016 at 08:40:07PM +0300, Alexander Gordeev wrote:
> >>  > ...
> >>  >>  >>  [ 49.274678] ------------[ cut here ]------------
> >>  >>  >>  [ 49.280216] WARNING: at 
> >> /home/alex/work/s2l/amb_S2l_SDK_2.5/SDK2.5/s2l_linux_sdk/ambarella/kernel/linux-3.10/fs/f2fs/segment.c:1105
> >>  new_curseg+0x268/0x394 [f2fs]()
> >>  >>  >
> >>  >>  > This means there is no free segment.
> >>  >>  > Could you print out the below information before this f2fs_bug_on?
> >>  >>  > - prefree_segments(sbi)
> >>  >>  > - free_segments(sbi)
> >>  >>  >
> >>  >>  >>  ...
> >>  >>  >>  [ 49.518054] ---[ end trace 49dca462b4f988ff ]---
> >>  >>  >>  [ 49.522689] ------------[ cut here ]------------
> >>  >>  >>  [ 49.527375] WARNING: at 
> >> /home/alex/work/s2l/amb_S2l_SDK_2.5/SDK2.5/s2l_linux_sdk/ambarella/kernel/linux-3.10/fs/f2fs/segment.c:1144
> >>  new_curseg+0x2f0/0x394 [f2fs]()
> >>  >>  >
> >>  >>  > This is caused by the above segno which was -1.
> >>  >>  >
> >>  >>  >>  ...
> >>  >>  >>  [ 49.764853] ---[ end trace 49dca462b4f98900 ]---
> >>  >>  >>  [ 49.857344] ------ segno = 7540, next_blkoff = 0, next_segno = 
> >> 4294967295 --------
> >>  >>  >>  [ 49.913664] ------ blkaddr = 3889152 --------
> >>  >>  >>  [ 49.918173] Unable to handle kernel NULL pointer dereference at 
> >> virtual address 00000000
> >>  >>  >
> >>  >>  > Also, we can see next_segno was -1, which incur no se entry for 
> >> this segment.
> >>  >>  > At this moment, I'd really like to see its 
> >> /sys/kernel/debug/f2fs/status whether
> >>  >>  > there is really not enough free segments.
> >>  >>
> >>  >>  I collected both /sys/kernel/debug/f2fs/status and numbers of blocks.
> >>  >>  The oops happens only when I try to delete anything. Also it can be 
> >> caused
> >>  >>  by GC, but I turned background GC off. So I mounted the fs, dumped 
> >> the status
> >>  >>  and then tried to remove a file. Here is what I got:
> >>  >>
> >>  >>  =====[ partition info(sda). #0, RW]=====
> >>  >>  [SB: 1] [CP: 2] [SIT: 2] [NAT: 34] [SSA: 16] [MAIN: 7540(OverProv:424 
> >> Resv:50)]
> >>  >
> >>  > Could you check your mkfs.f2fs version?
> >>  > I want to check ovp and resv numbers.
> >>
> >>  I currently used mkfs.f2fs from my board's SDK. It prints this:
> >>  F2FS-tools: mkfs.f2fs Ver: 1.4.1 (2015-03-04)
> >>
> >>  Should I upgrade it?
> >>  I think the problem will go away if I recreate the FS. At the moment
> >>  it reproduces every time. I wonder if we need it again.
> >
> > Yes, please upgrade to the latest version to make sure.
> > And, it needs to format it again.
> > Seems there is no further information that we can use from the old 
> > partition.
> 
> Ok, thanks! I upgraded f2fs-tools and recreated the FS. Works fine so far!
> Still IMHO this might be a problem, if someone with a specially crafted FS on 
> a USB
> stick can cause a kernel oops on any modern Linux system. Isn't it?

Yes, it is a problem. :)
But for now, we rely on any reported case that we can get.
If we can confirm this is a root-cause, hopufully I need to consider something
in kernel-- online fixing or messages whatever.

Thanks,

> 
> -- 
>  Alexander

------------------------------------------------------------------------------
_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to