[PATCH v2 07/13] powerpc/eeh: Clean up pci_ers_result handling

Michael Ellerman mpe at ellerman.id.au
Mon Jun 4 19:43:14 AEST 2018


Sam Bobroff <sbobroff at linux.ibm.com> writes:

> On Sat, Jun 02, 2018 at 01:40:46AM +1000, Michael Ellerman wrote:
>> Sam Bobroff <sbobroff at linux.ibm.com> writes:
>> 
>> > As EEH event handling progresses, a cumulative result of type
>> > pci_ers_result is built up by (some of) the eeh_report_*() functions
>> > using either:
>> > 	if (rc == PCI_ERS_RESULT_NEED_RESET) *res = rc;
>> > 	if (*res == PCI_ERS_RESULT_NONE) *res = rc;
>> > or:
>> > 	if ((*res == PCI_ERS_RESULT_NONE) ||
>> > 	    (*res == PCI_ERS_RESULT_RECOVERED)) *res = rc;
>> > 	if (*res == PCI_ERS_RESULT_DISCONNECT &&
>> > 	    rc == PCI_ERS_RESULT_NEED_RESET) *res = rc;
>> > (Where *res is the accumulator.)
>> >
>> > However, the intent is not immediately clear and the result in some
>> > situations is order dependent.
>> >
>> > Address this by assigning a priority to each result value, and always
>> > merging to the highest priority. This renders the intent clear, and
>> > provides a stable value for all orderings.
>> >
>> > Signed-off-by: Sam Bobroff <sbobroff at linux.ibm.com>
>> > ---
>> > ====== v1 -> v2: ======
>> >
>> > * Added the value, and missing newline, to some WARN()s.
>> > * Improved name of merge_result() to pci_ers_merge_result().
>> > * Adjusted the result priorities so that unknown doesn't overlap with _NONE.
>> 
>> These === markers seem to have confused patchwork, they ended up in the
>> patch, and then git put them in the changelog.
>> 
>> http://patchwork.ozlabs.org/patch/920194/
>> 
>> The usual format is just something like:
>> 
>> v2 - Added the value, and missing newline, to some WARN()s.
>>    - Improved name of merge_result() to pci_ers_merge_result().
>>    - Adjusted the result priorities so that unknown doesn't overlap with _NONE.
>> 
>> cheers
>
> Oh! I'll change it!

Thanks.

cheers


More information about the Linuxppc-dev mailing list