30.09.2019 19:00, Kevin Wolf wrote: > Am 30.09.2019 um 17:19 hat Vladimir Sementsov-Ogievskiy geschrieben: >> 30.09.2019 18:12, Kevin Wolf wrote: >>> Am 24.09.2019 um 22:08 hat Vladimir Sementsov-Ogievskiy geschrieben: >>>> Here is introduced ERRP_FUNCTION_BEGIN macro, to be used at start of >>>> functions with errp parameter. >>> >>> A bit of bike shedding, but FOO_BEGIN suggests to me that a FOO_END will >>> follow. Can we find a different name, especially now that we won't use >>> this macro in every function that uses an errp, so even the "errp >>> function" part isn't really correct any more? >>> >>> How about ERRP_AUTO_PROPAGATE? >> >> I have an idea that with this macro we can (optionally) get the whole call >> stack >> of the error and print it to log, so it's good to give it more generic name, >> not >> limited to propagation.. > > Hm, what's the context for this feature? > > The obvious one where you want to have a stack trace is &error_abort, > but that one crashes, so you get it automatically. If it's just a normal > error (like a QAPI option contains an invalid value and some function > down the call chain checks it), why would anyone want to know what the > call chain in the QEMU code was? >
When I have bug from testers, call stack would be a lot more descriptive, than just an error message. We may add trace point which will print this information, so with disabled trace point - no extra output. -- Best regards, Vladimir