2016-03-07 16:58+0100, Paolo Bonzini:
>> +    case AVIC_INCMP_IPI_ERR_INV_TARGET:
>> +            pr_err("%s: Invalid IPI target (icr=%#08x:%08x, idx=%u)\n",
>> +                   __func__, icrh, icrl, index);
>> +            BUG();
>> +            break;
>> +    case AVIC_INCMP_IPI_ERR_INV_BK_PAGE:
>> +            pr_err("%s: Invalid bk page (icr=%#08x:%08x, idx=%u)\n",
>> +                   __func__, icrh, icrl, index);
>> +            BUG();
>> +            break;
> 
> Please use WARN(1, "%s: Invalid bk page (icr=%#08x:%08x, idx=%u)\n",
> __func__, icrh, icrl, index) (and likewise for invalid target) instead
> of BUG().

I think that if we hit one of these, then WARNs would just flood the
log.  I'd prefer WARN_ONCE on AVIC_INCMP_IPI_ERR_INV_BK_PAGE.
(Btw. aren't icr and idx are pointless on this error?  and the function
 name should be printed by WARN.)

Invalid target is triggerable by the guest (by sending IPI to a
non-existent LAPIC), so warning log level seems too severe.
pr_info_ratelimited() or nothing would be better.

Reply via email to