43adcc68e47197c8bcc86dca3ae7327e2c5c43e9
[linux-2.6.git] / fs / partitions / check.h
1 #include <linux/pagemap.h>
2 #include <linux/blkdev.h>
3
4 /*
5  * add_gd_partition adds a partitions details to the devices partition
6  * description.
7  */
8 enum { MAX_PART = 256 };
9
10 struct parsed_partitions {
11         char name[BDEVNAME_SIZE];
12         struct {
13                 sector_t from;
14                 sector_t size;
15                 int flags;
16         } parts[MAX_PART];
17         int next;
18         int limit;
19 };
20
21 static inline void
22 put_partition(struct parsed_partitions *p, int n, sector_t from, sector_t size)
23 {
24         if (n < p->limit) {
25                 p->parts[n].from = from;
26                 p->parts[n].size = size;
27                 printk(" %s%d", p->name, n);
28         }
29 }
30
31 extern int warn_no_part;
32
33 extern void parse_bsd(struct parsed_partitions *state,
34                         struct block_device *bdev, u32 offset, u32 size,
35                         int origin, char *flavour, int max_partitions);
36