static void bitmap_set_memory_bits(struct bitmap *bitmap, sector_t offset, unsigned long sectors, int in_sync) 
static void bitmap_set_memory_bits(struct bitmap *bitmap, sector_t offset) 
static void bitmap_set_memory_bits(struct bitmap *bitmap, sector_t offset,				   unsigned long sectors, int in_sync){	/* For each chunk covered by any of these sectors, set the	 * counter to 1 and set resync_needed unless in_sync.  They should all	 * be 0 at this point	 */	while (sectors) {		int secs;		bitmap_counter_t *bmc;		spin_lock_irq(&bitmap->lock);		bmc = bitmap_get_counter(bitmap, offset, &secs, 1);		if (!bmc) {			spin_unlock_irq(&bitmap->lock);			return;		}		if (! *bmc) {			struct page *page;			*bmc = 1 | (in_sync? 0 : NEEDED_MASK);			bitmap_count_page(bitmap, offset, 1);			page = filemap_get_page(bitmap, offset >> CHUNK_BLOCK_SHIFT(bitmap));			set_page_attr(bitmap, page, BITMAP_PAGE_CLEAN);		}		spin_unlock_irq(&bitmap->lock);		if (sectors > secs)			sectors -= secs;		else			sectors = 0;	}}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/193f1c931517592ec4188d15bf261e4bff368207/bitmap.c/buggy/drivers/md/bitmap.c