Here they are (all for YAFFS2): FIRST ONE: === Cut === fs/yaffs2/yaffs_guts.c: In function `yaffs_FlushFilesChunkCache': fs/yaffs2/yaffs_guts.c:3426: warning: 'lowest' might be used uninitialized in this function === Cut === It IS serious. The fragment is: === Cut === if(!cache || dev->srCache[i].chunkId < lowest) { cache = &dev->srCache[i]; lowest = cache->chunkId; } === Cut === and "lowest" is NOT initialised before that "if". SECOND ONE: === Cut === fs/yaffs2/yaffs_guts.c: In function `yaffs_GutsInitialise': fs/yaffs2/yaffs_guts.c:4941: warning: 'startIterator' might be used uninitialized in this function fs/yaffs2/yaffs_guts.c:4942: warning: 'endIterator' might be used uninitialized in this function === Cut === The fragment is: === Cut === // Now scan the blocks looking at the data. if(dev->isYaffs2) { startIterator = 0; endIterator = nBlocksToScan-1; T(YAFFS_TRACE_SCAN_DEBUG,(TSTR("%d blocks to be scanned" TENDSTR),nBlocksToScan)); } // For each block.... backwards for(blockIterator = endIterator; blockIterator >= startIterator; blockIterator--) { === Cut === And yes, both those "iterators" are NOT initialised on entry to the "for" cycle if "dev->isYaffs2" is zero (i.e. YAFFS1). And that cycle is performed in any case. I think somebody who knows what the appropriate code is supposed to do should look into that and fix it asap. --- ****************************************************************** * KSI@home KOI8 Net < > The impossible we do immediately. * * Las Vegas NV, USA < > Miracles require 24-hour notice. * ******************************************************************