{"id":85001,"date":"2011-03-22T08:36:20","date_gmt":"2011-03-22T00:36:20","guid":{"rendered":"\/2011\/03\/22\/linux_kernel.html"},"modified":"2011-03-22T08:36:20","modified_gmt":"2011-03-22T00:36:20","slug":"linux_kernel","status":"publish","type":"post","link":"https:\/\/blog.zhenglei.net\/?p=85001","title":{"rendered":"Change vlan device name"},"content":{"rendered":"<p><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal<\/w:View> <w:Zoom>0<\/w:Zoom> <w:PunctuationKerning \/> <w:DrawingGridVerticalSpacing>7.8 pt<\/w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0<\/w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2<\/w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas \/> <w:SaveIfXMLInvalid>false<\/w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false<\/w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false<\/w:AlwaysShowPlaceholderText> <w:Compatibility> <w:SpaceForUL \/> <w:BalanceSingleByteDoubleByteWidth \/> <w:DoNotLeaveBackslashAlone \/> <w:ULTrailSpace \/> <w:DoNotExpandShiftReturn \/> <w:AdjustLineHeightInTable \/> <w:BreakWrappedTables \/> <w:SnapToGridInCell \/> <w:WrapTextWithPunct \/> <w:UseAsianBreakRules \/> <w:DontGrowAutofit \/> <w:UseFELayout \/> <\/w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4<\/w:BrowserLevel> <\/w:WordDocument> <\/xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState=\"false\" LatentStyleCount=\"156\"> <\/w:LatentStyles> <\/xml><![endif]--><!--[if gte mso 10]> <mce:style><!   \/* Style Definitions *\/  table.MsoNormalTable \t{mso-style-name:\"Table Normal\"; \tmso-tstyle-rowband-size:0; \tmso-tstyle-colband-size:0; \tmso-style-noshow:yes; \tmso-style-parent:\"\"; \tmso-padding-alt:0cm 5.4pt 0cm 5.4pt; \tmso-para-margin:0cm; \tmso-para-margin-bottom:.0001pt; \tmso-pagination:widow-orphan; \tfont-size:10.0pt; \tfont-family:\"Times New Roman\"; \tmso-fareast-font-family:\"Times New Roman\"; \tmso-ansi-language:#0400; \tmso-fareast-language:#0400; \tmso-bidi-language:#0400;} --> <!--[endif]--><\/p>\n<pre><span lang=\"EN-US\">Modification:<\/span><\/pre>\n<pre><span lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>Function:<span>&nbsp; <\/span>register_vlan_device()<\/span><\/pre>\n<pre><span lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>Location:<span>&nbsp; <\/span>net\/8021q\/vlan.c<\/span><\/pre>\n<pre><span lang=\"EN-US\">&nbsp;<\/span><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\">static int register_vlan_device(struct net_device *real_dev, u16 vlan_id)<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\">{<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/span><\/em><em><span style=\"font-size: 9pt;\" lang=\"EN-US\">&hellip;&hellip;<\/span><\/em><em><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>switch (vn-&gt;name_type) {<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/span><\/em><em><span style=\"font-size: 9pt;\" lang=\"EN-US\">&hellip;&hellip;<\/span><\/em><em><\/em><\/pre>\n<pre style=\"line-height: 14pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>case VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD:<span><br \/>\/\/<\/span><\/span><\/em><strong><span style=\"font-size: 15pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\">snprintf(name, IFNAMSIZ, \"%s.%i\", real_dev-&gt;name, vlan_id);<span><br \/><\/span>snprintf(name, IFNAMSIZ, \"%s%i\", \"eth\", vlan_id);<\/span><\/strong><\/pre>\n<pre style=\"line-height: 14pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>break;<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>case VLAN_NAME_TYPE_PLUS_VID:<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>\/* Put our vlan.VID in the name.<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span> * Name will look like:<span>&nbsp;&nbsp; <\/span> vlan0005<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span> *\/<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>default:<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>snprintf(name, IFNAMSIZ, \"vlan%.4i\", vlan_id);<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>}<\/span><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/span><\/em><em><span style=\"font-size: 9pt;\" lang=\"EN-US\">&hellip;&hellip;<\/span><\/em><em><\/em><\/pre>\n<pre style=\"line-height: 9pt;\"><em><span style=\"font-size: 9pt; font-family: &amp;quot;Arial Unicode MS&amp;quot;;\" lang=\"EN-US\">}<\/span><\/em><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Change vlan device name in kernel from ethx.y to ethy <a href=\"https:\/\/blog.zhenglei.net\/?p=85001\">\u7ee7\u7eed\u9605\u8bfb <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[71],"class_list":["post-85001","post","type-post","status-publish","format-standard","hentry","category-linux","tag-kernel"],"_links":{"self":[{"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/posts\/85001","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=85001"}],"version-history":[{"count":0,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=\/wp\/v2\/posts\/85001\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=85001"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=85001"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.zhenglei.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=85001"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}