OpenCores
URL https://opencores.org/ocsvn/test_project/test_project/trunk

Subversion Repositories test_project

[/] [test_project/] [trunk/] [linux_sd_driver/] [fs/] [ocfs2/] [extent_map.h] - Blame information for rev 62

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 62 marcus.erl
/* -*- mode: c; c-basic-offset: 8; -*-
2
 * vim: noexpandtab sw=8 ts=8 sts=0:
3
 *
4
 * extent_map.h
5
 *
6
 * In-memory file extent mappings for OCFS2.
7
 *
8
 * Copyright (C) 2004 Oracle.  All rights reserved.
9
 *
10
 * This program is free software; you can redistribute it and/or
11
 * modify it under the terms of the GNU General Public
12
 * License, version 2,  as published by the Free Software Foundation.
13
 *
14
 * This program is distributed in the hope that it will be useful,
15
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17
 * General Public License for more details.
18
 *
19
 * You should have received a copy of the GNU General Public
20
 * License along with this program; if not, write to the
21
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
22
 * Boston, MA 021110-1307, USA.
23
 */
24
 
25
#ifndef _EXTENT_MAP_H
26
#define _EXTENT_MAP_H
27
 
28
struct ocfs2_extent_map_item {
29
        unsigned int                    ei_cpos;
30
        unsigned int                    ei_phys;
31
        unsigned int                    ei_clusters;
32
        unsigned int                    ei_flags;
33
 
34
        struct list_head                ei_list;
35
};
36
 
37
#define OCFS2_MAX_EXTENT_MAP_ITEMS                      3
38
struct ocfs2_extent_map {
39
        unsigned int                    em_num_items;
40
        struct list_head                em_list;
41
};
42
 
43
void ocfs2_extent_map_init(struct inode *inode);
44
void ocfs2_extent_map_trunc(struct inode *inode, unsigned int cluster);
45
void ocfs2_extent_map_insert_rec(struct inode *inode,
46
                                 struct ocfs2_extent_rec *rec);
47
 
48
int ocfs2_get_clusters(struct inode *inode, u32 v_cluster, u32 *p_cluster,
49
                       u32 *num_clusters, unsigned int *extent_flags);
50
int ocfs2_extent_map_get_blocks(struct inode *inode, u64 v_blkno, u64 *p_blkno,
51
                                u64 *ret_count, unsigned int *extent_flags);
52
 
53
#endif  /* _EXTENT_MAP_H */

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.