From: David S. Miller Date: Wed, 24 Jan 2018 21:01:11 +0000 (-0500) Subject: Merge branch 'net-sched-propagate-extack-to-cls-offloads-on-destroy-and-only-with... X-Git-Tag: v4.16-rc1~123^2~63 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=131f1ed317d2ca92a1b7ada4e658cc2a3a0e4ce6;p=linux.git Merge branch 'net-sched-propagate-extack-to-cls-offloads-on-destroy-and-only-with-skip_sw' Jakub Kicinski says: ==================== net: sched: propagate extack to cls offloads on destroy and only with skip_sw This series some of Jiri's comments and the fact that today drivers may produce extack even if there is no skip_sw flag (meaning the driver failure is not really a problem), and warning messages will only confuse the users. First patch propagates extack to destroy as requested by Jiri, extack is then propagated to the driver callback for each classifier. I chose not to provide the extack on error paths. As a rule of thumb it seems best to keep the extack of the condition which caused the error. E.g. err = this_will_fail(arg, extack); if (err) { undo_things(arg, NULL /* don't pass extack */); return err; } Note that NL_SET_ERR_MSG() will ignore the message if extack is NULL. I was pondering whether we should make NL_SET_ERR_MSG() refuse to overwrite the msg, but there seem to be cases in the tree where extack is set like this: err = this_will_fail(arg, extack); if (err) { undo_things(arg, NULL /* don't pass extack */); NL_SET_ERR_MSG(extack, "extack is set after undo call :/"); return err; } I think not passing extack to undo calls is reasonable. v2: - rename the temporary tc_cls_common_offload_init(). ==================== Signed-off-by: David S. Miller --- 131f1ed317d2ca92a1b7ada4e658cc2a3a0e4ce6