disk driver
Hello,
I would like to know which kernel module is the hard disk driver. the command lsmod list the following kernel modules: Code:
Module Size Used by Code:
00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01) SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI- but what is the relative kernel module? Thank you in advance |
If it was a separate module, how would the kernel load it from disk?
Code:
grep BLK_DEV_SD /boot/config-`uname -r` |
Usually such required drivers would be loaded from the initrd file which is a mini-root filesystem containing the initial drivers. This is loaded into memory as part of the inital boot (via grub/lilo/...) which in turn is loaded by the BIOS/EFI rom.
So modules for the physical disks are loaded from disk, but not necessarily by the operating system. I have had to modify the initrd file for VMs that didn't have the VM disk driver installed - once added the module to the initrd, booting the system worked just fine. In my case, your command returns "CONFIG_BLK_DEV_SD=y", but that is only supporting block interface to drivers (in this case, the generic SCSI layer. The actual disk driver depends on the hardware interface for the SATA drives (which I believe is the pata_it821 module). In one of my VMs for testing, the same CONFIG_BLK_DEV_SD is used, but the actual driver is the virtual I/O subsystem that defines the vda devices, but that was not in the initrd by default. |
The driver/module in use is mptsas as confirmed by lspci:
00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01) |
Guys, thank you all.
I have some doubts about the actual disk driver. As you can see from the output of the lspci command I get an IDE interface: 00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01) If I check out kernel configuration (Device Drivers -> ATA/ATAPI/MFM/RLL support") there is an Intel PIIXn chipsets support. Also, the interface of /dev/hda is IDE. Thus, the driver should be the one provided by Intel. Yet, the command dmesg | egrep -i --color 'disk' Code:
hda VMWare Virtual IDE Hard driver, ATA Disk driver the Linux kernel. The code of the disk driver should be (nm -l -n output): Code:
c031c750 t sectors_to_MB /usr/src/linux-2.6.24-FNM_v2.1/drivers/ide/ide-disk.c:433 Anyway, I'm confused because if that code includes (in somehow) the disk driver, what is mptsas for? Thank you in advance, |
All times are GMT -5. The time now is 01:44 AM. |