RE: ISW dmraid-rc15 fails to activate raid0 due to incorrect cylinder calculation
"Labun, Marcin" <[email protected]> Tue, 21 Apr 2009 13:44:21 +0100
| Newsgroups | gmane.linux.ataraid |
|---|---|
| Message-ID | <2E9E6F5F5978EF44A8590E339E888CF9B8E499E1@irsmsx503.ger.corp.intel.com> |
Hello Giuseppe, ISW metadata blocks_per_member (dev->vol.map.blocks_per_member) shall contain journaling space on the RAID member device, while r->sectors shall contain data space only. During RAID device configuration in metadata the journaling space is added to blocks_per_member: map->blocks_per_member = (map->blocks_per_strip * map->num_data_stripes) * div + RAID_DS_JOURNAL; Could you please provide ISW native metadata output from dmraid -n and device mapper mapping (dmsetup table and status) and dmraid array configuration (dmraid -C and dmraid -s)? Do you see "%s: zero sectors on %s"? If not, possibly there is an overflow and the reason might be in blocks_per_member configuration. Regards, Marcin > -----Original Message----- > From: [email protected] [mailto:ataraid-list- > [email protected]] On Behalf Of Giuseppe Iuculano > Sent: Sunday, April 19, 2009 12:42 PM > To: ATARAID (eg, Promise Fasttrak, Highpoint 370) related discussions > Cc: [email protected] > Subject: Re: ISW dmraid-rc15 fails to activate raid0 due to incorrect > cylinder calculation > > Hi, > > Danny ha scritto: > > Upon many attempts and comparisons to rc14 I discovered that > > dmraid-rc15 calculates the number of cylinders incorrectly.. > > The relevant code in isw.c is: > > if ((r->sectors = dev->vol.map.blocks_per_member - RAID_DS_JOURNAL)) > > But in dmraid rc14 was: > > if ((r->sectors = dev->vol.map.blocks_per_member)) > > > What is the purpose of this change? > > Cheers, > Giuseppe.