Lines Matching refs:e_info

809  * @e_info: pointer to error info
812 static int add_error_device(struct aer_err_info *e_info, struct pci_dev *dev)
814 if (e_info->error_dev_num < AER_MAX_MULTI_ERR_DEVICES) {
815 e_info->dev[e_info->error_dev_num] = pci_dev_get(dev);
816 e_info->error_dev_num++;
825 * @e_info: pointer to reported error info
827 static bool is_error_source(struct pci_dev *dev, struct aer_err_info *e_info)
837 if ((PCI_BUS_NUM(e_info->id) != 0) &&
840 if (e_info->id == ((dev->bus->number << 8) | dev->devfn))
844 if (!e_info->multi_error_valid)
868 if (e_info->severity == AER_CORRECTABLE) {
883 struct aer_err_info *e_info = (struct aer_err_info *)data;
885 if (is_error_source(dev, e_info)) {
887 if (add_error_device(e_info, dev)) {
894 if (!e_info->multi_error_valid)
903 * @e_info: including detailed error information such like id
909 * struct aer_err_info pointed by @e_info properly. This function must fill
910 * e_info->error_dev_num and e_info->dev[], based on the given information.
913 struct aer_err_info *e_info)
919 e_info->error_dev_num = 0;
922 result = find_device_iter(dev, e_info);
926 pci_walk_bus(parent->subordinate, find_device_iter, e_info);
928 if (!e_info->error_dev_num) {
929 u8 bus = e_info->id >> 8;
930 u8 devfn = e_info->id & 0xff;
1100 static inline void aer_process_err_devices(struct aer_err_info *e_info)
1105 for (i = 0; i < e_info->error_dev_num && e_info->dev[i]; i++) {
1106 if (aer_get_device_error_info(e_info->dev[i], e_info))
1107 aer_print_error(e_info->dev[i], e_info);
1109 for (i = 0; i < e_info->error_dev_num && e_info->dev[i]; i++) {
1110 if (aer_get_device_error_info(e_info->dev[i], e_info))
1111 handle_error_source(e_info->dev[i], e_info);
1124 struct aer_err_info e_info;
1133 e_info.id = ERR_COR_ID(e_src->id);
1134 e_info.severity = AER_CORRECTABLE;
1137 e_info.multi_error_valid = 1;
1139 e_info.multi_error_valid = 0;
1140 aer_print_port_info(pdev, &e_info);
1142 if (find_source_device(pdev, &e_info))
1143 aer_process_err_devices(&e_info);
1147 e_info.id = ERR_UNCOR_ID(e_src->id);
1150 e_info.severity = AER_FATAL;
1152 e_info.severity = AER_NONFATAL;
1155 e_info.multi_error_valid = 1;
1157 e_info.multi_error_valid = 0;
1159 aer_print_port_info(pdev, &e_info);
1161 if (find_source_device(pdev, &e_info))
1162 aer_process_err_devices(&e_info);