{"id":2916,"date":"2013-04-23T13:39:12","date_gmt":"2013-04-23T04:39:12","guid":{"rendered":"http:\/\/blog.bitmeister.jp\/?p=2916"},"modified":"2013-04-25T14:58:42","modified_gmt":"2013-04-25T05:58:42","slug":"linux%e3%81%ae%e3%82%ab%e3%83%bc%e3%83%8d%e3%83%ab%e3%83%a2%e3%82%b8%e3%83%a5%e3%83%bc%e3%83%ab%e3%81%ae%e6%95%b4%e5%90%88%e6%80%a7%e6%a4%9c%e8%a8%bc%e3%81%ae%e4%bb%95%e7%b5%84%e3%81%bf","status":"publish","type":"post","link":"https:\/\/blog.bitmeister.jp\/?p=2916","title":{"rendered":"Linux\u306e\u30ab\u30fc\u30cd\u30eb\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u6574\u5408\u6027\u691c\u8a3c\u306e\u4ed5\u7d44\u307f"},"content":{"rendered":"<p>Linux\u3067\u306f\u3001\u30ab\u30fc\u30cd\u30eb\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u30ed\u30fc\u30c9\u3057\u3088\u3046\u3068\u3057\u305f\u969b\u306b\u3001\u30ab\u30fc\u30cd\u30eb\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u6574\u5408\u6027\u306e\u691c\u8a3c\u304c\u884c\u308f\u308c\u307e\u3059\u3002\u6574\u5408\u6027\u306e\u691c\u8a3c\u306b\u306f\u3001vermagic\u304c\u4f7f\u7528\u3055\u308c\u3066\u3044\u308b\u3068\u8a18\u61b6\u3057\u3066\u3044\u305f\u306e\u3067\u3059\u304c\u3001\u6700\u8fd1\u306eLinux\u3067\u306fmodversions\u306b\u3088\u308b\u691c\u8a3c\u304c\u884c\u308f\u308c\u3066\u3044\u308b\u3088\u3046\u3067\u3059\u3002<br \/>\n\u3053\u306emodversions\u306b\u3088\u308b\u6574\u5408\u6027\u306e\u691c\u8a3c\u306b\u3064\u3044\u3066\u8abf\u67fb\u3057\u305f\u5185\u5bb9\u3092\u5099\u5fd8\u9332\u3068\u3057\u3066\u307e\u3068\u3081\u3066\u304a\u304d\u307e\u3059\u3002<\/p>\n<p><!--more--><\/p>\n<p><strong>\u6ce8\u610f\u70b9<\/strong><br \/>\n<strong style=\"color: #ff0000;\">\u672c\u5185\u5bb9\u306b\u3042\u308b\u30ab\u30fc\u30cd\u30eb\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u30ed\u30fc\u30c9\u306b\u306f\u4e88\u671f\u305b\u306c\u6319\u52d5\u3092\u793a\u3059\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u306e\u3067\u3001\u5fc5\u305a\u81ea\u5df1\u8cac\u4efb\u306e\u5143\u3067\u4f5c\u696d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/strong><\/p>\n<p><strong>\u74b0\u5883<\/strong><\/p>\n<ul>\n<li>\u30c7\u30a3\u30b9\u30c8\u30ea\u30d3\u30e5\u30fc\u30b7\u30e7\u30f3<br \/>\nUbuntu 12.04.2 LTS<\/li>\n<li>\u30ab\u30fc\u30cd\u30eb\u30d0\u30fc\u30b8\u30e7\u30f3<br \/>\n3.5.0-27-generic\u30013.5.0-23-generic<\/li>\n<li>\u8abf\u67fb\u5bfe\u8c61\u30ab\u30fc\u30cd\u30eb\u30e2\u30b8\u30e5\u30fc\u30eb<br \/>\nnet\/ipv4\/tcp_bic.ko<\/li>\n<\/ul>\n<p><strong>vermagic\u306b\u3088\u308b\u6574\u5408\u6027\u691c\u8a3c<\/strong><br \/>\n\u5f93\u6765\u306evermagic\u306b\u3088\u308b\u691c\u8a3c\u3067\u306f\u3001\u30ab\u30fc\u30cd\u30eb\u30b3\u30f3\u30d1\u30a4\u30eb\u6642\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u4e3b\u306a\u8a2d\u5b9a\u5024\u3092\u6587\u5b57\u5217\u5316\u3057\u305f\u3082\u306e\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002\u3053\u306e\u6587\u5b57\u5217\u306f\u3001include\/linux\/vermagic.h\u3067\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n<pre><textarea class=\"c\" name=\"code\">#define VERMAGIC_STRING         \\\r\n\tUTS_RELEASE \" \"      \\\r\n\tMODULE_VERMAGIC_SMP MODULE_VERMAGIC_PREEMPT \\\r\n\tMODULE_VERMAGIC_MODULE_UNLOAD MODULE_VERMAGIC_MODVERSIONS   \\\r\n\tMODULE_ARCH_VERMAGIC\r\n<\/textarea><\/pre>\n<ul>\n<li>UTS_RELEASE\u306b\u3064\u3044\u3066\u306f\u3001include\/generated\/utsrelease.h\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/li>\n<li>\u305d\u306e\u4ed6\u306e\u5024\u306f\u3001vermagic.h\u304a\u3088\u3073\u30ab\u30fc\u30cd\u30eb\u30b3\u30f3\u30d1\u30a4\u30eb\u6642\u306e\u8a2d\u5b9a\u5024\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/li>\n<\/ul>\n<p>\u30ab\u30fc\u30cd\u30eb\u30e2\u30b8\u30e5\u30fc\u30eb\u306b\u7d44\u307f\u8fbc\u307e\u308c\u3066\u3044\u308bvermagic\u306e\u5024\u306f\u3001modinfo\u30b3\u30de\u30f3\u30c9\u3067\u78ba\u8a8d\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre><textarea class=\"c\" name=\"code\">root@bit:\/lib\/modules\/3.5.0-27-generic\/kernel\/net\/ipv4# modinfo .\/tcp_bic.ko\t\t\t\r\nfilename:       .\/tcp_bic.ko\r\ndescription:    BIC TCP\r\n\uff08\u4e2d\u7565\uff09\r\nvermagic:       3.5.0-27-generic SMP mod_unload modversions \r\n\uff08\u4e2d\u7565\uff09\r\n<\/textarea><\/pre>\n<p>\u30ab\u30fc\u30cd\u30eb\u30b3\u30f3\u30d1\u30a4\u30eb\u6642\u306b\u3001CONFIG_MODVERSIONS\u3068\u3044\u3046\u8a2d\u5b9a\u5024\u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u305f\u5834\u5408\u3001MODULE_VERMAGIC_MODVERSIONS\u306e\u5024\u304c&#8221;modversions &#8220;\u3068\u306a\u308a\u3001VERMAGIC_STRING\u306b\u57cb\u3081\u8fbc\u307e\u308c\u3001modversions\u306b\u3088\u308b\u6574\u5408\u6027\u691c\u8a3c\u304c\u884c\u308f\u308c\u307e\u3059\u3002<\/p>\n<p><strong>modversions\u306b\u3088\u308b\u6574\u5408\u6027\u691c\u8a3c<\/strong><br \/>\nmodversions\u306b\u3088\u308b\u6574\u5408\u6027\u691c\u8a3c\u3067\u306f\u3001\u30ab\u30fc\u30cd\u30eb\u30b3\u30f3\u30d1\u30a4\u30eb\u6642\u306b\u30ab\u30fc\u30cd\u30eb\u5185\u306e\u5404\u95a2\u6570\u306e\u30b7\u30f3\u30dc\u30eb\u60c5\u5831\u306b\u3064\u3044\u3066CRC\u304c\u8a08\u7b97\u3055\u308c\u307e\u3059\u3002\u30ab\u30fc\u30cd\u30eb\u30e2\u30b8\u30e5\u30fc\u30eb\u306b\u4fdd\u6301\u3055\u308c\u3066\u3044\u308b\u3001\u30e2\u30b8\u30e5\u30fc\u30eb\u5185\u304b\u3089\u30b3\u30fc\u30eb\u3057\u3066\u3044\u308b\u30ab\u30fc\u30cd\u30eb\u5185\u306e\u95a2\u6570\u306eCRC\u3068\u3001\u52d5\u4f5c\u3057\u3066\u3044\u308b\u30ab\u30fc\u30cd\u30eb\u5185\u306e\u95a2\u6570\u306eCRC\u304c\u4e00\u81f4\u3057\u3066\u3044\u306a\u3044\u5834\u5408\u3001\u30a8\u30e9\u30fc\u3068\u306a\u308a\u30ed\u30fc\u30c9\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3002<\/p>\n<p>\u4f8b\u3048\u3070\u30013.5.0-27-generic\u306e\u30ab\u30fc\u30cd\u30eb\u4e0a\u3067\u30013.5.0-23-generic\u306etcp_bic.ko\u3092\u30ed\u30fc\u30c9\u3057\u3088\u3046\u3068\u3059\u308b\u3068\u3001\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u51fa\u529b\u3055\u308c\u307e\u3059\u3002<\/p>\n<pre><textarea class=\"c\" name=\"code\">tcp_bic: disagrees about version of symbol module_layout<\/textarea><\/pre>\n<p>\u5404\u30e2\u30b8\u30e5\u30fc\u30eb\u5185\u306b\u4fdd\u6301\u3055\u308c\u3066\u3044\u308bCRC\u306b\u3064\u3044\u3066\u306fmobprobe\u30b3\u30de\u30f3\u30c9\u306e&#8211;dump-modversions\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u78ba\u8a8d\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<br \/>\n\u8a66\u3057\u306b3.5.0-27-generic\u30683.5.0-23-generic\u305d\u308c\u305e\u308c\u306etcp_bic.ko\u306eCRC\u3092\u78ba\u8a8d\u3057\u3066\u307f\u308b\u3068\u3001\u4e00\u81f4\u3057\u3066\u3044\u306a\u3044\u95a2\u6570\u304c\u3042\u308b\u3053\u3068\u304c\u5206\u304b\u308a\u307e\u3059\u3002<\/p>\n<p><strong>3.5.0-27-generic<\/strong><\/p>\n<pre><textarea class=\"c\" name=\"code\">\t0x942dc435\tmodule_layout\r\n\t0x15692c87\tparam_ops_int\r\n\t0x013e3de7\ttcp_unregister_congestion_control\r\n\t0x077901d4\ttcp_register_congestion_control\r\n\t0x419aeae2\ttcp_slow_start\r\n\t0x98b3a4a2\ttcp_is_cwnd_limited\r\n\t0xa3cea371\ttcp_cong_avoid_ai\r\n\t0x7d11c268\tjiffies\r\n\t0xb4390f9a\tmcount<\/textarea><\/pre>\n<p><strong>3.5.0-23-generic<\/strong><\/p>\n<pre><textarea class=\"c\" name=\"code\">\t0xa8c16cf3\tmodule_layout\r\n\t0x15692c87\tparam_ops_int\r\n\t0x101ef2f3\ttcp_unregister_congestion_control\r\n\t0xafd4cb2e\ttcp_register_congestion_control\r\n\t0xcd2f8049\ttcp_slow_start\r\n\t0x445a9f63\ttcp_is_cwnd_limited\r\n\t0x59d6fa35\ttcp_cong_avoid_ai\r\n\t0x7d11c268\tjiffies\r\n\t0xb4390f9a\tmcount<\/textarea><\/pre>\n<p>\u3053\u3053\u3067\u30013.5.0-23-generic\u306etcp_bic.ko\u5185\u306eCRC\u306e\u5024\u3092\u30013.5.0-27-generic\u306e\u5024\u3068\u4e00\u81f4\u3055\u305b\u308b\u3053\u3068\u3067\u30e2\u30b8\u30e5\u30fc\u30eb\u304c\u30ed\u30fc\u30c9\u3067\u304d\u306a\u3044\u304b\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u3002<br \/>\n\u4e00\u81f4\u3057\u3066\u3044\u306a\u3044\u95a2\u6570\u306f\u4ee5\u4e0b\u306a\u306e\u3067\u30013.5.0-23-generic\u306etcp_bic.ko\u3092\u30d0\u30a4\u30ca\u30ea\u30a8\u30c7\u30a3\u30bf\u3067\u7de8\u96c6\u3057\u30013.5.0-27-generic\u3068\u4e00\u81f4\u3055\u305b\u3066\u307f\u307e\u3057\u305f\u3002<\/p>\n<pre><textarea class=\"c\" name=\"code\">\tmodule_layout\r\n\ttcp_unregister_congestion_control\r\n\ttcp_register_congestion_control\r\n\ttcp_slow_start\r\n\ttcp_is_cwnd_limited\r\n\ttcp_cong_avoid_ai<\/textarea><\/pre>\n<p>vermagic\u306e\u5024\u306f3.5.0-23\u3067\u3059\u304c\u3001CRC\u306f3.5.0-27\u3068\u4e00\u81f4\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<pre><textarea class=\"c\" name=\"code\">root@bit:\/lib\/modules\/3.5.0-27-generic\/kernel\/net\/ipv4# modinfo .\/edit_tcp_bic.ko \r\nfilename:       .\/edit_tcp_bic.ko\r\ndescription:    BIC TCP\r\n\uff08\u4e2d\u7565\uff09\r\nvermagic:       3.5.0-23-generic SMP mod_unload modversions \r\n\uff08\u4e2d\u7565\uff09\r\nroot@bit:\/lib\/modules\/3.5.0-27-generic\/kernel\/net\/ipv4# \r\nroot@bit:\/lib\/modules\/3.5.0-27-generic\/kernel\/net\/ipv4# modprobe --dump-modversions .\/edit_tcp_bic.ko \r\n\t0x942dc435\tmodule_layout\r\n\t0x15692c87\tparam_ops_int\r\n\t0x013e3de7\ttcp_unregister_congestion_control\r\n\t0x077901d4\ttcp_register_congestion_control\r\n\t0x419aeae2\ttcp_slow_start\r\n\t0x98b3a4a2\ttcp_is_cwnd_limited\r\n\t0xa3cea371\ttcp_cong_avoid_ai\r\n\t0x7d11c268\tjiffies\r\n\t0xb4390f9a\tmcount<\/textarea><\/pre>\n<p>\u3053\u306eedit_tcp_bic\u3092\u30ed\u30fc\u30c9\u3059\u308b\u3068\u4ee5\u4e0b\u306e\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u8868\u793a\u3055\u308c\u3001\u30ed\u30fc\u30c9\u3067\u304d\u305f\u3053\u3068\u304c\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre><textarea class=\"c\" name=\"code\">\tTCP: bic registered<\/textarea><\/pre>\n<p>\u7570\u306a\u308b\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u30ab\u30fc\u30cd\u30eb\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u30ed\u30fc\u30c9\u3057\u305f\u3044\u3068\u3044\u3046\u72b6\u6cc1\u306f\u7a00\u3060\u3068\u601d\u3044\u307e\u3059\u304c\u3001 \u3061\u3087\u3063\u3068\u5b9f\u88c5\u3092\u5909\u3048\u3066\u307f\u305f\u306e\u3067\u3001\u8a66\u3057\u3066\u307f\u305f\u3044\u3068\u3044\u3046\u5834\u5408\u306b\u306f\u4f7f\u3048\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002<br \/>\n<strong style=\"color: #ff0000;\">\u4f46\u3057\u3001\u4e88\u671f\u305b\u306c\u6319\u52d5\u3092\u793a\u3059\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u306e\u3067\u3001\u5fc5\u305a\u81ea\u5df1\u8cac\u4efb\u306e\u5143\u3067\u4f5c\u696d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/strong><\/p>\n<p>\u203b\u5b9f\u884c\u4e2d\u306e\u30ab\u30fc\u30cd\u30eb\u306eCRC\u306f\u3001\u4ee5\u4e0b\u306e\u30d5\u30a1\u30a4\u30eb\u5185\u306b\u4fdd\u6301\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>\/lib\/modules\/`uname -r`\/build\/Module.symvers<\/p>\n<p><strong>\u53c2\u8003URL<\/strong><\/p>\n<ul>\n<li>http:\/\/d.hatena.ne.jp\/enakai00\/20110509\/1304910773<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Linux\u3067\u306f\u3001\u30ab\u30fc\u30cd\u30eb\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u30ed\u30fc\u30c9\u3057\u3088\u3046\u3068\u3057\u305f\u969b\u306b\u3001\u30ab\u30fc\u30cd\u30eb\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u6574\u5408\u6027\u306e\u691c\u8a3c\u304c\u884c\u308f\u308c\u307e\u3059\u3002\u6574\u5408\u6027\u306e\u691c\u8a3c\u306b\u306f\u3001vermagic\u304c\u4f7f\u7528\u3055\u308c\u3066\u3044\u308b\u3068\u8a18\u61b6\u3057\u3066\u3044\u305f\u306e\u3067\u3059\u304c\u3001\u6700\u8fd1\u306eLinux\u3067\u306fmodversio [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17],"tags":[120,18],"class_list":["post-2916","post","type-post","status-publish","format-standard","hentry","category-tech","tag-kernel","tag-linux"],"_links":{"self":[{"href":"https:\/\/blog.bitmeister.jp\/index.php?rest_route=\/wp\/v2\/posts\/2916","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.bitmeister.jp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.bitmeister.jp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.bitmeister.jp\/index.php?rest_route=\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.bitmeister.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2916"}],"version-history":[{"count":13,"href":"https:\/\/blog.bitmeister.jp\/index.php?rest_route=\/wp\/v2\/posts\/2916\/revisions"}],"predecessor-version":[{"id":2952,"href":"https:\/\/blog.bitmeister.jp\/index.php?rest_route=\/wp\/v2\/posts\/2916\/revisions\/2952"}],"wp:attachment":[{"href":"https:\/\/blog.bitmeister.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2916"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.bitmeister.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2916"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.bitmeister.jp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2916"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}