Jun'ichi Nomura wrote: > There is another problem that CONFIG_IA64_GENERIC still doesn't > build due to error in SGI SN specific code. The error is as followings. CC arch/ia64/sn/pci/msi.o /build/rc6/source/arch/ia64/sn/pci/msi.c: At top level: /build/rc6/source/arch/ia64/sn/pci/msi.c:192: error: variable `sn_msi_ops' has initializer but incomplete type /build/rc6/source/arch/ia64/sn/pci/msi.c:193: error: unknown field `setup' specified in initializer /build/rc6/source/arch/ia64/sn/pci/msi.c:193: warning: excess elements in struct initializer /build/rc6/source/arch/ia64/sn/pci/msi.c:193: warning: (near initialization for `sn_msi_ops') /build/rc6/source/arch/ia64/sn/pci/msi.c:194: error: unknown field `teardown' specified in initializer /build/rc6/source/arch/ia64/sn/pci/msi.c:194: warning: excess elements in struct initializer /build/rc6/source/arch/ia64/sn/pci/msi.c:194: warning: (near initialization for `sn_msi_ops') /build/rc6/source/arch/ia64/sn/pci/msi.c:196: error: unknown field `target' specified in initializer /build/rc6/source/arch/ia64/sn/pci/msi.c:196: warning: excess elements in struct initializer /build/rc6/source/arch/ia64/sn/pci/msi.c:196: warning: (near initialization for `sn_msi_ops') /build/rc6/source/arch/ia64/sn/pci/msi.c:192: error: storage size of `sn_msi_ops' isn't known The code seems to define its own msi_ops but never include a definition of struct msi_ops. I think this is a sign that some part of arch/ia64/sn/pci/msi.c should move to something like drivers/pci/msi-sgi-sn.c. I leave it to SGI developers, who should have a good insight on what the proper fix is. Mark? If such fix doesn't come up soon, the attached patch can be a band-aid. Thanks, -- Jun'ichi Nomura, NEC Solutions (America), Inc.