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

Re: [Xen-devel] [PATCH] xen/xen-scsiback: Need go to fail after xenbus_dev_error()

On 09/29/2014 11:31 AM, Chen Gang wrote:
On 9/29/14 16:41, Jan Beulich wrote:
On 29.09.14 at 06:32, <JGross@xxxxxxxx> wrote:
On 09/26/2014 06:38 PM, Chen Gang wrote:
When failure occurs, after xenbus_dev_error(), need go to fail to let
upper caller know about it.

Signed-off-by: Chen Gang <gang.chen.5i5j@xxxxxxxxx>
   drivers/xen/xen-scsiback.c | 4 +++-
   1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/xen/xen-scsiback.c b/drivers/xen/xen-scsiback.c
index 847bc9c..3e430e1 100644
--- a/drivers/xen/xen-scsiback.c
+++ b/drivers/xen/xen-scsiback.c
@@ -1222,8 +1222,10 @@ static int scsiback_probe(struct xenbus_device *dev,

        err = xenbus_printf(XBT_NIL, dev->nodename, "feature-sg-grant", "%u",
-       if (err)
+       if (err) {
                xenbus_dev_error(dev, err, "writing feature-sg-grant");
+               goto fail;
+       }

        xenbus_switch_state(dev, XenbusStateInitWait);
        return 0;

Hmm, not testing for failure was on purpose. Advertising this feature
is just for tuning purposes, not mandatory.

OTOH it would really be a strange error if this xenbus_printf() fails
but all other operations are working, and signaling an error at the
time when it first shows up is a good thing. So:

I disagree - failure to announce optional features should not lead to
general failure. And this should be consistent across drivers; for
existing examples see xen_blkbk_flush_diskcache() and

During scsiback_probe(), can we sure that "feature-sg-grant" is optional
feature? For me, only according to its name, I guess not: it is about
security which is always necessary in kernel (although SG_ALL).

It is optional. Otherwise the interface would be broken, as I've added
this feature recently and "old" clients (pre 3.18) don't know about it.

The feature is NOT about security, but about capability to support
larger SCSI requests than the old interface did.


Xen-devel mailing list



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