lkml.org 
[lkml]   [2010]   [Jun]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] pci: fix compilation when CONFIG_PCI_MSI=n
    (2010/06/16 13:51), Rusty Russell wrote:
    > drivers/pci/pci.c:2277: error: redefinition of ‘pci_msi_off’
    > include/linux/pci.h:786: note: previous definition of ‘pci_msi_off’ was here
    >
    > Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
    > ---
    > drivers/pci/pci.c | 2 ++
    > 1 file changed, 2 insertions(+)
    >
    > diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
    > --- a/drivers/pci/pci.c
    > +++ b/drivers/pci/pci.c
    > @@ -2266,6 +2266,7 @@ pci_intx(struct pci_dev *pdev, int enabl
    > }
    > }
    >
    > +#ifdef CONFIG_PCI_MSI
    > /**
    > * pci_msi_off - disables any msi or msix capabilities
    > * @dev: the PCI device to operate on
    > @@ -2293,6 +2294,7 @@ void pci_msi_off(struct pci_dev *dev)
    > }
    > }
    > EXPORT_SYMBOL_GPL(pci_msi_off);
    > +#endif
    >
    > #ifndef HAVE_ARCH_PCI_SET_DMA_MAX_SEGMENT_SIZE
    > int pci_set_dma_max_seg_size(struct pci_dev *dev, unsigned int size)

    Rusty, thank you for reporting it.
    But I think this fix is not correct.

    It looks like a bug in Michael's patch:
    [PATCH for-2.6.35] virtio-pci: disable msi at startup

    The patch includes a change as following:

    > > --- a/include/linux/pci.h
    > > +++ b/include/linux/pci.h
    > > @@ -780,7 +780,11 @@ int __must_check pci_set_mwi(struct pci_dev *dev);
    > > int pci_try_set_mwi(struct pci_dev *dev);
    > > void pci_clear_mwi(struct pci_dev *dev);
    > > void pci_intx(struct pci_dev *dev, int enable);
    > > +#ifdef CONFIG_PCI_MSI
    > > void pci_msi_off(struct pci_dev *dev);
    > > +#else
    > > +static inline void pci_msi_off(struct pci_dev *dev) {}
    > > +#endif
    > > int pci_set_dma_max_seg_size(struct pci_dev *dev, unsigned int size);
    > > int pci_set_dma_seg_boundary(struct pci_dev *dev, unsigned long mask);
    > > int pcix_get_max_mmrbc(struct pci_dev *dev);

    According to the old commit f5f2b13129a6541debf8851bae843cbbf48298b7,
    pci_msi_off() was designed to be available even when msi support is not
    compiled in. So I think this change will make something wrong.

    Michael, could you check your patch?


    Thanks,
    H.Seto

    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2010-06-16 08:13    [W:0.025 / U:178.024 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site