From johan@teenageengineering.com Fri Feb 05 08:56:38 2010
Received: from n13.c03.server-system.net ([72.47.224.13])
	by stoneboat.aleph1.co.uk with esmtp (Exim 4.69)
	(envelope-from <johan@teenageengineering.com>) id 1NdJzM-0008Dl-Td
	for yaffs@lists.aleph1.co.uk; Fri, 05 Feb 2010 08:56:38 +0000
Received: from [212.107.146.90] (port=48097 helo=johanxp)
	by n13.c03.server-system.net with esmtpa (Exim 4.63)
	(envelope-from <johan@teenageengineering.com>)
	id 1NdJz8-0002ZF-C2; Fri, 05 Feb 2010 00:56:20 -0800
Message-ID: <A9A93908CA7949ADB2731480482424EE@johanxp>
From: "Johan Kotlinski" <johan@teenageengineering.com>
To: "Charles Manning" <manningc2@actrix.gen.nz>,
 <yaffs@lists.aleph1.co.uk>
References: <F002782D89A542FBBB9005EFF1892825@johanxp>
	<201002031315.15318.manningc2@actrix.gen.nz>
	<1E649C6B5AD2421E8F058091B48989A0@johanxp>
	<201002051705.56126.manningc2@actrix.gen.nz>
Date: Fri, 5 Feb 2010 09:56:15 +0100
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-1";
	reply-type=original
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2900.5843
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579
X-Authenticated-User: 48231 johan@teenageengineering.com
X-SA-Exim-Connect-IP: 72.47.224.13
X-SA-Exim-Mail-From: johan@teenageengineering.com
X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on
	stoneboat.aleph1.co.uk
X-Spam-Level: 
X-Spam-Status: No, score=-1.6 required=4.5 tests=AWL, BAYES_00, STOX_REPLY_TYPE
	autolearn=no version=3.2.5
X-SA-Exim-Version: 4.2.1 (built Wed, 25 Jun 2008 17:14:11 +0000)
X-SA-Exim-Scanned: Yes (on stoneboat.aleph1.co.uk)
Subject: Re: [Yaffs] multithreading question
X-BeenThere: yaffs@lists.aleph1.co.uk
X-Mailman-Version: 2.1.11
Precedence: list
List-Id: Discussion of YAFFS NAND flash filesystem <yaffs.lists.aleph1.co.uk>
List-Unsubscribe: <http://lists.aleph1.co.uk/cgi-bin/mailman/options/yaffs>,
	<mailto:yaffs-request@lists.aleph1.co.uk?subject=unsubscribe>
List-Archive: <http://lists.aleph1.co.uk/lurker/list/yaffs.html>
List-Post: <mailto:yaffs@lists.aleph1.co.uk>
List-Help: <mailto:yaffs-request@lists.aleph1.co.uk?subject=help>
List-Subscribe: <http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs>,
	<mailto:yaffs-request@lists.aleph1.co.uk?subject=subscribe>
X-List-Received-Date: Fri, 05 Feb 2010 08:56:38 -0000

Very nice! We will try to integrate it in time. Thanks a lot for fast 
response!

Regards
Johan

----- Original Message ----- 
From: "Charles Manning" <manningc2@actrix.gen.nz>
To: <yaffs@lists.aleph1.co.uk>
Cc: "Johan Kotlinski" <johan@teenageengineering.com>
Sent: Friday, February 05, 2010 5:05 AM
Subject: Re: [Yaffs] multithreading question


> On Wednesday 03 February 2010 23:17:42 Johan Kotlinski wrote:
>> Hi Charles!
>>
>> Thanks for your answer. Yes, I was talking about yaffs direct. 
>> Page-by-page
>> locking is of course all right.
>>
>> I have another question. Our NAND chip has the ability to prefetch pages. 
>> I
>> imagine we could benefit from this. Is there a way to get a hint from 
>> yaffs
>> what it is about to read next? Or do you know some good place to insert
>> such an optimization?
>>
>> Best regards,
>> Johan
>>
> I have just checked in code which breaks up long reads and writes into 
> smaller
> sub read/writes.
>
> This has the advantage of reducing longing times.
>
> Please give this a whirl if it is of interest to you.
>
> -- Charles
>
> > ----- Original Message -----
>> From: "Charles Manning" <manningc2@actrix.gen.nz>
>> To: <yaffs@lists.aleph1.co.uk>
>> Cc: "Johan Kotlinski" <johan@teenageengineering.com>
>> Sent: Wednesday, February 03, 2010 1:15 AM
>> Subject: Re: [Yaffs] multithreading question
>>
>> > On Tuesday 02 February 2010 00:29:17 Johan Kotlinski wrote:
>> >> Hi!
>> >> It appears that Yaffs2 multithreading protection is on a very high 
>> >> level
>> >> (mutex wrapping entire fread/fwrite calls).
>> >
>> > Are you talking about yaffs direct or the Linux yaffs?
>> > The linux yaffs will be locked on a page-by-page basis and I am going 
>> > to
>> > change the way yaffs direct does the reading/writing too to only lock 
>> > on
>> > a page-by-page basis.
>> >
>> > The underlying NAND is locked on a apge by page basis too (that's a
>> > limitation
>> > of the hardware), so is this really a big concern?
>> >
>> >> My worry is that if a low-priority task does a large fwrite call, it
>> >> could
>> >> block high-priority tasks for a long time. Is this an acknowledged
>> >> problem?
>> >
>> > It depends on the OS. Some, without priority inhere, won't have this
>> > problem.
>> >
>> >> Are there comparable file systems that handle multithreading in a more
>> >> granular way?
>>
>> _______________________________________________
>> yaffs mailing list
>> yaffs@lists.aleph1.co.uk
>> http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs
>
>
> 



