[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] [Patch 4/7] pvSCSI driver



> > +int do_comfront_cmd_done(struct comfront_info *);
> > +
> > +static inline int GET_ID_FROM_FREELIST(struct comfront_info *info)
> Why is this all-caps?  It's not a macro.

That would just have been cut&pasted from the linux sources... I did the
same in the windows PV drivers :)

> > +   for (i = info->ring.rsp_cons; i != rp; i++) {
> > +
> > +           ring_res = RING_GET_RESPONSE(&info->ring, i);
> > +
> > +           if (info->shadow[ring_res->rqid].cmd ==
VSCSIIF_CMND_SCSI) {
> > +                   if (scsifront_cmd_done(info, ring_res)) {
> > +                           BUG();
> > +                   }
> > +           } else {
> > +                   __sync_cmd_done(info, ring_res);
> Can this ever happen?

Well... a rogue frontend could pass all manner of crap to the backend.
Best to check for these things. The other option for VSCSIIF_CMND_SCSI
is a reset, but there is some debate as to whether a frontend using a
single device on a physical scsi bus should be allowed to initiate a bus
reset...

James

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.