Re: [PATCH 0 of 18] ipath driver - for inclusion in 2.6.17



On Fri, 2006-03-24 at 10:57 -0800, Roland Dreier wrote:

It's customary to work through subsystem maintainers to merge new drivers...

OK, I'll feed patches to you, then. No inconvenience intended.

Thanks for applying the patches.

I fixed a couple of minor whitespace problems and made it actually
build (hint: the constant RDMA_NODE_IB_CA does not exist in the
upstream kernel).

Oops.

It seems you need to fix up your Kconfig dependencies somewhat.

Will do.

On
x86_64 allnoconfig + CONFIG_PCI=y, CONFIG_PCI_MSI=y,
CONFIG_INFINIBAND=y, CONFIG_IPATH_CORE=y, CONFIG_INFINIBAND_IPATH=y, I get:

drivers/built-in.o: In function `ipath_free_pddata': undefined reference to `kfree_skb'
drivers/built-in.o: In function `ipath_alloc_skb': undefined reference to `__alloc_skb'
drivers/built-in.o: In function `ipath_kreceive': undefined reference to `skb_over_panic'
drivers/built-in.o: In function `ipath_init_chip': undefined reference to `kfree_skb'

Would your preference be to slap #ifdefs around those, or to just
require CONFIG_NET in Kconfig? The core driver should work fine without
any kernel-level networking support, so I suppose the former makes more
sense.

It also looks like there are a few problems on ia64:

drivers/infiniband/hw/ipath/ipath_verbs.c:733: warning: implicit declaration of function `atomic_set_mask'
drivers/infiniband/hw/ipath/ipath_verbs.c:734: warning: implicit declaration of function `atomic_clear_mask'
drivers/infiniband/hw/ipath/ipath_verbs.c: In function `show_stats':
drivers/infiniband/hw/ipath/ipath_verbs.c:1184: warning: long long unsigned int format, u64 arg (arg 4)
drivers/infiniband/hw/ipath/ipath_verbs.c:1184: warning: long long unsigned int format, u64 arg (arg 5)
drivers/infiniband/hw/ipath/ipath_pe800.c: In function `ipath_pe_handle_hwerrors':
drivers/infiniband/hw/ipath/ipath_pe800.c:353: warning: long long unsigned int format, long unsigned int arg (arg 5)
drivers/infiniband/hw/ipath/ipath_pe800.c:353: warning: long long unsigned int format, long unsigned int arg (arg 3)

That's going to be interesting to test, because I don't have any ia64
hardware to even compile on. I have tested on x86_64 and powerpc, so
this seems like an arch-level header deficiency. Any idea what to do
about it?

I also wouldn't say the driver is sparse clean.

I've been building with C=1 for months. I'll see if I can figure out
why you're getting such different results.

<b

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



Relevant Pages

  • Re: [i2c] [RFC][PATCH 4/4] RTC: SMBus support for the M41T80,
    ... for which such a change means adding ifdefs. ... badly misnamed (after *different* SMBus operations), ... between the kernel and userspace files of the same name. ... This patch changes the names of those functions, ...
    (Linux-Kernel)
  • Re: [patch 3/3] convert CONFIG tag for a few accounting data used by CSA
    ... Is that a preference to the taskstat project? ... For the kernel ... static inlines provide typechecking and typo checking and presence-of-x ...
    (Linux-Kernel)
  • Re: [PATCH 2/2] misc: Add dell-laptop driver
    ... be the dominant form in the kernel right now. ... this can be made const. ... No locking is needed for updates to the global state? ... Do we need the ifdefs here? ...
    (Linux-Kernel)
  • Re: [take2 1/4] kevent: core files.
    ... #ifdefs in the body of the kernel code are discouraged. ... Yes, please, it is standard kernel development practice. ... Currently it is compilation option which ends up in printk with above ... More majordomo info at http://vger.kernel.org/majordomo-info.html ...
    (Linux-Kernel)
  • Re: [openib-general] Re: [PATCH 21/22] ehca main file
    ... This was the reason why we've included the ifdefs. ... That only makes sense as long as you have a common source code for both ... As soon as the driver enters the mainline ... kernel, it is no longer helpful to have these checks in it, because other ...
    (Linux-Kernel)