lkml.org 
[lkml]   [2006]   [Mar]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] (-mm) drivers/pci/msi: explicit declaration of msi_register
    Hello,

    In 2.6.16-rc6-mm1, I've seen tons of compiler warnings on ia64:

    include2/asm/msi.h: In function `ia64_msi_init':
    include2/asm/msi.h:23: warning: implicit declaration of function `msi_register'
    In file included from include2/asm/machvec.h:408,
    from include2/asm/io.h:70,
    from include2/asm/smp.h:20,
    from /build/rc6/source/include/linux/smp.h:22,

    The problem is that msi_register() is used in ia64_msi_init()
    without declaration.
    Since ia64_msi_init() is a part of machine vector, most of files
    hit this warning and may hide other important messages.

    Other than ia64, i386 and x86_64 have similar msi.h.
    But they are not affected since include/asm/msi.h isn't
    included without drivers/pci/pci.h where msi_register() is
    declared.

    The attached patch fixes this specific problem.
    Proper fix might be moving the declaration in common header
    but including something from machvec.h causes a lot of other
    problems, so it would be nice if someone have better idea on this.

    Thanks,
    --
    Jun'ichi Nomura, NEC Solutions (America), Inc.
    Declare msi_register() in msi.h.

    The patch is especially necessary for ia64 on which most of files
    emit compiler warnings like below:
    include2/asm/msi.h: In function `ia64_msi_init':
    include2/asm/msi.h:23: warning: implicit declaration of function `msi_register'
    In file included from include2/asm/machvec.h:408,
    from include2/asm/io.h:70,
    from include2/asm/smp.h:20,
    from /build/rc6/source/include/linux/smp.h:22,

    Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com>

    --- linux-2.6.16-rc6-mm1.orig/include/asm-ia64/msi.h 2006-03-14 13:54:11.000000000 -0500
    +++ linux-2.6.16-rc6-mm1/include/asm-ia64/msi.h 2006-03-14 14:05:26.000000000 -0500
    @@ -15,6 +15,7 @@ static inline void set_intr_gate (int nr
    #define MSI_TARGET_CPU_SHIFT 4

    extern struct msi_ops msi_apic_ops;
    +extern int msi_register(struct msi_ops *);

    /* default ia64 msi init routine */
    static inline int ia64_msi_init(void)
    \
     
     \ /
      Last update: 2006-03-14 22:01    [W:3.107 / U:1.080 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site