Re: updated 3w-9xxx module -- was: CentOS install prob

Top Page
Attachments:
Message as email
+ (text/plain)
+ (text/plain)
Delete this message
Reply to this message
Author: der.hans
Date:  
To: Main PLUG discussion list
New-Topics: clean up posts please WAS updated 3w-9xxx module
Subject: Re: updated 3w-9xxx module -- was: CentOS install prob
Am 21. Sep, 2007 schw?tzte R P Herrold so:

> On Thu, 20 Sep 2007, der.hans wrote:
>
>> I was able to boot the rescue image, load the 3ware module
>> and open up the initrd being used for the boots. The initrd
>> has the 3ware module as well as the scsi_mod driver and ext3
>> driver. It looks like everything is there.
>
> the latest 3-ware PCI-X cards need a later 3ware driver
> variant than centOS and their upstream presently ship. One


Yup.

> installs with the driver disk (dd) option; one may also also


If one had a disk...

At first I was loading via a SATA drive I borrowed from another machine. I
then looked and found out the install shell has wget available. Bliss :).

I run pump to set up a network interface. I wget the driver package. I
unpack the driver package. I unpack the driver. I insmod the driver.

If I'm in the install, I switch back to the install.

If I'm in rescue mode I need to also mknod the nodes needed to see the
disk partitions. I don't know how to trigger whatever the normal drive
search tools use. I can't seem to get a shell early enough to install the
driver before the point where the nodes would be made.

> need to make a custom initrd with the altered module. If not
> needed at boot time, one may be able to wait and let the usual
> module probing call it in as well, when a mount occurs.


Yeah. The problem, I think, is that I was was presuming the driver wasn't
already in the kernel tree, so when had the module in the initrd I figured
it was the driver I'd loaded. Now I think that's not the case and the
initrd has been loading the driver without support for the card.

> I doco the custom mkinitrd part generally at:
>     http://www.owlriver.com/tips/driver-modules/


The problem is that mkinitrd was looking for things that weren't in the
chroot environment. Things like /bin/bash. Nothing insurmountable, I
think, but I was thinking I didn't need it, so I didn't want to expend a
bunch of wasted effort.

> I'll turn this piece into another 'tip' when it comes back
> around in my email spool.
>
>
> Additionally it turns out that the sources for the later
> 3-ware version are available from 3-ware, so that one may
> compile and add it to the tree traversed by the depmod, after
> moving the unwanted one away to another name:


Yeah, building a custom kernel is an option once I get the install done.
Getting the install working should be possible since I have a working
driver.

I will try again when I get a chance. Now that I think we know the actual
problem I should be able to compensate for it.

Any idea where the install puts the modules for creating the initrd? In
/lib/modules/$kernel_version/ like normal?

ciao,

der.hans

>
>
> as root:
>
> ... poke around a bit to see what is loaded
>
> 335 modprobe 3w-9xxx
> 336 locate 3w-9xxx
>
> ... examine and inventory what is present as to size and
> datestamp
>
>   337  ls -al \
> /lib/modules/2.6.18-8.1.8.el5/kernel/drivers/scsi/3w-9xxx.ko     \
> /lib/modules/2.6.18-8.1.8.el5/updates/3w-9xxx.ko          \
> /lib/modules/2.6.18-8.el5/kernel/drivers/scsi/3w-9xxx.ko     \
> /lib/modules/2.6.18-8.el5/updates/3w-9xxx.ko
>   338  lsmod | grep 3w
>   339  rmmod 3w_9xxx
>   340  lsmod | grep 3w
>   341  mv  \
> /lib/modules/2.6.18-8.1.8.el5/kernel/drivers/scsi/3w-9xxx.ko  \
> /lib/modules/2.6.18-8.1.8.el5/kernel/drivers/scsi/3w-9xxx.ko_
>   342  depmod -a

>
>
> as non-root:
>
> 273 ls
> 274 less 3w-9xxx-2.6.16kernel_9.4.1.2.tgz
>
> ... this was pulled from the 3-ware support site
>
> 275 tar zxf 3w-9xxx-2.6.16kernel_9.4.1.2.tgz
> 276 ls
> 277 cd driver/
> 278 ls
> 279 make
>
> ... the make dies because I needed the 'kernel-devel' package
> which was not present for some headers
>
> 280 ls
> 281 less Makefile
> 282 rpm -qa | grep kernel
> 283 rpm -ql kernel-headers
> 284 make
> 285 sudo yum provides 'source/drivers/scsi'
> 286 sudo yum -y install kernel-devel
>
> ... so I install the build dependency
>
> 287 ls
> 288 make
> 289 ls
> 290 history
> 291 find -name *.ko
>
> ... and a new kernel module results:
>
> 292 uname -a
>
> which I move into the proper location for the depmod to find:
>
> 293 sudo scp ./3w-9xxx.ko /lib/modules/2.6.18-8.1.8.el5/updates/
> 295 sudo depmod -a
> 296 sudo /sbin/depmod -a
> 297 sudo /sbin/depmod -a -v
>
>
> Then, back as root:
>
> [root@hostname modules]# uname -a
> Linux hostname.yyy.lan 2.6.18-8.1.8.el5 #1 SMP Tue Jul
>     10 06:39:17 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux
> [root@hostname modules]# find -name '3w-9xxx*' | grep  '2.6.18-8.1.8.el5'
> ./2.6.18-8.1.8.el5/kernel/drivers/scsi/3w-9xxx.ko_
> ./2.6.18-8.1.8.el5/updates/3w-9xxx.ko
> [root@hostname modules]#

>
> Note that the last line is the one we just built.
>
> ... and all is well, and we verify with a hands off reboot
> that it 'just works'
>
> -- Russ Herrold
>


-- 
#  https://www.LuftHans.com/        http://www.CiscoLearning.org/
#  Schlie?lich verteidigt Amerika Freiheit. Und Freiheit beginnt mit dem Wort.
#    -- Gunter Grass
---------------------------------------------------
PLUG-discuss mailing list -
To subscribe, unsubscribe, or to change your mail settings:
http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss