Experimental_DCCP_source_tree: Snapshot patch for kernel 2.6.24
Hi,
I have followed the guide from
http://www.linux-foundation.org/en/Net:DCCP_Testing in order to use the Monitoring DCCP.
I also need to apply the web100 patch, that is valid only for a kernel 2.6.*24* (http://www.web100.org).
So, I have downloaded the kernel 2.6.24 from
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.24.tar.gz, and I applied the web100 patch (that is, web100-2.6.24-2.5.19-200802211940.patch , downloaded from
http://www.web100.org). This is OK.
After that, I tried to enable the Experimental_DCCP_source_tree using the Snapshot patch, that I have downloaded from
http://www.erg.abdn.ac.uk/users/gerrit/dccp/testing_dccp/test-tree/test-tree_2.6.24.diff.gz,
but without success.
(If you want, I can post the result).
I also tried to apply the web100 patch to the kernel ( or nigthly snapshot of the DCCP tree ) downloaded from
http://eden-feed.erg.abdn.ac.uk/latest-dccp-test-tree.tar.bz2, but without success.
Have you suggestions to resolve this situation?
Giuseppe Galeota
Hi Giuseppe,
you are the second one to report this and I am beginning to think that the snapshot patches may not be such a good idea. The problem is that they are taken on the day that the `EXTRAVERSION' variable changes in the top-level Makefile.
I have downloaded a 2.6.24, and found that
http://www.erg.abdn.ac.uk/users/gerrit/dccp/testing_dccp/test-tree/test-tree_2.6.24-rc8.diff.gz
applied cleanly, i.e. probably this is the version later published as 2.6.24 on kernel.org. Could you give this a try please?
But even then, the older patches are lacking some of the more recent fixes. I will try to backport the latest snapshot patch to 2.6.24 if I can find some time.
Gerrit
Quoted 4 lines
However, I tried to compile the new kernel (importing my old file .config), but I could see some errors about
net/dccp/feat. (I have enclosed a part of the result).
What do you think about this?
This is what I meant with not having the latest fixes. The problem is because you are compiling your kernel with the CONFIG_IP_DCCP_xxx_DEBUG turned off. The bug had been pointed out last week by Wei Yongjun and has been fixed since in the test tree, but not in the older patches.
I will fix the 2.6.24/25 patches also, you can fix this by either
* compiling the kernel with debug options for DCCP turned on (and then I am sure it works);
* change the following hunk in net/dccp/feat.c
from:
#else /* ! CONFIG_IP_DCCP_DEBUG */ #define dccp_feat_print_opt(opt, feat, fval, mandatory) #define dccp_feat_print_fnlist(fn_list) #endif
to:
#else /* ! CONFIG_IP_DCCP_DEBUG */ #define dccp_feat_print_opt(opt, feat, val, len, mandatory) #define dccp_feat_print_fnlist(fn_list) #endif
Any name for the arguments will do - it is just an empty declaration.
Thanks
Gerrit
| net/dccp/feat.c:546:54: error: macro "dccp_feat_print_opt" passed 5 arguments, but takes just 4 | net/dccp/feat.c: In function ???dccp_feat_insert_opts???: | net/dccp/feat.c:546: error: ???dccp_feat_print_opt??? undeclared (first use in this function) | net/dccp/feat.c:546: error: (Each undeclared identifier is reported only once | net/dccp/feat.c:546: error: for each function it appears in.) | net/dccp/feat.c:962:55: error: macro "dccp_feat_print_opt" passed 5 arguments, but takes just 4 | net/dccp/feat.c: In function ???dccp_feat_change_recv???: | net/dccp/feat.c:962: error: ???dccp_feat_print_opt??? undeclared (first use in this function) | net/dccp/feat.c:1071:55: error: macro "dccp_feat_print_opt" passed 5 arguments, but takes just 4 | net/dccp/feat.c: In function ???dccp_feat_confirm_recv???: | net/dccp/feat.c:1071: error: ???dccp_feat_print_opt??? undeclared (first use in this function) | net/dccp/feat.c:1168:52: error: macro "dccp_feat_print_opt" passed 5 arguments, but takes just 4 | net/dccp/feat.c: In function ???dccp_feat_handle_nn_established???: | net/dccp/feat.c:1168: error: ???dccp_feat_print_opt??? undeclared (first use in this function) | make[3]: *** [net/dccp/feat.o] Error 1 | make[2]: *** [net/dccp] Error 2 | make[1]: *** [net] Error 2 | make[1]: Leaving directory `/usr/src/linux-source-2.6.24-org' | make: *** [debian/stamp-build-kernel] Error 2 |
--
Dear Gerrit,
I made this:
1: I have turned on DCCP Protocol-->Dccp CCIDs Configurations-->CCIS2/CCID3 debugging messages in the file .config(using make gconfig) 2: I have changed the following hunk in net/dccp/feat.c, as you said
from:
#else /* ! CONFIG_IP_DCCP_DEBUG */ #define dccp_feat_print_opt(opt, feat, fval, mandatory) #define dccp_feat_print_fnlist(fn_list) #endif
to:
#else /* ! CONFIG_IP_DCCP_DEBUG */ #define dccp_feat_print_opt(opt, feat, val, len, mandatory) #define dccp_feat_print_fnlist(fn_list) #endif
Than, I have compiled the kernel, and regarded /net/dccp/feat.c I only read a warning:
/net/dccp/feat.c: .........warning: dccp_feat_oname: defined but not used
So, I think that is all OK, isn't it?
Thanks
Giuseppe
Gerrit Renker ha scritto:
Quoted 59 lines
Quoted 5 lines
However, I tried to compile the new kernel (importing my old file .config), but I could see some errors about
net/dccp/feat. (I have enclosed a part of the result).
What do you think about this?This is what I meant with not having the latest fixes. The problem is because you are compiling your kernel with the
CONFIG_IP_DCCP_xxx_DEBUGturned off. The bug had been pointed out last week by Wei Yongjun and has been fixed since in the test tree, but not in the older patches.I will fix the 2.6.24/25 patches also, you can fix this by either
* compiling the kernel with debug options for DCCP turned on (and then I am sure it works);
* change the following hunk innet/dccp/feat.cfrom:
#else /* ! CONFIG_IP_DCCP_DEBUG */ #define dccp_feat_print_opt(opt, feat, fval, mandatory) #define dccp_feat_print_fnlist(fn_list) #endifto:
#else /* ! CONFIG_IP_DCCP_DEBUG */ #define dccp_feat_print_opt(opt, feat, val, len, mandatory) #define dccp_feat_print_fnlist(fn_list) #endifAny name for the arguments will do - it is just an empty declaration.
Thanks
Gerrit| net/dccp/feat.c:546:54: error: macro "dccp_feat_print_opt" passed 5 arguments, but takes just 4 | net/dccp/feat.c: In function ???dccp_feat_insert_opts???: | net/dccp/feat.c:546: error: ???dccp_feat_print_opt??? undeclared (first use in this function) | net/dccp/feat.c:546: error: (Each undeclared identifier is reported only once | net/dccp/feat.c:546: error: for each function it appears in.) | net/dccp/feat.c:962:55: error: macro "dccp_feat_print_opt" passed 5 arguments, but takes just 4 | net/dccp/feat.c: In function ???dccp_feat_change_recv???: | net/dccp/feat.c:962: error: ???dccp_feat_print_opt??? undeclared (first use in this function) | net/dccp/feat.c:1071:55: error: macro "dccp_feat_print_opt" passed 5 arguments, but takes just 4 | net/dccp/feat.c: In function ???dccp_feat_confirm_recv???: | net/dccp/feat.c:1071: error: ???dccp_feat_print_opt??? undeclared (first use in this function) | net/dccp/feat.c:1168:52: error: macro "dccp_feat_print_opt" passed 5 arguments, but takes just 4 | net/dccp/feat.c: In function ???dccp_feat_handle_nn_established???: | net/dccp/feat.c:1168: error: ???dccp_feat_print_opt??? undeclared (first use in this function) | make[3]: *** [net/dccp/feat.o] Error 1 | make[2]: *** [net/dccp] Error 2 | make[1]: *** [net] Error 2 | make[1]: Leaving directory `/usr/src/linux-source-2.6.24-org' | make: *** [debian/stamp-build-kernel] Error 2 |--
.
Giuseppe, -
| | Than, I have compiled the kernel, and regarded /net/dccp/feat.c I only read a warning: | /net/dccp/feat.c: .........warning: dccp_feat_oname: defined but not used | | So, I think that is all OK, isn't it? |
Yes, it should work now. Typically each patch that is in the directory has been tested to work here on 4..7 different computers, but it seems not sufficiently with all combinations of options.
The warning message will disappear when enabling 'DCCP debug messages' (via the 'DCCP kernel hacking' submenu), but you are right, it shouldn't happen in any combination of configuration options.
I will fix this in the test tree and also in the 2.6.24 snapshot patch.
Thanks a lot for reporting this,
Gerrit