JFFS2/xattr problems.

KaiGai Kohei kaigai at ak.jp.nec.com
Sat Jun 24 01:58:22 EDT 2006


>>I'm looking through your handling of deletion now... I'm not sure that
>>we _need_ the physical deletion node for xdata, do we? Those can go away
>>just because there are no xrefs which link to them, just like our inodes
>>do?
>>
>>Also, the physical deletion node for xrefs is only needed when the xattr
>>is deleted _without_ the inode being deleted. When the inode goes away,
>>again the xref becomes obsolete all by itself, right?
> 
> 
> Indeed, you are right.
> In mounting process, we can certainly detect xdatum no xref linked and
> xref no inode linked. I'll fix its design, so please wait for a while.

I'm sorry to have kept you waiting so long.
The following patches 01-03 modifies its design, and 04 fixes trivial
wrong copyright, 05 enables to use xattr with write buffering support.

Those have been pushed jffs2-xattr-2.6.git yet.

[1/5] jffs2-xattr-v6.1-01-rid-unnecessary-writing-of-delete_marker.patch
   This patch rids writing physical delete marker when we delete xdatum
   and xref with no inode linked. We can certainlly detect those obsolete
   nodes, so those writings are not necessary.

[2/5] jffs2-xattr-v6.1-02-fix-memory-leak-jffs2_xattr_ref.patch
   This patch fixes a problem with memory leak in jffs2_xattr_ref.
   This problem became obvious by the above patch, but it has
   a possibility to cause.

[3/5] jffs2-xattr-v6.1-03-redefine-refcnt-as-atomic_t.patch
   In jffs2_release_xattr_datum(), it refers xd->refcnt to ensure
   whether releasing xd is allowed or not.
   But we can't hold xattr_sem since this function is called under
   spin_lock(&c->erase_completion_lock). Thus we have to refer it
   without any locking.

[4/5] jffs2-xattr-v6.1-04-fix-copyright.patch
   I modified summary.c at 2006, not 2005.

[5/5] jffs2-xattr-v6.1-05-coexistence-between-xattr-and-write-buffering.patch
   drops '&& !JFFS2_FS_WRITEBUFFER' from fs/Kconfig.

Thanks,
--
Open Source Software Promotion Center, NEC
KaiGai Kohei <kaigai at ak.jp.nec.com>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: jffs2-xattr-v6.1-01-rid-unnecessary-writing-of-delete_marker.patch
Url: http://lists.infradead.org/pipermail/linux-mtd/attachments/20060624/fa6de142/attachment.pl 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: jffs2-xattr-v6.1-02-fix-memory-leak-jffs2_xattr_ref.patch
Url: http://lists.infradead.org/pipermail/linux-mtd/attachments/20060624/fa6de142/attachment-0001.pl 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: jffs2-xattr-v6.1-03-redefine-refcnt-as-atomic_t.patch
Url: http://lists.infradead.org/pipermail/linux-mtd/attachments/20060624/fa6de142/attachment-0002.pl 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: jffs2-xattr-v6.1-04-fix-copyright.patch
Url: http://lists.infradead.org/pipermail/linux-mtd/attachments/20060624/fa6de142/attachment-0003.pl 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: jffs2-xattr-v6.1-05-coexistence-between-xattr-and-write-buffering.patch
Url: http://lists.infradead.org/pipermail/linux-mtd/attachments/20060624/fa6de142/attachment-0004.pl 


More information about the linux-mtd mailing list