On Wed, 2014-05-28 at 06:30 +1000, Benjamin Herrenschmidt wrote: > On Tue, 2014-05-27 at 12:15 -0600, Alex Williamson wrote: > > > > +/* > > > + * Reset is the major step to recover problematic PE. The following > > > + * command helps on that. > > > + */ > > > +struct vfio_eeh_pe_reset { > > > + __u32 argsz; > > > + __u32 flags; > > > + __u32 option; > > > +#define VFIO_EEH_PE_RESET_DEACTIVATE 0 /* Deactivate reset */ > > > +#define VFIO_EEH_PE_RESET_HOT 1 /* Hot reset */ > > > +#define VFIO_EEH_PE_RESET_FUNDAMENTAL 3 /* Fundamental reset */ > > > > How does a user know which of these to use? > > The usual way is the driver asks for one or the other, this plumbs back > into the guest EEH code which itself plumbs into the PCIe error recovery > framework in Linux. So magic? > > However I do have a question for Gavin here: Why do we expose an > explicit "deactivate" ? The reset functions should do the whole > reset sequence (assertion, delay, deassertion). In fact the firmware > doesn't really give you a choice for PERST right ? Or do we have > a requirement to expose both phases for RTAS? (In that case I'm > happy to ignore the deassertion there too). > > Cheers, > Ben. > -- To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html