lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4BAD5472.9050303@garzik.org>
Date:	Fri, 26 Mar 2010 20:42:26 -0400
From:	Jeff Garzik <jeff@...zik.org>
To:	David Fries <david@...es.net>
CC:	Bartlomiej Zolnierkiewicz <bzolnier@...il.com>,
	linux-kernel@...r.kernel.org, linux-ide@...r.kernel.org
Subject: Re: 2.6.34-rc2 breaks via82cxxx Host Protected Area

On 03/26/2010 08:36 PM, David Fries wrote:
> On Fri, Mar 26, 2010 at 08:12:26PM -0400, Jeff Garzik wrote:
>> On 03/26/2010 07:21 PM, David Fries wrote:
>>> The kernel fails to see the entire disk with 2.6.34-rc2 with VIA
>>> vt82c586b chipset.  I tracked it down to commit
>>> f931a5d5785d7b7c44871bd7ad2762e29dfddf29 "via82cxxx: workaround h/w
>>> bugs" and reverting just that one solves the problem, or just
>>> commenting out just one outb write in that change.
>>>
>>> via82cxxx 0000:00:07.1: VIA vt82c586b (rev 41) IDE UDMA33
>>> via82cxxx 0000:00:07.1: IDE controller (0x1106:0x0571 rev 0x06)
>>> via82cxxx 0000:00:07.1: not 100% native mode: will probe irqs later
>>>
>>> Note the kernel panic is intentional as I'm given the test kernel an
>>> invalid root device, so that I can suspend to disk, try a kernel,
>>> resume and pick up where I left off.  It does have a side benefit of
>>> dumping the size of all partitions.
>>>
>>> 2.6.34-rc2 unmodified, fails and sees 30985416 KiB for the last
>>> partition.
>>> ide-gd driver 1.18
>>> hda: max request size: 128KiB
>>> hda: 66055248 sectors (33820 MB) w/7936KiB Cache, CHS=65531/16/63
>>> hda: cache flushes supported
>>>    hda: hda1 hda2 hda3
>>> hda: p3 size 236037312 exceeds device capacity, enabling native capacity
>>> hda: p3 size 236037312 exceeds device capacity, limited to end of disk
>>> ide-cd driver 5.00
>>> ...
>>> Please append a correct "root=" boot option; here are the available partitions:
>>> 0300        33027624 hda driver: ide-gd
>>>     0301           49391 hda1
>>>     0302         1992816 hda2
>>>     0303        30985416 hda3
>>> Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(22,2)
>>>
>>> 2.6.34-rc2 with patch revered, correct size 118018656
>>> ide-gd driver 1.18
>>> hda: max request size: 128KiB
>>> hda: Host Protected Area detected.
>>>           current capacity is 66055248 sectors (33820 MB)
>>>           native  capacity is 240121728 sectors (122942 MB)
>>> hda: 66055248 sectors (33820 MB) w/7936KiB Cache, CHS=65531/16/63
>>> hda: cache flushes supported
>>>    hda: hda1 hda2 hda3
>>> hda: p3 size 236037312 exceeds device capacity, enabling native capacity
>>> hda: detected capacity change from 33820286976 to 122942324736
>>> ide-cd driver 5.00
>>> 0300       120060864 hda driver: ide-gd
>>>     0301           49391 hda1
>>>     0302         1992816 hda2
>>>     0303       118018656 hda3
>>> Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(22,2)
>>>
>>> Here are two debug patches, the first adds debug prints and the second
>>> disables the problematic write, I  have the output of both included.
>>>
>>>>  From dac7d14ce1f227d8a084c3ec218ea1430bffdc57 Mon Sep 17 00:00:00 2001
>>> From: David Fries<david@...es.net>
>>> Date: Thu, 25 Mar 2010 19:51:31 -0500
>>> Subject: [PATCH 1/2] fails: add print messages
>>>
>>> add print messages for debugging
>>> ---
>>>    drivers/ide/via82cxxx.c |    5 +++++
>>>    1 files changed, 5 insertions(+), 0 deletions(-)
>>
>> Does libata + pata_via work, if you pass ignore_hpa=1 module option to
>> libata?
>>
>> 	Jeff
>
> No, here is the output with ignore_hpa=1 on the command line.  I also
> don't see any difference with it not on the command line.

I said "module option", which is different from a kernel command line 
option.

If you are trying to build a module into the kernel image itself, you 
must use the "modulename.moduleoption" format on the kernel command 
line, ie. libata.ignore_hpa=1


> scsi0 : pata_via
> scsi1 : pata_via
> ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0xe400 irq 14
> ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0xe408 irq 15
> ata1.00: HPA detected: current 66055248, native 240121728
> ata1.00: ATA-7: Maxtor 6Y120P0, YAR41BW0, max UDMA/133
> ata1.00: 66055248 sectors, multi 16: LBA
> ata1.00: configured for UDMA/33
> scsi 0:0:0:0: Direct-Access     ATA      Maxtor 6Y120P0   YAR4 PQ: 0 ANSI: 5
> sd 0:0:0:0: [sda] 66055248 512-byte logical blocks: (33.8 GB/31.4 GiB)
> sd 0:0:0:0: [sda] Write Protect is off
> sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
>   sda: sda1 sda2 sda3
> sda: p3 size 236037312 exceeds device capacity, limited to end of disk

This message should hopefully change, when the module option is 
correctly specified.


> sd 0:0:0:0: [sda] Attached SCSI disk
> ata2.01: ATAPI: PLEXTOR CD-R   PX-W4012A, 1.06, max UDMA/33
> ata2.01: configured for UDMA/33
> scsi 1:0:1:0: CD-ROM            PLEXTOR  CD-R   PX-W4012A 1.06 PQ: 0 ANSI: 5
> ...
> VFS: Cannot open root device "1602" or unknown-block(22,2)
> Please append a correct "root=" boot option; here are the available partitions:
> 0800        33027624 sda driver: sd
>    0801           49391 sda1
>    0802         1992816 sda2
>    0803        30985416 sda3
> Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(22,2)

All these errors related to unknown-block(22,2) are it trying to find 
/dev/hdX, when libata uses the SCSI block devices /dev/sdX

These errors are unrelated to HPA, and are a standard issue encountered 
when moving from legacy IDE driver to libata.

	Jeff


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ