On Thu, Jan 7, 2010 at 4:55 PM, Li Zefan <lizf@xxxxxxxxxxxxxx> wrote: > > Use multi labels is much better: I disagree with that - in the absence of a language that can do proper destructor-based cleanup (i.e. a strictly controlled subset of C++ :-) ) I think it's clearer to have a single failure path where you can clean up anything that needs to be cleaned up, without excessive dependencies on exactly when the failure occurred. Changes then become less error-prone. Paul > > label4:: > fput(cfile); > label3: > eventfd_ctx_put(event->eventfd); > label2: > fput(efile); > label1: > kfree(event); > > compared to: > > +fail: > + if (!IS_ERR(cfile)) > + fput(cfile); > + > + if (event && event->eventfd && !IS_ERR(event->eventfd)) > + eventfd_ctx_put(event->eventfd); > + > + if (!IS_ERR(efile)) > + fput(efile); > + > + kfree(event); > > -- > 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/ > _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers