[PATCH] paravirt.h

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

 



Rusty Russell wrote:
> Well, I was thinking about this, and maybe it's better for the overrides
> to do explicit assignments in their probe fn, ie:
>
> 	paravirt_ops.irq_disable = my_irq_disable;
> 	paravirt_ops.irq_enable = my_irq_enable;
> 	paravirt_ops.cpuid = my_cpuid;
> 	...
>
> This makes partial overrides (eg Xen) really clear, is no more lines of
> code that the modern struct init style, and avoids making the native
> ones nonstatic...
>   

I still like the extra information that:

    .clts = native_clts,

tells the reader.  It says "I am explicitly choosing to use the native 
version for the operation", vs having nothing which means "I'm 
implicitly falling back on the default, or maybe I forgot to implement it".

The implicit default fallbacks make sense for an interface which has 
been stable, has users, and is then updated in a way which makes sure 
that the old users of the interface can do nothing and still have a 
working system.  But at this stage of paravirt_ops, not implementing 
something almost certainly means that someone updated the interface, and 
that its probably not OK to not implement that update.

    J


[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