diff options
| author | Thomas Gleixner <tglx@linutronix.de> | 2010-05-10 11:59:37 +0200 | 
|---|---|---|
| committer | Thomas Gleixner <tglx@linutronix.de> | 2010-05-10 14:20:42 +0200 | 
| commit | dbb6be6d5e974c42bbecd183effaa0df69e1dd8b (patch) | |
| tree | 5735cb47e70853d057a9881dd0ce44b83e88fa63 /fs/logfs/logfs.h | |
| parent | 6a867a395558a7f882d041783e4cdea6744ca2bf (diff) | |
| parent | b57f95a38233a2e73b679bea4a5453a1cc2a1cc9 (diff) | |
| download | olio-linux-3.10-dbb6be6d5e974c42bbecd183effaa0df69e1dd8b.tar.xz olio-linux-3.10-dbb6be6d5e974c42bbecd183effaa0df69e1dd8b.zip  | |
Merge branch 'linus' into timers/core
Reason: Further posix_cpu_timer patches depend on mainline changes
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'fs/logfs/logfs.h')
| -rw-r--r-- | fs/logfs/logfs.h | 16 | 
1 files changed, 14 insertions, 2 deletions
diff --git a/fs/logfs/logfs.h b/fs/logfs/logfs.h index 12977943137..0a3df1a0c93 100644 --- a/fs/logfs/logfs.h +++ b/fs/logfs/logfs.h @@ -257,10 +257,14 @@ struct logfs_shadow {   * struct shadow_tree   * @new:			shadows where old_ofs==0, indexed by new_ofs   * @old:			shadows where old_ofs!=0, indexed by old_ofs + * @segment_map:		bitfield of segments containing shadows + * @no_shadowed_segment:	number of segments containing shadows   */  struct shadow_tree {  	struct btree_head64 new;  	struct btree_head64 old; +	struct btree_head32 segment_map; +	int no_shadowed_segments;  };  struct object_alias_item { @@ -305,13 +309,14 @@ typedef int write_alias_t(struct super_block *sb, u64 ino, u64 bix,  		level_t level, int child_no, __be64 val);  struct logfs_block_ops {  	void	(*write_block)(struct logfs_block *block); -	gc_level_t	(*block_level)(struct logfs_block *block);  	void	(*free_block)(struct super_block *sb, struct logfs_block*block);  	int	(*write_alias)(struct super_block *sb,  			struct logfs_block *block,  			write_alias_t *write_one_alias);  }; +#define MAX_JOURNAL_ENTRIES 256 +  struct logfs_super {  	struct mtd_info *s_mtd;			/* underlying device */  	struct block_device *s_bdev;		/* underlying device */ @@ -378,7 +383,7 @@ struct logfs_super {  	u32	 s_journal_ec[LOGFS_JOURNAL_SEGS]; /* journal erasecounts */  	u64	 s_last_version;  	struct logfs_area *s_journal_area;	/* open journal segment */ -	__be64	s_je_array[64]; +	__be64	s_je_array[MAX_JOURNAL_ENTRIES];  	int	s_no_je;  	int	 s_sum_index;			/* for the 12 summaries */ @@ -587,6 +592,7 @@ void move_page_to_btree(struct page *page);  int logfs_init_mapping(struct super_block *sb);  void logfs_sync_area(struct logfs_area *area);  void logfs_sync_segments(struct super_block *sb); +void freeseg(struct super_block *sb, u32 segno);  /* area handling */  int logfs_init_areas(struct super_block *sb); @@ -721,4 +727,10 @@ static inline struct logfs_area *get_area(struct super_block *sb,  	return logfs_super(sb)->s_area[(__force u8)gc_level];  } +static inline void logfs_mempool_destroy(mempool_t *pool) +{ +	if (pool) +		mempool_destroy(pool); +} +  #endif  |