Re: [PATCH for-2.6.35] virtio-pci: disable msi at startup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jun 23, 2010 at 06:35:55PM +0300, Avi Kivity wrote:
> On 06/23/2010 06:26 PM, Michael S. Tsirkin wrote:
>>
>>
>>>>
>>>>        
>>>>>>> Shouldn't a reset be equivalent to power cycling?
>>>>>>>
>>>>>>>
>>>>>>>              
>>>>>> If we did this, driver would need to restore registers
>>>>>> such as BAR etc.
>>>>>>
>>>>>>
>>>>>>            
>>>>> We could save/restore the registers we care about.
>>>>>
>>>>>          
>>>> It seems easier to clear registers we care about.
>>>>        
>>> We know the registers we care about, we don't know the ones we don't.
>>>      
>> If/when we use more registers, we can update driver to clear them on start.
>>    
>
> The kdump kernel may not load drivers for those extra devices.

Then we don't care about clearing them?

>>> I'm talking about FLRing all cards, not just those you want to use.
>>>      
>> reset using FLR/PM is complex because of the need to save/restore
>> config space. Doing this on a crashing kernel sounds scary.
>>    
>
> Well, you only need to save/restore for the devices you use.  The rest  
> you reset and forget.
>
> I don't really see why copying some config space is crazy.

Maybe not crazy, but complex.  Look at pci_restore_state.
Anyway, if kdump wants to do this, it's a question of
calling pci_reset_function.

>>>>     It's also too late
>>>> now: changing behaviour will break old drivers.
>>>>
>>>>        
>>> Why?  the FLR is triggered by the guest kernel, so all drivers will be
>>> aware it was FLRed.
>>>      
>> Not for FLR. Too late to reset on PA write.
>>
>>    
>
> What's PA write?

thats how we reset virtio today: write 0 to PA register.

> -- 
> error compiling committee.c: too many arguments to function
_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/virtualization


[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux