09 Mar, 2007

1 commit


09 Feb, 2007

1 commit

  • Nowadays MTD supports an MTD_OOB_AUTO option which allows users
    to access free bytes in NAND's OOB as a contiguous buffer, although
    it may be highly discontinuous.

    This patch teaches JFFS2 to use this nice feature instead of the
    old MTD_OOB_PLACE option. This for example caused problems with
    OneNAND. Now JFFS2 does not care how are the free bytes situated.

    This may change position of the clean marker on some flashes,
    but this is not a problem. JFFS2 will just re-erase the empty
    eraseblocks and write the new (correct) clean marker.

    Signed-off-by: Artem Bityutskiy
    Signed-off-by: David Woodhouse

    Artem Bityutskiy
     

10 Jan, 2007

1 commit


03 Jan, 2007

1 commit


10 Dec, 2006

1 commit


30 Jun, 2006

1 commit


27 Jun, 2006

2 commits

  • In the followinf situation, an explicit delete marker is not
    necessary, because we can certainlly detect those obsolete
    xattr_datum or xattr_ref on next mounting.

    - When to delete xattr_datum node.
    - When to delete xattr_ref node on removing inode.
    - When to delete xattr_ref node on updating xattr.

    This patch rids writing delete marker in those situations.

    Signed-off-by: KaiGai Kohei
    Signed-off-by: David Woodhouse

    KaiGai Kohei
     
  • - When xdatum is removed, a new xdatum with 'delete marker' is
    written. (version==0xffffffff means 'delete marker')
    - When xref is removed, a new xref with 'delete marker' is written.
    (odd-numbered xseqno means 'delete marker')

    - delete_xattr_(datum/xref)_delay() are new deletion functions
    are added. We can only use them if we can detect the target
    obsolete xdatum/xref as a orphan or errir one.
    (e.g when inode deletion, or detecting crc error)

    [1/3] jffs2-xattr-v6-01-delete_marker.patch

    Signed-off-by: KaiGai Kohei
    Signed-off-by: David Woodhouse

    KaiGai Kohei
     

30 May, 2006

1 commit


29 May, 2006

1 commit


25 May, 2006

4 commits


24 May, 2006

2 commits


22 May, 2006

1 commit


21 May, 2006

6 commits


20 May, 2006

2 commits

  • This improves the time to mount 512MiB of NAND flash on my OLPC prototype
    by about 4%. We used to read the last page of the eraseblock twice -- once
    to find the offset of the summary node, and again to actually _read_ the
    summary node. Now we read the last page only once, and read more only if
    we need to.

    We also don't allocate a new buffer just for the summary code -- we use
    the buffer which was already allocated for the scan. Better still, if the
    'buffer' for the scan is actually just a pointer directly into NOR flash,
    we use that too, avoiding the memcpy() which we used to do.

    Signed-off-by: David Woodhouse

    David Woodhouse
     
  • Remove forgotten lines from jffs2_scan_eraseblock() which
    were unnecessary and may cause problem in some environments.

    Thanks to Alexander Belyakov .

    Signed-off-by: Ferenc Havasi
    Signed-off-by: David Woodhouse

    Ferenc Havasi
     

18 May, 2006

1 commit


16 May, 2006

1 commit


13 May, 2006

2 commits

  • This patch can reduce 4-byte of memory usage per inode_cache.

    [4/10] jffs2-xattr-v5.1-04-remove_ilist_from_ic.patch

    Signed-off-by: KaiGai Kohei

    KaiGai Kohei
     
  • This attached patches provide xattr support including POSIX-ACL and
    SELinux support on JFFS2 (version.5).

    There are some significant differences from previous version posted
    at last December.
    The biggest change is addition of EBS(Erase Block Summary) support.
    Currently, both kernel and usermode utility (sumtool) can recognize
    xattr nodes which have JFFS2_NODETYPE_XATTR/_XREF nodetype.

    In addition, some bugs are fixed.
    - A potential race condition was fixed.
    - Unexpected fail when updating a xattr by same name/value pair was fixed.
    - A bug when removing xattr name/value pair was fixed.

    The fundamental structures (such as using two new nodetypes and exclusion
    mechanism by rwsem) are unchanged. But most of implementation were reviewed
    and updated if necessary.
    Espacially, we had to change several internal implementations related to
    load_xattr_datum() to avoid a potential race condition.

    [1/2] xattr_on_jffs2.kernel.version-5.patch
    [2/2] xattr_on_jffs2.utils.version-5.patch

    Signed-off-by: KaiGai Kohei
    Signed-off-by: David Woodhouse

    KaiGai Kohei
     

09 Mar, 2006

1 commit


14 Nov, 2005

1 commit


07 Nov, 2005

5 commits


06 Nov, 2005

1 commit


23 May, 2005

3 commits

  • Look the ref->next_phys field instead of ->next_in_ino to determine
    if the block has more then one node.

    Signed-off-by: Artem B. Bityuckiy
    Signed-off-by: Thomas Gleixner

    Artem B. Bityuckiy
     
  • This patch replaces the current CONFIG_JFFS2_FS_NAND, CONFIG_JFFS2_FS_NOR_ECC
    and CONFIG_JFFS2_FS_DATAFLASH with a single configuration option -
    CONFIG_JFFS2_FS_WRITEBUFFER.

    The only functional change of this patch is that the slower div/mod
    calculations for SECTOR_ADDR(), PAGE_DIV() and PAGE_MOD() are now always
    used when CONFIG_JFFS2_FS_WRITEBUFFER is enabled.

    Signed-off-by: Andrew Victor
    Signed-off-by: Thomas Gleixner

    Andrew Victor
     
  • For Dataflash, can_mark_obsolete = false and the NAND write buffering
    code (wbuf.c) is used.

    Since the DataFlash chip will automatically erase pages when writing,
    the cleanmarkers are not needed - so cleanmarker_oob = false and
    cleanmarker_size = 0

    DataFlash page-sizes are not a power of two (they're multiples of 528
    bytes). The SECTOR_ADDR macro (added in the previous core patch) is
    replaced with a (slower) div/mod version if CONFIG_JFFS2_FS_DATAFLASH is
    selected.

    Signed-off-by: Andrew Victor
    Signed-off-by: Thomas Gleixner

    Andrew Victor