RE: [Yaffs] Make YAFFS2 work, patch1

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Martin Fouts
Date:  
To: Sergey Kubushyn, yaffs-list
Subject: RE: [Yaffs] Make YAFFS2 work, patch1
Thank you for the patch. I've added it to my patch queue, and will test
it as soon as I have time available.

Marty

> -----Original Message-----
> From:
> [mailto:yaffs-bounces@stoneboat.aleph1.co.uk] On Behalf Of
> Sergey Kubushyn
> Sent: Wednesday, October 12, 2005 10:12 AM
> To: yaffs-list
> Subject: [Yaffs] Make YAFFS2 work, patch1
>
> This is a quick hack probably good for foreseable future. I
> don't think a revolution for large page devices is on the
> horizon, we will be using that
> nand_oob_64 autoplacement scheme for quite a long time.
>
> The proper way is to consult mtd_info->nand_oobinfo->oobavail
> and handle YAFFS tags placement ourselves, in that same
> mtdif2.c. Autoplacement is not rocket science, there is
> nothing divine in it. As a matter of fact it's as simple as a
> shovel and proper handling of oobavail part of the entire oob
> area is trivial and easier to implement than to write a "Hello, world"
> program.
>
> BTW, it is NOT a very good idea to write mtd->oobsize (i.e.
> 64) bytes of data out of yaffs_PackedTags2 structure...
>
> Here is the patch:
>
> === Cut ===
> diff -urN linux-2.6.12.orig/fs/yaffs2/yaffs_mtdif2.c 
> linux-2.6.12/fs/yaffs2/yaffs_mtdif2.c
> --- linux-2.6.12.orig/fs/yaffs2/yaffs_mtdif2.c    
> 2005-10-11 15:25:07.000000000 -0700
> +++ linux-2.6.12/fs/yaffs2/yaffs_mtdif2.c    2005-10-11 
> 15:35:05.000000000 -0700
> @@ -66,7 +66,7 @@
>                         data);
>          if (tags)
>              retval =
> -                mtd->write_oob(mtd, addr, 
> mtd->oobsize, &dummy,
> +                mtd->write_oob(mtd, addr + 2, 
> sizeof(pt), &dummy,
>                         (__u8 *) & pt);

>
>      }
> @@ -116,7 +116,7 @@
>                        dev->spareBuffer);
>      }

>
> -    memcpy(&pt, dev->spareBuffer, sizeof(pt));
> +    memcpy(&pt, &dev->spareBuffer[2], sizeof(pt));

>
>      if (tags)
>          yaffs_UnpackTags2(tags, &pt);
> === Cut ===

>
> ---
> ******************************************************************
> *  KSI@home    KOI8 Net  < >  The impossible we do immediately.  *
> *  Las Vegas   NV, USA   < >  Miracles require 24-hour notice.   *
> ******************************************************************

>
>
> _______________________________________________
> yaffs mailing list
>
> http://stoneboat.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs
>