On Sun, 2010-04-18 at 22:10 +0200, Michael Banck wrote:
> Hi,
> 
> On Sun, Apr 18, 2010 at 05:37:58PM +0100, Ben Hutchings wrote:
> > On Sun, 2010-04-18 at 16:17 +0200, Michael Banck wrote:
> > > Package: linux-2.6
> > > Version: 2.6.32-9
> > > Severity: normal
> > > 
> > > Hi,
> > > 
> > > Going from 2.6.30 to 2.6.32, I can no longer mount my LVM-based
> > > partition on my secondary harddisk, I get the following error when I try
> > > to run e.g. vgchange:
> > > 
> > > nighthawk~$ LANG=C sudo vgchange -a y 
> > >   2 logical volume(s) in volume group "nighthawk" now active
> > >   device-mapper: resume ioctl failed: Invalid argument
> > >   Unable to resume data-data (254:3)
> > >   1 logical volume(s) in volume group "data" now active
> > > nighthawk~$ sudo mount /dev/mapper/data-data /mnt
> > > mount: /dev/mapper/data-data already mounted or /mnt busy
> > > 
> > > This is the corresponding kernel error in syslog:
> > > 
> > > Apr 18 15:17:02 nighthawk kernel: [   20.713326] device-mapper: table: 
> > > 254:3: hdc too small for target: start=384, len=78135296, 
> > > dev_size=71762930
> > > 
> > > It turns out this is because contrary to linux-image-2.6.30-2-686,
> > > 2.6.32 does not disable HPA:
> > [...]
> > 
> > Is there a partition table on /dev/hdc?
> 
> No, it seems to be a direct LVM image/partition which spans the whole
> disk.

Then I don't know why the HPA was disabled previously.  It should not be
disabled by default as some BIOSes will overwrite data in the HPA in
some circumstances (possibly only on matched HDs).  There is a
workaround for cases where an HD was partitioned while the HPA was
disabled: if a partition is found to extend into the HPA then it will
automatically be disabled.

You should be able to disable the HPA for this disk by following these
steps:

1. Create a file under /etc/modprobe.d containing the lines:
       options ide_core nohpa=1.0
       options libata ignore_hpa=1
2. Run 'update-initramfs -u -k 2.6.32-3-686'
3. Reboot

It is also possible to permanently disable the HPA using hdparm, but
that requires a custom kernel with CONFIG_IDE_TASK_IOCTL enabled.

Ben.

-- 
Ben Hutchings
Once a job is fouled up, anything done to improve it makes it worse.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to