(2010/04/08 15:56), Kenji Kaneshige wrote: > Hidetoshi Seto wrote: >> - memset(e_info, 0, sizeof(struct aer_err_info)); > > I think we need to clear not only the error_dev_num field but also the > other > fields in struct aer_err_info. For example, I think the multi_error_valid > field needs to be cleared. Is it cleared somewhere? Oops, you are right. Now caller (who allocates aer_err_info) is responsible to init 3 fields; id, severity, and multi_error_valid. The find_source_device() fills array dev[] and error_dev_num. All rest fields are filled by get_device_error_info() while for-each-device iteration. But... >> + if (e_src->status & PCI_ERR_ROOT_MULTI_COR_RCV) >> + e_info->multi_error_valid = 1; >> + I should care the "else" path of caller here. Otherwise I should do some work for evil aer_err_info... Anyway, I'll fix it. Thanks, H.Seto -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html