Move code to get_data_disks() function
Move code to function for code reuse. Signed-off-by: Adam Kwolek <adam.kwolek@intel.com> Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
2dddadb0f7
commit
577e8448e9
1
mdadm.h
1
mdadm.h
|
@ -1157,6 +1157,7 @@ extern unsigned long long get_component_size(int fd);
|
||||||
extern void remove_partitions(int fd);
|
extern void remove_partitions(int fd);
|
||||||
extern int test_partition(int fd);
|
extern int test_partition(int fd);
|
||||||
extern int test_partition_from_id(dev_t id);
|
extern int test_partition_from_id(dev_t id);
|
||||||
|
extern int get_data_disks(int level, int layout, int raid_disks);
|
||||||
extern unsigned long long calc_array_size(int level, int raid_disks, int layout,
|
extern unsigned long long calc_array_size(int level, int raid_disks, int layout,
|
||||||
int chunksize, unsigned long long devsize);
|
int chunksize, unsigned long long devsize);
|
||||||
extern int flush_metadata_updates(struct supertype *st);
|
extern int flush_metadata_updates(struct supertype *st);
|
||||||
|
|
10
util.c
10
util.c
|
@ -702,6 +702,12 @@ void print_r10_layout(int layout)
|
||||||
|
|
||||||
unsigned long long calc_array_size(int level, int raid_disks, int layout,
|
unsigned long long calc_array_size(int level, int raid_disks, int layout,
|
||||||
int chunksize, unsigned long long devsize)
|
int chunksize, unsigned long long devsize)
|
||||||
|
{
|
||||||
|
devsize &= ~(unsigned long long)((chunksize>>9)-1);
|
||||||
|
return get_data_disks(level, layout, raid_disks) * devsize;
|
||||||
|
}
|
||||||
|
|
||||||
|
int get_data_disks(int level, int layout, int raid_disks)
|
||||||
{
|
{
|
||||||
int data_disks = 0;
|
int data_disks = 0;
|
||||||
switch (level) {
|
switch (level) {
|
||||||
|
@ -713,8 +719,8 @@ unsigned long long calc_array_size(int level, int raid_disks, int layout,
|
||||||
case 10: data_disks = raid_disks / (layout & 255) / ((layout>>8)&255);
|
case 10: data_disks = raid_disks / (layout & 255) / ((layout>>8)&255);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
devsize &= ~(unsigned long long)((chunksize>>9)-1);
|
|
||||||
return data_disks * devsize;
|
return data_disks;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(MDASSEMBLE) || defined(MDASSEMBLE) && defined(MDASSEMBLE_AUTO)
|
#if !defined(MDASSEMBLE) || defined(MDASSEMBLE) && defined(MDASSEMBLE_AUTO)
|
||||||
|
|
Loading…
Reference in New Issue