Storport WMI receives NULL srb->DataPath for first request

I am adding WMI support to my storport driver and used the sample code in the 
DDK iSCSI driver as a foundation. My driver is simply trying to support the 
HBA API and does not have any unique data to provide. There is no MOF for my 
driver and I am simply using the GUID provided in Windows header files to 
describe the data that can be retrieved from my driver.

The first time I executed my code I got a BSOD. After tracing through the 
code, I determined that the srb->DataPath was NULL and that pointer was being 
used inside scsiwmi.lib while processing the WMI request. I replaced the NULL 
with a pointer to a GUID that I support and the code executed without 
crashing.

I am not sure why the srb->DataPath would be used for the first WMI request. 
I was expecting it to be a simple QueryRegInfo request, trying to identify 
the MOF that might be defined in my storport driver.


Does anyone have any ideas about what might be happening?
0
Utf
6/18/2010 4:34:32 PM
development.device.drivers 941 articles. 0 followers. Follow

3 Replies
1037 Views

Similar Articles

[PageSpeed] 9

Someone else reported that they saw srb->DataPath was NULL for the first 
request in their storport driver as well. Is it possible this problem is 
caused by not having a BMF file included in my .rc file? As I mentioned in 
the original post, I have no private data and assumed these definitions were 
optional.

"RamenWarrior" wrote:

> I am adding WMI support to my storport driver and used the sample code in the 
> DDK iSCSI driver as a foundation. My driver is simply trying to support the 
> HBA API and does not have any unique data to provide. There is no MOF for my 
> driver and I am simply using the GUID provided in Windows header files to 
> describe the data that can be retrieved from my driver.
> 
> The first time I executed my code I got a BSOD. After tracing through the 
> code, I determined that the srb->DataPath was NULL and that pointer was being 
> used inside scsiwmi.lib while processing the WMI request. I replaced the NULL 
> with a pointer to a GUID that I support and the code executed without 
> crashing.
> 
> I am not sure why the srb->DataPath would be used for the first WMI request. 
> I was expecting it to be a simple QueryRegInfo request, trying to identify 
> the MOF that might be defined in my storport driver.
> 
> 
> Does anyone have any ideas about what might be happening?
0
Utf
6/21/2010 9:57:29 PM
On Win7 at least (where I just tried), it's to be expected that the first WMI 
SRB will have pSrb->DataPath = 0. I cannot explain the bugcheck you saw. 
Since, as far as I know, a miniport saying it's a WMI provider must always 
provide a .mof resource name, your problem may result from not doing so. Do 
as I did, create a .mof with a few classes from HBAAPI.mof (I assume that's 
what your reference to "HBA API" means) and see if things work.

This posting is provided "AS IS" with no warranties, and confers no rights.

"RamenWarrior" wrote:

> Someone else reported that they saw srb->DataPath was NULL for the first 
> request in their storport driver as well. Is it possible this problem is 
> caused by not having a BMF file included in my .rc file? As I mentioned in 
> the original post, I have no private data and assumed these definitions were 
> optional.
> 
> "RamenWarrior" wrote:
> 
> > I am adding WMI support to my storport driver and used the sample code in the 
> > DDK iSCSI driver as a foundation. My driver is simply trying to support the 
> > HBA API and does not have any unique data to provide. There is no MOF for my 
> > driver and I am simply using the GUID provided in Windows header files to 
> > describe the data that can be retrieved from my driver.
> > 
> > The first time I executed my code I got a BSOD. After tracing through the 
> > code, I determined that the srb->DataPath was NULL and that pointer was being 
> > used inside scsiwmi.lib while processing the WMI request. I replaced the NULL 
> > with a pointer to a GUID that I support and the code executed without 
> > crashing.
> > 
> > I am not sure why the srb->DataPath would be used for the first WMI request. 
> > I was expecting it to be a simple QueryRegInfo request, trying to identify 
> > the MOF that might be defined in my storport driver.
> > 
> > 
> > Does anyone have any ideas about what might be happening?
0
Utf
7/21/2010 1:58:15 AM
On Jun 18, 10:34=A0am, RamenWarrior <RamenWarr...@nospam.nospam> wrote:
> I am adding WMI support to my storport driver and used the sample code in=
 the
> DDK iSCSI driver as a foundation. My driver is simply trying to support t=
he
> HBA API and does not have any unique data to provide. There is no MOF for=
 my
> driver and I am simply using the GUID provided in Windows header files to
> describe the data that can be retrieved from my driver.
>
> The first time I executed my code I got a BSOD. After tracing through the
> code, I determined that the srb->DataPath was NULL and that pointer was b=
eing
> used inside scsiwmi.lib while processing the WMI request. I replaced the =
NULL
> with a pointer to a GUID that I support and the code executed without
> crashing.
>
> I am not sure why the srb->DataPath would be used for the first WMI reque=
st.
> I was expecting it to be a simple QueryRegInfo request, trying to identif=
y
> the MOF that might be defined in my storport driver.
>
> Does anyone have any ideas about what might be happening?

Compile and attach as a resource the standard HBA API mof file.
Somebody report similar problem at OSR forum around month ago. A
person who ask the same question tried to implement exact solution -
putting existing GUID to DataPath. After that he got another problem.
I don't remember details but you could make search on OSR archive. He
solved the problem by compiling and attaching HBA API mof file as I
suggest.

Igor Sharovar
0
eagersh
7/22/2010 4:25:33 PM
Reply:

Similar Artilces:

Outlook 2000 Locks up during send/receive
I am experienceing some difficulty with Outlook 2000. I try to stay up-to-date with all the latest downloads. it appeares that since the addition of the latest security patch that I am now getting a tremendous amount of emails that claim to have virues that are not deleteable. I contacted my ISP and they can't really help. Now, Outlook is starting to lock up when in the send/receive mode. I see that there are 120 new messages. Then it gets to about 10 and stops receiving. HELP PLEASE. ...

XElement = null
Hello All I have the following code XElement element = null; if (trackPointExtensions != null) element = new XElement(ns + "extensions", new XElement(gpxtpx + "TrackPointExtension", new XElement(gpxtpx + "hr", trackPointExtensions.HeartRate != null ? trackPointExtensions.HeartRate : null), new XElement(gpxtpx + "atemp", trackPointExtensions.DegreesCelsius != null ? trackPointExtensions.DegreesCelsius : null) ...

Sales invoice (receivables)
I have about 7 RM accounts which are showing the same problems. After everything has posted to the GL accounts, it does not show the invoice on the customers account its almost like that invoice just vanished. Attempted Sales Reconcile on those accounts and that didn't fix the issue. Any ideas? (thanks) In case anyone runs across this issue. I ended up running a check links on Sales -> Receivables Open Transaction History I then did a reconcile on sales. This seemed to clean up dead orphans on that invoices and we just re-entered the missing invoices. Casey "KC" wr...

Outlook 2003 auto send/receive
When I start Outlook, it does NOT go out and get waiting e- mails. I have to manually click it to do the job. In Tools, Options, I've made sure that the box is checked to send/receive when Outloomis started...but it doesn't. Also, when I tried to get online help, the MS system would NOT accept my product ID, no matter how I tried. Any thoughts? There is no such setting in Outlook. You need to set an automatic Send/Receive interval. -- Russ Valentine [MVP-Outlook] "sam k" <anonymous@discussions.microsoft.com> wrote in message news:1698001c41c99$f2e4ee40$a601280a@p...

Exchange 2000
When I reboot one of my Exchange 2000/SP3 servers (Windows 2000/SP4), I get an email from WIN@SERVERNAME, with a subject of "Error" on "Servername" "SERVERNAME" has reported a "Error". Reported status is: Queues - "Unknown" Drives - "Unknown" Services - "Error" Memory - "Unknown" CPU - "Unknown" WMI is running. The wbemcore.log (partially shown below) does list several lines with error 80041002. I looked that error up in the MS KB and found article KB316753, but the version of the wlbsprov.dll that...

Diff in running VBScripts-WMI routuines from WinTaskSch & SQL Agen
Is there a difference in running VBScripts-WMI routuines from WinTaskScheduler & SQLAgent. Because what is running all fine with cscript & WinTaskScheduler suffers with unlrelated errors when tried with a SQL JOB. Any insights. -- -yusuf ...

Send receive only works sometimes.
When in outlook 2002 Items will not send, after pressing Send/Receive several times the mail then sends. Any Ideas on this one? Thanks, Paul ...

email stuck in outbox: receiving error message
My emails are stuck in my outbox. They do send to the recepient, but never switch over to my sent box. Go to the 'Tools' menu, then options. In the first / 'Preferences' window that appears (tab shown at the top) click on 'E-mail Options'. Make sure there's a check mark in the box that says 'Save copies of messages in Sent Items folder'. If this is already done, you might want to note the exact text of the error message and do a search in the Microsoft Knowledge Base. >-----Original Message----- >My emails are stuck in my outbox. They do s...

cant send email but receive
WHY cannt i send email please help How would we know? What happens when you try? -- Bruce Hagen MS-MVP [Mail] Imperial Beach, CA "Downstairs" <bardel41@microsoft.com> wrote in message news:O23Ql0fnKHA.1552@TK2MSFTNGP05.phx.gbl... > WHY cannt i send email please help Umm-mm . . . Give us a few clues to work with . . . . . like, who is your email provider (ONLY the part after the @ symbol in your e-address), your ISP, and copy / paste the entire error message. "Downstairs" <bardel41@microsoft.com> wrote in ...

Null Is Null
I've got a text box in a report that's not returning properly. Here's its Control Source: =[Reports]![rptFGPackConfigsPKWeights]![srptFGPKConfigsSUPK_totalwt]! [SumWtg]+IIf(IsNull([Reports]![rptFGPackConfigsPKWeights]! [srptFGPKConfigsTPK_totalwt]![SumWtg]),Null,"") This returns #Error. It's definitely my IIf statement as it returns properly when removed however there are times when [srptFGPKConfigsTPK_totalwt].[SumWtg] will be null. In fact, this subreport will not appear if no records exist. I suspect that this is the problem. How can I write this Control Source t...

Forwarding mail received from a receive-only account to a send/receive account
I am trying to setup Outlook 2002 (SP3) to pop mail from one of my accounts. This account (Account1)is receive-only, that is in the Send/Receive group settings I have setup the account to "Receive mail items" but not to "Send mail items". I have existing rules that forward mail that I get from certain people, and I have another account (Account2) which I have setup to send and receive. However, when I receive mail from Account1 that matches the rules, the mail gets forwarded(sent) using Account1 even though the Send/Receive group settings say the account is receive-only. ...

Export the Accounts Receivable?
Is there a way to export my accounts receivable? It doesn't show up in the accounts list in my MS Money 2003 Deluxe and Business. thanks, ...

stop adaptor routine in storport miniport
hi all, i am wrintin a storport miniport driver. it successfully loads and works fine. but if try to stop it from device manager (right click on device in device manager and click on disable ) it hangs. i am getting control in adaptor control for stop adaptor and query request. can anybody tell me what i need to take care to successfully stop the device? thanks, Hitesh On Aug 19, 2:26=A0am, hitesh <hitesh.ughr...@gmail.com> wrote: > hi all, > i am wrintin a storport miniport driver. > it successfully loads and works fine. but if try to stop it from > device ma...

Not receiving messages correctly
I have a Microsoft Outlook XP client that is used to get mail from an Exchange 5.5 server that is not receiving meesages in a timely manner. If I send a message to the mailbox it takes an average of 20 minutes to get delivered. Doing a manual send/receive does not help. The message only comes through when I change the message that I am viewing in the preview screen by cycling through the messages with the arrow keys. The message that is sent can be seen when logging into webmail though. Has anyone heard of this before? All of the service packs and latest updates are installed, and they have...

outlook 2003 DOES not receive external emails
Hi , One of our outlook 2003 clients does not receive external emails , connect to our SBS 2003 server Do you have any Message Restrictions set in Active Directory Users and Computers for this user? Hal -- Hal Hostetler, CPBE -- hhh@kvoa.com Senior Engineer/MIS -- MS MVP-Print/Imaging -- WA7BGX http://www.kvoa.com -- "When News breaks, we fix it!" KVOA Television, Tucson, AZ. NBC Channel 4 Live at Hot Licks - www.badnewsbluesband.com "victronics" <victronics@discussions.microsoft.com> wrote in message news:25321767-2414-4347-A8FD-B980DAD35EB0@microsoft.com...

Receiving contacts in Outlook format
My boss and I often send contacts to each other in Outlook Format. The problem is that he receives mine without a problem but his always show up for me without the 'contact' info, just the notes section. I've tried sending in rich text but that didn't work and as I mentioned, he always gets mine and I send out in HTML Could there be a set up issue with my Outlook? I'm using 2007 and Vista. Try inserting the Contact as an Outlook Item in an RTF message and see what happens. Make sure neither of you is using email anti-virus email scanning. -- Russ Val...

Visio Walls and Dimensioning Help Request
I am new to Visio and I am having problems getting wall lengths correct and placing items like columns measured off a wall located correctly. I think part of the problem is my not understanding glue points and how do I tell exactly where they are measurably located, and if I need to extend wall lengths to compensate for wall thicknesses and glue points. Any help will be greatly appreciated. tia Ridgerunner Have a look at the View > Size & Position dialog. It allows you to specify angles and lengths for shapes. -- Hope this helps, Chris Roth Visio MVP More Visio shapes, a...

Send / Receive Progress
Can anyone tell me how to stop the Send / Receive Progress window from appearing? I've checked the box that says Do not show during send / receive but it still pops up all the time. I'm using Windows XP Pro with Outlook 2002. ...

UMDF and Storport
Hi all, I'm attempting to come up to speed on KMDF and UMDF driver development. I'm looking at developing a virtual disk/RAID driver. It seems that Storport fits this scenario perfectly, please correct me if I am wrong. My question is, are you able to write a Storport driver using UMDF? I have not found anything explicitly saying that you must use KMDF. Thanks, Joe No, you cannot use either UMDF. For a virtual storport, you can create a "thin" storport with a driver below it that is KMDF to do the real work. There is an excellent series of articles on v...

Urgent help request: How to find Journal Entry of Inventory Adjust
Hi folks, I have a urgent help request and question. How do I find out the Journal Entry number for an Inventory Adjustment transaction that did not post to G/L? You know when you post an Inventory Adjustment Batch, if you don't check the box "Post to General Ledger" the inventory adjustment will not post in G/L. So how do we find out what the Journal Entry number should have been? Here's the catch, don't have access to SQL Server, so we need a way to find out within GP. Is this possible? Please help...THANKS It sounds like you are trying to find out whether an in...

Send receive operation failed
I have an error that comes up when i hit send/receive. It says 'operation failed'. There is nothing else with the message, just an ok button. I have tried microsoft knowledge base article http://support.microsoft.com/default.aspx?scid=kb;en- us;312354 but that doesn't help, it fixes the error that says 'The operation failed. An object could not be found.' but not mine, i tried it and it didn't work. I am using windows 2000 and office xp. This error has only been happening recently. Can anyone help me? Thanks, Matt ...

Problems with CAsyncSocket::Receive
I'm having problems with my CAsyncSocket derived class. I'm using TCP and the problem manifests itself on the client side. Sometimes my OnReceive will get called and when my handler calls Receive, will return with a zero return value. Microsoft help states "If the connection has been closed, it returns 0." When this happens, what should I do? Is there cleanup I should do? I've tried calling CAsyncSocket::Close. My code then waits 5 seconds and then attempts to reconnect. It seems to get into a funny state and all communications grinds to a halt. What should I do?...

Attachments get renamed when received
receive e-mails with attachments that get renamed. Example: User A sends e-mail with attachemnt "test.xls" User B receives attachment as "test.xls 11 26 03 9 29" The only fix that has been found is to delete the time stamp after the .xls. Any Ideas? ...

help! first timer adding a new acct
help! looking for a little wisdom here-- my fiance and i are trying to combine budgets, and he's already loaded his financial info into Money. i'm digging into it for the first time, and i'm wondering, do i set myself up as a separate file, or somehow add my info to his? we have this crazy idea that by tracking our finances, we MIGHT get together a budget, and MIGHT just be able to compile a wedding budget. thank you! Here's the lowdown on the two choices you've already identified: 1) Joint file: great for managing your expenses jointly, but you will both hav...

Storport Synchronization for NUMA
I found the following comment in a presentation on storport driver changes for NUMA systems: ----------------------------------------------------------------------------------------- When using concurrent channels, Storport does not synchronize across channels. The miniport must implement any necessary synchronization Calls to Storport synchronization routines will have undefined behavior ------------------------------------------------------------------------------------------ I thought it was generally not recommended to have the storport driver acquire a kernel spinlock. What...