From owner-freebsd-scsi@FreeBSD.ORG Wed Feb 8 18:54:09 2012 Return-Path: Delivered-To: freebsd-scsi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2C718106566C; Wed, 8 Feb 2012 18:54:09 +0000 (UTC) (envelope-from Kashyap.Desai@lsi.com) Received: from na3sys009aog119.obsmtp.com (na3sys009aog119.obsmtp.com [74.125.149.246]) by mx1.freebsd.org (Postfix) with ESMTP id 662478FC13; Wed, 8 Feb 2012 18:54:08 +0000 (UTC) Received: from paledge01.lsi.com ([192.19.193.42]) (using TLSv1) by na3sys009aob119.postini.com ([74.125.148.12]) with SMTP ID DSNKTzLEzrkEvohmAx7XWkL0ynqvMVDwmkSW@postini.com; Wed, 08 Feb 2012 10:54:08 PST Received: from PALCAS01.lsi.com (128.94.213.117) by PALEDGE01.lsi.com (192.19.193.42) with Microsoft SMTP Server (TLS) id 8.3.213.0; Wed, 8 Feb 2012 13:58:23 -0500 Received: from inbexch01.lsi.com (135.36.98.37) by PALCAS01.lsi.com (128.94.213.117) with Microsoft SMTP Server (TLS) id 8.3.213.0; Wed, 8 Feb 2012 13:54:06 -0500 Received: from inbmail01.lsi.com ([135.36.98.64]) by inbexch01.lsi.com ([135.36.98.37]) with mapi; Thu, 9 Feb 2012 00:24:02 +0530 From: "Desai, Kashyap" To: "Kenneth D. Merry" , "freebsd-scsi@freebsd.org" Date: Thu, 9 Feb 2012 00:24:01 +0530 Thread-Topic: mps driver overwrite using loader.conf Thread-Index: AczmkwW0Nq9TxRlGSaqs40VXn5mZPw== Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Cc: "Justin T. Gibbs" , "McConnell, Stephen" Subject: mps driver overwrite using loader.conf X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 08 Feb 2012 18:54:09 -0000 With upstream mps driver, I am trying to do some testing with my next drive= r. I followed below process to overwrite existing mps driver with new one. 1. My kernel has pre-compiled mps driver (It is not part of module) 2. While booting itself I wants to replace with my next version of mps driv= er. 3. I copy my new "mps" driver at /boot/kernel/ location 4. modify /boot/defaults/loader.conf with Now I see new mps is getting loaded instead of inbuilt mps driver. Here is output of sysctl with mpslsi driver loaded into kernel. [For LSI's = internal tracking this driver is called mpslsi ] device mps hw.mps.disable_msi: 0 hw.mps.disable_msix: 0 dev.mpslsi.0.%desc: LSI SAS2008 dev.mpslsi.0.%driver: mpslsi dev.mpslsi.0.%location: slot=3D0 function=3D0 dev.mpslsi.0.%pnpinfo: vendor=3D0x1000 device=3D0x0072 subvendor=3D0x1000 s= ubdevice=3D0x0072 class=3D0x010700 dev.mpslsi.0.%parent: pci6 dev.mpslsi.0.debug_level: 0 dev.mpslsi.0.disable_msix: 0 dev.mpslsi.0.disable_msi: 0 dev.mpslsi.0.firmware_version: 12.250.01.00 dev.mpslsi.0.driver_version: 13.255.00.01 < -- New Driver dev.mpslsi.0.io_cmds_active: 0 dev.mpslsi.0.io_cmds_highwater: 1 dev.mpslsi.0.chain_free: 2048 dev.mpslsi.0.chain_free_lowwater: 2047 dev.mpslsi.0.max_chains: 2048 dev.mpslsi.0.chain_alloc_fail: 0 _But_ Strange thing is if I unload my "mps" module, there is still some sta= le entry in kernel. After I unload mpslsi driver here is output of sysctl device mps hw.mps.disable_msi: 0 hw.mps.disable_msix: 0 What is this "device mps" instance ?=20 I want to understand How FreeBSD handle this kind of scenario ? ~ Kashyap