On Fri, 2007-10-19 at 17:53 -0700, David Miller wrote: > From: [EMAIL PROTECTED] (Linas Vepstas) > Date: Fri, 19 Oct 2007 19:46:10 -0500 > > > FWIW, it looks like not all that many arches do this; the output > > for grep -r address_hi * is pretty thin. Then, looking at > > i386/kernel/io_apic.c as an example, one can see that the > > msi state save happens "by accident" if CONFIG_SMP is enabled; > > and so its surely broekn on uniprocesor machines. > > I don't see this, in all cases write_msi_msg() will transfer > the given "*msg" to entry->msg by this assignment in > drivers/pci/msi.c: > > void write_msi_msg(unsigned int irq, struct msi_msg *msg) > { > ... > entry->msg = *msg; > } > > So as long as write_msi_msg() is invoked, it will be saved > properly. > > Platforms need not do this explicitly.
I'm short on context here, and it's Saturday, so excuse me if I'm missing the point somewhere. On pseries machines we don't call write_msi_msg(), because we don't control the contents of the message, firmware does. So entry->msg will be bogus. That's a pity, but AFAIK it shouldn't be a problem because we don't enable CONFIG_PM on those machines anyway. If we ever want to we'll need to sort out with firmware how that will work WRT restoring MSI state. cheers -- Michael Ellerman OzLabs, IBM Australia Development Lab wwweb: http://michael.ellerman.id.au phone: +61 2 6212 1183 (tie line 70 21183) We do not inherit the earth from our ancestors, we borrow it from our children. - S.M.A.R.T Person
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev