[dpdk-dev] [PATCH V4 5/9] bus: add helper to handle sigbus
Guo, Jia
jia.guo at intel.com
Fri Jun 29 13:23:13 CEST 2018
hi, konstantin
On 6/29/2018 6:51 PM, Ananyev, Konstantin wrote:
>> +int
>> +rte_bus_sigbus_handler(const void *failure_addr)
>> +{
>> + struct rte_bus *bus;
>> + int old_errno = rte_errno;
>> + int ret = 0;
>> +
>> + rte_errno = 0;
>> +
>> + bus = rte_bus_find(NULL, bus_handle_sigbus, failure_addr);
>> + if (bus == NULL) {
>> + RTE_LOG(ERR, EAL, "No bus can handle the sigbus error!");
>> + ret = -1;
>> + } else if (rte_errno != 0) {
>> + RTE_LOG(ERR, EAL, "Failed to handle the sigbus error!");
>> + ret = -1;
>> + }
>> +
>> + /* if sigbus not be handled, return back old errno. */
>> + if (ret)
>> + rte_errno = old_errno;
> Hmm, not sure why we need to set/restore rte_errno here?
restore old_errno just use to let caller know that the generic sigbus
still not handler by bus hotplug handler, that involve find a bus
handle but failed and can not find a hander, and can corresponding use
the previous sigbus handler to process it.
that is also unwser your question in other patch. do you think that make
sense?
>> +
>> + return ret;
>> +}
More information about the dev
mailing list