Thread (27 messages) flat view 27 messages, 6 authors, 2007-10-23

Re: [PATCH 5/7] pci: Export the pci_restore_msi_state() function

From: Linas Vepstas <hidden>
Date: 2007-10-20 00:25:49

On Fri, Oct 19, 2007 at 06:12:03PM -0700, Michael Chan wrote:
On Fri, 2007-10-19 at 19:04 -0500, linas@austin.ibm.com wrote:
quoted
I'm working in linux-2.6.23-rc8-mm1 at the moment, and I don't see
that happening. viz. read_msi_msg() is not called anywhere, and I need
to have valid msg->address_lo and msg->address_hi and msg->data
in order to be able to restore.

In particular, this has to happen after the call to
arch_setup_msi_irqs
as otherwise, the arch hasn't yet filled these fields with correct
values.

Perhaps this is fixed in the kernel you're working with?
It's possible that this doesn't work on pseries.  I've only tested
pci_restore_msi_state() on x86 in the context of suspend and resume.
During resume, the MSI state gets restored correctly on x86.
:-) Yes, I think that is being done in arch/i386/kernel/io_apic.c
and arch/ia64/kernel/msi_ia64.c and etc. but its not being done
on most of the powerpc's.  Its possible that none of the
old macintosh laptops use msi, and so no one noticed before; 
I know that no one ever suspends/resumes the big servers I work 
on, sooo :-)

Actually, looking at arch/i386/kernel/io_apic.c, it looks like
the msi state is being saved only when CONFIG_SMP is set, so 
it seems to me that the restore will fail on uni systems ... 
are there any of those left? 

--linas
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help