Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 254793 - sys-kernel/gentoo-sources-2.6.28: pata_hpt366 fix for hang on boot
Summary: sys-kernel/gentoo-sources-2.6.28: pata_hpt366 fix for hang on boot
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: High major
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL:
Whiteboard: linux-2.6.28
Keywords: InVCS
Depends on:
Blocks:
 
Reported: 2009-01-13 09:20 UTC by Jeff Glover
Modified: 2009-01-19 12:57 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
This update from the git is currently working (pata_hpt366.c,10.93 KB, text/plain)
2009-01-13 09:23 UTC, Jeff Glover
Details
Patch for update (pata_hpt366.patch,5.20 KB, patch)
2009-01-13 09:27 UTC, Jeff Glover
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jeff Glover 2009-01-13 09:20:37 UTC
On my older P3 based machine I have not been able to use the libata drivers because pata_hpt366 would cause the kernel to hang on boot.

They have finally fixed this for the the latest git, I think due for 2.6.29. It'd be nice to have a patch already in upcoming gentoo-sources-2.6.28 releases.

Reproducible: Always

Steps to Reproduce:
1. Compile any kernel with CONFIG_PATA_HPT366=y enabled and boot

Actual Results:  
Machine locked up with no error messages.

Expected Results:  
Boot normally

From: Tejun Heo <tj@kernel.org>
Date: Thu, 8 Jan 2009 21:29:20 +0000 (-0500)
Subject: pata_hpt366: reimplement mode programming
X-Git-Tag: v2.6.29-rc1~48^2~3
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=6ecb6f25d3a52c0d032aa73bde1ff9bc454aa66c

pata_hpt366: reimplement mode programming

Reimplement mode programming logic of pata_hpt366 such that it's
identical to that of IDE hpt366 driver.  The differences were...

* pata_hpt366 used 0xCFFF8FFFF to mask pio modes and 0x3FFFFFFF dma
  modes.  IDE hpt366 uses 0xC1F8FFFF for PIO, 0x303800FF for MWDMA and
  0x30070000 for UDMA.

* pata_hpt366 doesn't set 0x08000000 for PIO unless it's already set
  and always turns it on for MWDMA/UDMA.  IDE hpt366 doesn't bother
  with the bit.  It always uses what was there.

* IDE hpt366 always clears 0xC0000000.  pata_hpt366 doesn't.

Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Comment 1 Jeff Glover 2009-01-13 09:23:18 UTC
Created attachment 178329 [details]
This update from the git is currently working

With the updated pata_hpt366.c everything is working as expected.
Comment 2 Jeff Glover 2009-01-13 09:27:51 UTC
Created attachment 178331 [details, diff]
Patch for update
Comment 3 Daniel Drake (RETIRED) gentoo-dev 2009-01-19 12:57:38 UTC
fixed in gentoo-sources-2.6.28-r1