A system and method for enabling multi-path functionality between a host
bus adapter (HBA) in a host computer of a storage system and at least one
storage device is disclosed. The host computer includes a processor and
associated memory, and an operating system including a PnP manager that
maintains a logical device stack for the storage device. An HBA-specific
filter driver intercepts responses from the underlying HBA driver to
specified PnP requests. These responses are modified to prevent standard
Microsoft operating system SCSI class device drivers from being loaded for
devices attached to the HBA. Instead, the modified responses cause a
multi-path SCSI class device driver to be loaded. The filter driver also
monitors the status of the paths to a device and, upon request, provides
status information to the multi-path SCSI class device driver. The
multi-path SCSI class driver may use this status information to decide
whether to make a particular path a primary path. The actions required to
make a path a primary path may be performed by the filter driver, e.g.,
through a function call to the filter driver initiated by the multi-path
SCSI driver.
Ένα σύστημα και μια μέθοδος για την πολλαπλών διαδρομών λειτουργία μεταξύ ενός προσαρμοστή λεωφορείων οικοδεσποτών (HBA) σε έναν οικοδεσπότη υπολογιστή ενός συστήματος αποθήκευσης και τουλάχιστον μιας συσκευής αποθήκευσης αποκαλύπτονται. Ο οικοδεσπότης υπολογιστής περιλαμβάνει έναν επεξεργαστή και μια σχετική μνήμη, και ένα λειτουργικό σύστημα συμπεριλαμβανομένου ενός διευθυντή PnP που διατηρεί έναν λογικό σωρό συσκευών για τη συσκευή αποθήκευσης. Ένας χψα-συγκεκριμένος οδηγός φίλτρων παρεμποδίζει τις απαντήσεις από τον ελλοχεύοντα οδηγό HBA στα διευκρινισμένα αιτήματα PnP. Αυτές οι απαντήσεις τροποποιούνται για να αποτρέψουν τους τυποποιημένους οδηγούς συσκευών κατηγορίας λειτουργικών συστημάτων SCSI της Microsoft από τη φόρτωση για τις συσκευές που συνδέονται με το HBA. Αντ' αυτού, οι τροποποιημένες απαντήσεις αναγκάζουν έναν πολλαπλών διαδρομών οδηγό συσκευών κατηγορίας SCSI για να φορτωθούν. Ο οδηγός φίλτρων ελέγχει επίσης τη θέση των πορειών σε μια συσκευή και, κατόπιν αιτήσεως, παρέχει τις πληροφορίες θέσης στον πολλαπλών διαδρομών οδηγό συσκευών κατηγορίας SCSI. Ο πολλαπλών διαδρομών οδηγός κατηγορίας SCSI μπορεί να χρησιμοποιήσει αυτές τις πληροφορίες θέσης για να αποφασίσει εάν για να κάνει μια ιδιαίτερη πορεία μια αρχική πορεία. Οι ενέργειες που απαιτούνται για να κάνουν μια πορεία μια αρχική πορεία μπορούν να εκτελεσθούν από τον οδηγό φίλτρων, π.χ., μέσω μιας πρόσκλησης λειτουργίας στον οδηγό φίλτρων που αρχίζει από τον πολλαπλών διαδρομών οδηγό SCSI.