LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Kernel (https://www.linuxquestions.org/questions/linux-kernel-70/)
-   -   2.6.19: VFS: Cannot Open root device "sda1" or unknown-block(0,0) (https://www.linuxquestions.org/questions/linux-kernel-70/2-6-19-vfs-cannot-open-root-device-sda1-or-unknown-block-0-0-a-509439/)

havok1977 12-11-2006 12:50 PM

2.6.19: VFS: Cannot Open root device "sda1" or unknown-block(0,0)
 
VFS: Cannot Open root device "sda1" or unknown-block(0,0)
Kernel panic: VFS: Unable to mount root fs on /dev/sda1 (0,0)

I've been trying to compile a new 2.6.19 Kernel since a few days ago, and i just cant seem to fix this problem, i am using ReiserFS on my hard drive; and i made sure that the module for that FS is embedded in my Kernel binary:

CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
CONFIG_REISERFS_FS_XATTR=y
# CONFIG_REISERFS_FS_POSIX_ACL is not set
# CONFIG_REISERFS_FS_SECURITY is not set

This is a Laptop with Serial ATA so the modules are there as well:

CONFIG_BLK_DEV_IDE_SATA=y


And my grub tells the MBR that where the root partition is:

title Debian GNU/Linux, kernel 2.6.19
root (hd0,0)
kernel /boot/vmlinuz-2.6.19 root=/dev/sda1 ro ramdisk_size=100000 lang=us apm=power-off nomce vga=791
savedefault

So, i dont know what im missing, i used the same configuration for the 2.6.18.3 version and everything works fine, in fact it is the running Kernel as i type this, so i hope that someone can help me out here, what am i missing?

charleykadet 12-22-2006 12:24 PM

between 2.6.18 and 2.6.19 kernel, it were a small difference in the config of s-ata drive. Sata drive is now in Device Drivers and not in scsi branch.. you need to reselect your controller and it should work;)

ikeapimp 12-23-2006 02:19 AM

Thanks for the help, charleykadet - your answer was spot on.

Here's some of my details for others with the same problem. I upgraded my kernel from linux-2.6.18-gentoo-r1 to linux-2.6.19-gentoo-r2 (running Gentoo, obviously) and on boot I found that the new kernel remapped the root partition on my SATA drive from /dev/sda3 (in 2.6.18) to /dev/hda3. Not pretty.

Soooo ... using 'genkernel --menuconfig --oldconfig all', I selected the following:

Device Drivers --->
Serial ATA (prod) and Parallel ATA (experimental) drivers --->
<*> ATA device support
<*> Intel PIIX/ICH SATA support

The last option should be based on your hardware. I have a Toshiba Satellite M105 and selected the driver based on this line from 'lspci':

00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller IDE (rev 02)

After a recompile and reboot, everything started working flawlessly.

havok1977 01-03-2007 06:32 PM

Still not working for me
 
Sorry for the late reply, i was out on vacation; but this issue is still not working for me after following the suggestions, i have a Lenovo T60 with the same SATA controller:

00:1f.2 SATA controller: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller AHCI (rev 02)

Anything else i should check?

ikeapimp 01-03-2007 07:03 PM

Post the output of lspci - I'll see what I can find.

PyroBoy101 01-03-2007 07:58 PM

I seem to be in the same exact boat. Heres my lspci...

00:00.0 Host bridge: Intel Corporation 945G/GZ/P/PL Express Memory Controller Hub
00:01.0 PCI bridge: Intel Corporation 945G/GZ/P/PL Express PCI Express Root Port
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 01)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 01)
00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 01)
00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 01)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 01)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 01)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 01)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 01)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 01)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev e1)
00:1f.0 ISA bridge: Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge (rev 01)
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 01)
00:1f.2 IDE interface: Intel Corporation 82801GB/GR/GH (ICH7 Family) Serial ATA Storage Controller IDE (rev 01)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 01)
01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce 6600] (rev a2)
02:00.0 Ethernet controller: Intel Corporation 82573V Gigabit Ethernet Controller (Copper) (rev 03)
05:03.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
05:05.0 FireWire (IEEE 1394): Texas Instruments TSB43AB23 IEEE-1394a-2000 Controller (PHY/Link)

CONFIG_ATA_PIIX=y
CONFIG_PATA_MPIIX=y

Quakeboy02 01-03-2007 08:15 PM

Have you seen this thread about grub and SATA?

http://www.linuxquestions.org/questi...d.php?t=454864

By the way, does your laptop actually have a SATA drive in it? If it's an ATA drive, the "CONFIG_PATA_MPIIX=y" might be your problem, as it will cause PATA drives to be under control of the SATA controller and probably would change them from HD to SD drives. You might turn that flag off just to check.

havok1977 01-04-2007 09:34 AM

Here is my lspci:

00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)
00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02)
00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller AHCI (rev 02)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)
02:00.0 Ethernet controller: Intel Corporation 82573L Gigabit Ethernet Controller
03:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)
15:00.0 CardBus bridge: Texas Instruments PCI1510 PC card Cardbus Controller

And my Kernel config:

# Serial ATA (prod) and Parallel ATA (experimental) drivers
#
CONFIG_ATA=y
CONFIG_ATA_PIIX=y
CONFIG_SATA_INTEL_COMBINED=y

# CONFIG_BLK_DEV_IDE_SATA is not set


As i stated before, i am currently using the following locally compiled Kernel without a single issue:

root@raziel:/usr/src/linux# uname -a
Linux raziel 2.6.18.6 #1 SMP PREEMPT Tue Dec 19 18:17:23 CST 2006 i686 GNU/Linux

And i used these compile options:

# CONFIG_BLK_DEV_IDE_SATA is not set
CONFIG_SCSI_SATA=y
CONFIG_SCSI_SATA_AHCI=y
CONFIG_SCSI_SATA_INTEL_COMBINED=y

And yes, im sure that i have a SATA Hard Drive; not only because it works as SATA with my current kernel, but also the CD-ROM is IDE PATA and is configured as primary master (/dev/hda)

havok1977 01-04-2007 10:14 AM

I fixed my problem, by recompiling using this options:

# Serial ATA (prod) and Parallel ATA (experimental) drivers
#
CONFIG_ATA=y
CONFIG_SATA_AHCI=y
CONFIG_SATA_INTEL_COMBINED=y

ikeapimp 01-04-2007 11:05 AM

Good to hear that you're back up and running. The PATA info is great as well.

I have to admit that I've gotten lazy by using menuconfig rather than hand editing the .config. Takes care of a lot of problems and dependencies (like the one above), but it occasionally messes me up as well.

Quakeboy02 01-04-2007 01:46 PM

"CONFIG_SATA_INTEL_COMBINED=y"

Doesn't this say that IDE devices are SATA controlled? Or do I have this confused with something else? Regardless, glad you got it working!

ata/Kconfig:
config SATA_INTEL_COMBINED
bool
depends on IDE=y && !BLK_DEV_IDE_SATA && (SATA_AHCI || ATA_PIIX)
default y

urza 01-09-2007 09:11 AM

I'm experiencing several troubles running 2.6.19.1 kernel on my vaio sz2M, which has the same sata controller of yours.
Sometimes it doesn't recognizes the sata controller during the boot and, naturally, cannot find the system disk.

And my lspci -v (sata controller):
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller IDE (rev 02) (prog-if 8f [Master SecP SecO PriP PriO])
Subsystem: Sony Corporation Unknown device 81e6
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 21
I/O ports at 18d0 [size=8]
I/O ports at 18c4 [size=4]
I/O ports at 18c8 [size=8]
I/O ports at 18c0 [size=4]
I/O ports at 18b0 [size=16]
Memory at dc544400 (32-bit, non-prefetchable) [size=1K]
Capabilities: [70] Power Management version 2

I enabled Intel PIIX/ICH SATA support:
# CONFIG_BLK_DEV_IDE_SATA is not set
CONFIG_ATA=y
CONFIG_ATA_PIIX=y
CONFIG_SATA_INTEL_COMBINED=y


Since I haven't been experiencing problem until I upgraded to 2.6.19.1, I guess there's something buggy in it...

Thanks !

urza

lg21 02-13-2007 11:22 AM

Same here :/
 
Hello,
same here - but can't find SATA_INTEL_COMBINED :/, got:

# cat .config|grep CONFIG_ATA
CONFIG_ATALK=m
CONFIG_ATA_OVER_ETH=m
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
CONFIG_ATA_PIIX=y
# CONFIG_ATA_GENERIC is not set
# CONFIG_ATARI_PARTITION is not set


#cat .config|grep CONFIG_SATA
# CONFIG_SATA_AHCI is not set
# CONFIG_SATA_SVW is not set
# CONFIG_SATA_MV is not set
# CONFIG_SATA_NV is not set
# CONFIG_SATA_QSTOR is not set
# CONFIG_SATA_PROMISE is not set
# CONFIG_SATA_SX4 is not set
# CONFIG_SATA_SIL is not set
# CONFIG_SATA_SIL24 is not set
# CONFIG_SATA_SIS is not set
# CONFIG_SATA_ULI is not set
# CONFIG_SATA_VIA is not set
# CONFIG_SATA_VITESSE is not set

# cat .config |grep EXT3
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y

# cat /etc/fstab
/dev/sda1 / ext3 defaults,errors=remount-ro 0 1
/dev/sda5 /home ext3 defaults 0 2
/dev/sda8 /var ext3 defaults 0 2
/dev/sda6 /home/lg21/movies ext3 defaults 0 2
/dev/sda7 /tmp ext3 defaults 0 2

/boot/grub/menu.lst:

title Debian GNU/Linux, kernel 2.6.20
root (hd0,0)
kernel /boot/vmlinuz-2.6.20 root=/dev/sda1 ro
savedefault

title Debian GNU/Linux, kernel 2.6.18-3-686
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-3-686 root=/dev/sda1 ro
initrd /boot/initrd.img-2.6.18-3-686
savedefault

(got ext as * in kernel, so I don't have to use initrd?)

lspci:# lspci
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03)
00:01.0 PCI bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express PCI Express Root Port (rev 03)
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)
00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02)
00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller IDE (rev 02)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)
01:00.0 VGA compatible controller: nVidia Corporation GeForce Go 7400 (rev a1)
06:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)
07:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8036 PCI-E Fast Ethernet Controller (rev 15)
09:04.0 CardBus bridge: Texas Instruments PCIxx12 Cardbus Controller
09:04.1 FireWire (IEEE 1394): Texas Instruments PCIxx12 OHCI Compliant IEEE 1394 Host Controller
09:04.2 Mass storage controller: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD

Laptop: Sony SZ2M/B ... could anybody with similar laptop send me config on lukasz21@gmail.com?

lg21 02-13-2007 04:32 PM

At last
 
Hello,

on few forums I found that when i compile filesystem in kernel - don't need to use initrd - got <*> for all ext3, made:
# make-kpkg -initrd kernel_image kernel_headers modules_image

now works :P

Now I don't know how to turn on second core(Intel Core Duo 1.6GHz), I have:
<*> Symmetric multi-processing support
Processor family (Core 2/newer Xeon)

My kernel config is here: http://lg21.bestbit.org/config
(anybody knows how to turn on second core?)


Thanks for any clues/help in advance.

charleykadet 02-13-2007 04:37 PM

For intel chip... you must compile AHCI in s-ata devices...

lg21 02-13-2007 04:50 PM

Thanks :).

shubb 02-15-2007 11:53 AM

Ok, I have a similar problem. I'm going from 2.6.17 to 2.6.20, and I got the same errors as havok above. I have an Asus MB, which uses Nvidia chips for the SATA controller. Here's the hardware:
Code:

00:00.0 RAM memory: nVidia Corporation C51 Host Bridge (rev a2)
00:00.1 RAM memory: nVidia Corporation C51 Memory Controller 0 (rev a2)
00:00.2 RAM memory: nVidia Corporation C51 Memory Controller 1 (rev a2)
00:00.3 RAM memory: nVidia Corporation C51 Memory Controller 5 (rev a2)
00:00.4 RAM memory: nVidia Corporation C51 Memory Controller 4 (rev a2)
00:00.5 RAM memory: nVidia Corporation C51 Host Bridge (rev a2)
00:00.6 RAM memory: nVidia Corporation C51 Memory Controller 3 (rev a2)
00:00.7 RAM memory: nVidia Corporation C51 Memory Controller 2 (rev a2)
00:02.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:03.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:04.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:05.0 VGA compatible controller: nVidia Corporation C51 PCI Express Bridge (rev a2)
00:09.0 RAM memory: nVidia Corporation MCP51 Host Bridge (rev a2)
00:0a.0 ISA bridge: nVidia Corporation MCP51 LPC Bridge (rev a2)
00:0a.1 SMBus: nVidia Corporation MCP51 SMBus (rev a2)
00:0b.0 USB Controller: nVidia Corporation MCP51 USB Controller (rev a2)
00:0b.1 USB Controller: nVidia Corporation MCP51 USB Controller (rev a2)
00:0d.0 IDE interface: nVidia Corporation MCP51 IDE (rev a1)
00:0e.0 IDE interface: nVidia Corporation MCP51 Serial ATA Controller (rev a1)
00:0f.0 IDE interface: nVidia Corporation MCP51 Serial ATA Controller (rev a1)

00:10.0 PCI bridge: nVidia Corporation MCP51 PCI Bridge (rev a2)
00:10.1 Class 0403: nVidia Corporation MCP51 High Definition Audio (rev a2)
00:14.0 Bridge: nVidia Corporation MCP51 Ethernet Controller (rev a1)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
04:05.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80)

I added in the Device Drivers > Serial ATA... > NVIDIA SATA support into the kernel. Rebuilt the kernel and modules.
When I boot onto the new kernel, I see "Loading Linux-2.6.20.............." and it stops there. Is there some huge step that I missed? I only added the two options and the kernel doesnt boot anymore.

urza 04-22-2007 03:32 PM

Quote:

Originally Posted by charleykadet
For intel chip... you must compile AHCI in s-ata devices...

anyway, 2.6.19 is really crap: a friend of mine who owns a macbook has the same problem.
when switching to >2.6.20.3, problems get solved...

lg21 05-03-2007 04:25 PM

Got the same - initrd!!

Try compiling kernel with:
make-kpkg kernel-image kernel-headers --initrd --append-to-version -lg21 --revision 1.0

Logimite 02-24-2021 12:35 AM

Quote:

Originally Posted by havok1977 (Post 2539205)
VFS: Cannot Open root device "sda1" or unknown-block(0,0)
Kernel panic: VFS: Unable to mount root fs on /dev/sda1 (0,0)

I've been trying to compile a new 2.6.19 Kernel since a few days ago, and i just cant seem to fix this problem, i am using ReiserFS on my hard drive; and i made sure that the module for that FS is embedded in my Kernel binary:

CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
CONFIG_REISERFS_FS_XATTR=y
# CONFIG_REISERFS_FS_POSIX_ACL is not set
# CONFIG_REISERFS_FS_SECURITY is not set

This is a Laptop with Serial ATA so the modules are there as well:

CONFIG_BLK_DEV_IDE_SATA=y


And my grub tells the MBR that where the root partition is:

title Debian GNU/Linux, kernel 2.6.19
root (hd0,0)
kernel /boot/vmlinuz-2.6.19 root=/dev/sda1 ro ramdisk_size=100000 lang=us apm=power-off nomce vga=791
savedefault

So, i dont know what im missing, i used the same configuration for the 2.6.18.3 version and everything works fine, in fact it is the running Kernel as i type this, so i hope that someone can help me out here, what am i missing?

I have the same issue on elementaryos


All times are GMT -5. The time now is 10:36 PM.