Re: [PATCH] SCSI driver for VMware's virtual HBA - V4.

From: Anthony Liguori
Date: Wed Sep 09 2009 - 18:12:35 EST


Alok Kataria wrote:
I see your point, but the ring logic or the ABI that we use to
communicate between the hypervisor and guest is not shared between our
storage and network drivers. As a result, I don't see any benefit of
separating out this ring handling mechanism, on the contrary it might
just add some overhead of translating between various layers for our
SCSI driver.

But if you separate out the ring logic, it allows the scsi logic to be shared by other paravirtual device drivers. This is significant and important from a Linux point of view.

There is almost nothing vmware specific about the vast majority of your code. If you split out the scsi logic, then you will receive help debugging, adding future features, and improving performance from other folks interested in this. In the long term, it will make your life much, much easier by making the driver relevant to a wider audience :-)

Having said that, I will like to add that yes if in some future
iteration of our paravirtualized drivers, if we decide to share this
ring mechanism for our various device drivers this might be an
interesting proposition.

I am certainly not the block subsystem maintainer, but I'd hate to see this merged without any attempt at making the code more reusable. If adding the virtio layering is going to somehow hurt performance, break your ABI, or in some way limit you, then that's something to certainly discuss and would be valid concerns. That said, I don't think it's a huge change to your current patch and I don't see any obvious problems it would cause.

Regards,

Anthony Liguori
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/