Solved

Why HWStartIO method is called synchronously?

Posted on 2013-01-24
1
533 Views
Last Modified: 2013-01-25
Hi,

With Storport driver,  the routine HWBuildIO is called  wihtout synchronization i.e. without taking any locks. Hence this routine gets invoked paralelly for multiple commands.

However the routine HWStartIO is only called asynchronously. I.e. A spin lock is acquired by storport before calling this routine and is it released only after completing the execution of this routine. I understood from an article that this is done to avoid the interrupts taking the control away from this routine while this routine is executing.

My question is why it is important not to allow the control to be preempted by the ISR while the HWStartIO is executing? What consequences it will have to allow the control to be preempted in the middle of StartIO? Can i get a practical example anywhere?
0
Comment
Question by:raj_ksrt
1 Comment
 
LVL 47

Accepted Solution

by:
dlethe earned 500 total points
ID: 38817117
I'll give you a good practical example.  Yesterday I was writing code on a win2k12 host that had 400+ disk drives attached, with multipathing and multiple initiators. Maybe 1200 targets.
Just imagine what would happen if they all tried to do all of their I/O at the same time. HWStartIO is designed for one I/O request, as it gets called once per I/O request.

It would simply be unworkable to allow multiple I/O requests to be in various phases of operation at the same time using multiple programs/threads.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
disks not visible after OS upgrade linux 5 106
*** Hardware Malfunction Dell T610 7 70
HP DL360 G6 smart array 5 48
File Server backup 7 58
INTRODUCTION The purpose of this document is to demonstrate the Installation and configuration, of the HP EVA 4400 SAN Storage. The name , IP and the WWN ID’s used here are not the real ones. ABOUT THE STORAGE For most of you reading this, you …
Every server (virtual or physical) needs a console: and the console can be provided through hardware directly connected, software for remote connections, local connections, through a KVM, etc. This document explains the different types of consol…
Windows 8 comes with a dramatically different user interface known as Metro. Notably missing from the new interface is a Start button and Start Menu. Many users do not like it, much preferring the interface of earlier versions — Windows 7, Windows X…
With the advent of Windows 10, Microsoft is pushing a Get Windows 10 icon into the notification area (system tray) of qualifying computers. There are many reasons for wanting to remove this icon. This two-part Experts Exchange video Micro Tutorial s…

867 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now