From: James Smart <James.Smart@Emulex.Com>
To: Siva Kodiganti <kodiganti@gmail.com>
Cc: linux-scsi@vger.kernel.org, siva@3leafsystems.com
Subject: Re: scsi layer interfaces for hypervisors
Date: Thu, 20 Mar 2008 10:28:19 -0400 [thread overview]
Message-ID: <47E27483.3080604@emulex.com> (raw)
In-Reply-To: <b8c77ef10803192257w5629e931y28eed9ab32ed02a9@mail.gmail.com>
Siva,
I'm curious to hear how you position this against the pvscsi effort
going on in the Xen world.
-- james s
Siva Kodiganti wrote:
> Hello Linux community,
>
> A Project page for Virt_HBA is created on source forge.
> https://sourceforge.net/projects/npivhba
>
> Project Virt_HBA is targeted for a providing patch for
> Linux kernels to provide set of scsi layer interfaces to
> aid Hypervisors in Linux to export Scsi Hosts to Guest
> VMs. Using these interfaces Hypervisors could export
> Scsi_Host of a virtual hba emulated by HBA hardware to
> Guest VMs. FC, and FCOE (may) have support for Nport
> Virtualization, a FW/HW mechanism to emulate multiple
> hbas(nports) using a single HBA HW. Qlogic, and
> Emulex have support for FC NPIV. With this mechanism,
> Hypervisor would be capable of mapping appropriate
> Guest VM's shost queuecommand to underlying NPIV host's
> queue_command, and other hostt relevant entry points(one
> to one mapping). This could also provide a means of
> security for luns exported through NPIV host to be
> visible for appropriate Guest OS, hiding from HostOS.
>
> Scsi Layer interfaces:
>
> Hypervisor's registration with scsi layer
>
> scsi_register_hypertt(xn_hostt, xsize);
> xsize is size of private structure maintained by
> hypervisor per npiv host.
>
> struct scsi_hyper_hostt xn_hostt {
> .hyp_module = "xn",
> .hyp_psize = size of( xhost);
> .hyp_alloc_vhost = xn_alloc_vhost,
> .hyp_add_vhost = xn_add_vhost,
> .hyp_remove_vhost = xn_remove_vhost,
> .hyp_trans_func = xn_trans_vhost,
> .hyp_async_notifier = xn_async_ntfr,
> .hyp_reboot_notifier = xn_reboot_ntfr,
> };
>
> Scsi_Host {
>
> /* flag for FC or FCOE hw or fw hba virtulization */
> unsigned virt_host:1;
>
> }
>
> scsi_alloc_host(), scsi_add_host(), and scsi_remove_host()
> interfaces notify registered hypervisor about FC/FCOE
> virtual Scsi_Host. scsi_alloc_host() would allocate private
> data area per scsi_host for registered hypervisors, which
> export to Guest VMs.
>
> Hypervisors uses these virtual hosts' lld driver hostt entry
> points to queue,abort,etc scsi commands to HBA driver directly
> bypassing Host BlK, SD layers.
>
> Thanks,
> Siva
> --
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
next prev parent reply other threads:[~2008-03-20 14:28 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-20 5:57 scsi layer interfaces for hypervisors Siva Kodiganti
2008-03-20 14:28 ` James Smart [this message]
2008-03-20 17:38 ` Siva Kodiganti
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=47E27483.3080604@emulex.com \
--to=james.smart@emulex.com \
--cc=kodiganti@gmail.com \
--cc=linux-scsi@vger.kernel.org \
--cc=siva@3leafsystems.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.