Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.
On Wed, Oct 20, 2010 at 04:33:30PM +0200, rf at q-leap.de wrote: > >>>>> "Lars" == Lars Ellenberg <lars.ellenberg at linbit.com> writes: > > >> Build automagic of who? The kernel? When I apply the patch generated by > >> make kernel-patch and compile I get a "BLK_MAX_SEGMENTS undefined" error. > > Lars> Ah. Well, the build magic of DRBD. You are supposed to build > Lars> the out-of-tree DRBD module as external module. You are not > Lars> supposed to use the "make kernel-patch" thing. It may or may > Lars> not work. I don't really care if it does. We should probably > Lars> drop if from our makefiles now. > > Lars> But if you go that route, you first need to > Lars> ./scripts/adjust_drbd_config_h.sh > Lars> Or even KDIR=$KDIR O=$O ../scripts/adjust_drbd_config_h.sh > > OK, that fixes the missing #define. Thanks for the hint. > > Lars> Could you reason why the first chunk would be necessary? > > >> The kernel doesn't know about the variable $(DRBDSRC) > > Lars> Of course it does not. And you should not patch it in there. > Lars> The in-kernel tree drbd must only use the in kernel tree .h > Lars> files, obviously. So the in-kernel tree Makefile should be > Lars> left untouched. > > I prefer in-tree, but OK, I build it out of tree from now on. Well, if it does work for you, fine ;-) But it may get cumbersome now that there is already an in-tree drbd, with a somewhat different layout of files, and the split of an additional helper module. > Now to the more serious problem. > Do you have any hint on how to start > debugging the SDP connect problem? Sorry. The workaround mentioned before, respectively patching OFED kernel[*], did work last time I tried. Performance tuning is a different thing altogether. [*] I think it was something like this diff --git a/drivers/infiniband/core/addr.c b/drivers/infiniband/core/addr.c index ce511d8..26ef4c4 100644 --- a/drivers/infiniband/core/addr.c +++ b/drivers/infiniband/core/addr.c @@ -306,7 +306,7 @@ static int addr_resolve_remote(struct sockaddr *src_in, struct sockaddr *dst_in, struct rdma_dev_addr *addr) { - if (src_in->sa_family == AF_INET) { + if (src_in->sa_family == AF_INET || src_in->sa_family == AF_INET_SDP) { return addr4_resolve_remote((struct sockaddr_in *) src_in, (struct sockaddr_in *) dst_in, addr); } else -- : Lars Ellenberg : LINBIT | Your Way to High Availability : DRBD/HA support and consulting http://www.linbit.com DRBD® and LINBIT® are registered trademarks of LINBIT, Austria. __ please don't Cc me, but send to list -- I'm subscribed