Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: wd0 not recognized with 6.99.8



On 11/07/2012 14:31, Riccardo Mottola wrote:
Hi,

I compiled today's kernel and modules, with a clean /usr/tools and /usr/obj directory.

Compilation appears fine, but when booting the new kernel, the root is not found and I am asked to select between network and cd. Dmesg doesn't seem to list my HD.

This is from the dmesg of 6.99.6 :
wd0 at atabus0 drive 0
wd0: <HTS421260H9AT00>
wd0: drive supports 16-sector PIO transfers, LBA48 addressing
wd0: 57231 MB, 116280 cyl, 16 head, 63 sec, 512 bytes/sect x 117210240 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100)
wd0(piixide0:0:0): using PIO mode 4, Ultra-DMA mode 5 (Ultra/100) (using DMA)
cd0(piixide0:0:1): using PIO mode 4, DMA mode 2 (using DMA)

I installed the modules as usual with the command:

./build.sh -O /usr/obj -T /usr/tools -U -u modules installmodules=/

Which worked fine for months.

Any suggestions?

Riccardo

Hi,

I had same problem 3 days ago, you can try that :

In file src/sys/dev/scsipi/atapi_wdc.c
line 324 and 329 add

if ( drvp->drive_type == DRIVET_ATAPI )

before each drvp->drive_type = DRIVET_NONE;
so it looks like this :


            s = splbio();
if ( drvp->drive_type == DRIVET_ATAPI )
                drvp->drive_type = DRIVET_NONE;
            splx(s);
        }
    } else {
        s = splbio();
if ( drvp->drive_type == DRIVET_ATAPI )
            drvp->drive_type = DRIVET_NONE;
        splx(s);
    }





Home | Main Index | Thread Index | Old Index