> -----Original Message----- > From: Dan Carpenter [mailto:dan.carpenter@xxxxxxxxxx] > Sent: Friday, December 11, 2015 2:25 AM > To: KY Srinivasan <kys@xxxxxxxxxxxxx> > Cc: gregkh@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; > devel@xxxxxxxxxxxxxxxxxxxxxx; ohering@xxxxxxxx; > jbottomley@xxxxxxxxxxxxx; hch@xxxxxxxxxxxxx; linux-scsi@xxxxxxxxxxxxxxx; > apw@xxxxxxxxxxxxx; vkuznets@xxxxxxxxxx; jasowang@xxxxxxxxxx; > martin.petersen@xxxxxxxxxx > Subject: Re: [PATCH 2/4] scsi: storvsc: Properly support Fibre Channel devices > > On Thu, Dec 10, 2015 at 04:14:18PM -0800, K. Y. Srinivasan wrote: > > + ret = vmbus_sendpacket(device->channel, vstor_packet, > > + (sizeof(struct vstor_packet) - > > + vmscsi_size_delta), > > + (unsigned long)request, > > + VM_PKT_DATA_INBAND, > > + > VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); > > + > > + if (ret != 0) > > + goto cleanup; > > + > > + t = wait_for_completion_timeout(&request->wait_event, 5*HZ); > > + if (t == 0) { > > + ret = -ETIMEDOUT; > > + goto cleanup; > > + } > > + > > + if (vstor_packet->operation != VSTOR_OPERATION_COMPLETE_IO > || > > + vstor_packet->status != 0) > > + goto cleanup; > > "cleanup" is a misleading name because it doesn't clean up anything. > Do nothing gotos are a pain in the butt and they always introduce bugs. > For example, you appear to have forgotten to set the error code. But > because it's a do-nothing goto it's ambiguous so perhaps returning > success was intended. > > Empirically this style of coding causes bugs. It does not prevent them. > It is a bad style if you believe in measuring, evidence and science. Thanks Dan. I will fix this and resend. K. Y -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html