<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.jackslab.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-cn">
		<id>http://wiki.jackslab.org/index.php?action=history&amp;feed=atom&amp;title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007%3A_Cache_aliases_issue_%281%29</id>
		<title>捉虫日记 0007: Cache aliases issue (1) - 版本历史</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.jackslab.org/index.php?action=history&amp;feed=atom&amp;title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007%3A_Cache_aliases_issue_%281%29"/>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;action=history"/>
		<updated>2026-09-11T05:48:42Z</updated>
		<subtitle>本wiki的该页面的版本历史</subtitle>
		<generator>MediaWiki 1.19.2</generator>

	<entry>
		<id>http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;diff=18567&amp;oldid=prev</id>
		<title>Comcat：/* Phenomenon */</title>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;diff=18567&amp;oldid=prev"/>
				<updated>2025-12-04T03:32:07Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Phenomenon&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;←上一版本&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;2025年12月4日 (四) 03:32的版本&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第20行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第20行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;ls 一下，就会有如下的一些诡异现象：&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;ls 一下，就会有如下的一些诡异现象：&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;source lang=bash&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;# ls /bin/&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;# ls /bin/&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Segmentation fault&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Segmentation fault&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第125行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第125行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Segmentation fault&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Segmentation fault&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;source&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;执行其它的命令，亦会有类似的现象。&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;执行其它的命令，亦会有类似的现象。&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Comcat</name></author>	</entry>

	<entry>
		<id>http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;diff=18564&amp;oldid=prev</id>
		<title>Comcat：/* Investigate */</title>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;diff=18564&amp;oldid=prev"/>
				<updated>2025-12-04T03:27:12Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Investigate&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;←上一版本&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;2025年12月4日 (四) 03:27的版本&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第165行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第165行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;B. 激进的，也是可能花时间很多的：使 kmap_coherent 工作正常。&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;B. 激进的，也是可能花时间很多的：使 kmap_coherent 工作正常。&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/del&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;== Reference ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;* [[GNU/Linux 内核移植捉虫笔记 (Linux Kernel Debug Notes)]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/del&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Comcat</name></author>	</entry>

	<entry>
		<id>http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;diff=2290&amp;oldid=prev</id>
		<title>Comcat：/* Investigate */</title>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;diff=2290&amp;oldid=prev"/>
				<updated>2014-05-19T08:20:02Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Investigate&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;←上一版本&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;2014年5月19日 (一) 08:20的版本&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第165行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第165行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;B. 激进的，也是可能花时间很多的：使 kmap_coherent 工作正常。&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;B. 激进的，也是可能花时间很多的：使 kmap_coherent 工作正常。&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;br&amp;gt;&lt;/del&gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;br&amp;gt;&lt;/del&gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;br&amp;gt;&lt;/del&gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;br&amp;gt;&lt;/del&gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;br&amp;gt;&lt;/del&gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;br&amp;gt;&lt;/del&gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;br&amp;gt;&lt;/del&gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Comcat</name></author>	</entry>

	<entry>
		<id>http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;diff=2289&amp;oldid=prev</id>
		<title>2014年5月19日 (一) 08:19 Comcat</title>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;diff=2289&amp;oldid=prev"/>
				<updated>2014-05-19T08:19:41Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;←上一版本&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;2014年5月19日 (一) 08:19的版本&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第129行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第129行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;执行其它的命令，亦会有类似的现象。&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;执行其它的命令，亦会有类似的现象。&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;&lt;/ins&gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== Analysis ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== Analysis ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第145行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第145行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;由此将强制 0 赋值去除，则问题转化成：在 2.6.14 没有任何问题，2.6.21 则启动到运行 busybox 时就 hung 了。&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;由此将强制 0 赋值去除，则问题转化成：在 2.6.14 没有任何问题，2.6.21 则启动到运行 busybox 时就 hung 了。&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;&lt;/ins&gt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== Investigate ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== Investigate ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Comcat</name></author>	</entry>

	<entry>
		<id>http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;diff=2288&amp;oldid=prev</id>
		<title>Comcat：以“== Phenomenon ==  BCM56218 (BCM3302 MIPS core, 32KB 2-way DCache) SoC，Glibc_small rootfs on MTD，启动后，在最后运行 busybox 时，内核总会输出 &quot;Seg...”为内容创建页面</title>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=%E6%8D%89%E8%99%AB%E6%97%A5%E8%AE%B0_0007:_Cache_aliases_issue_(1)&amp;diff=2288&amp;oldid=prev"/>
				<updated>2014-05-19T08:19:08Z</updated>
		
		<summary type="html">&lt;p&gt;以“== Phenomenon ==  BCM56218 (BCM3302 MIPS core, 32KB 2-way DCache) SoC，Glibc_small rootfs on MTD，启动后，在最后运行 busybox 时，内核总会输出 &amp;quot;Seg...”为内容创建页面&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Phenomenon ==&lt;br /&gt;
&lt;br /&gt;
BCM56218 (BCM3302 MIPS core, 32KB 2-way DCache) SoC，Glibc_small rootfs on MTD，启动后，在最后运行 busybox 时，内核总会输出 &amp;quot;Segmentation fault&amp;quot; or &amp;quot;Bus error&amp;quot;：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.............&lt;br /&gt;
rting pid 590, console /dev/console: '/etc/init.d/rcS'&lt;br /&gt;
Bus error&lt;br /&gt;
Segmentation fault&lt;br /&gt;
&lt;br /&gt;
Welcome to Wind River Linux&lt;br /&gt;
Please press Enter to activate this console.&lt;br /&gt;
Starting pid 595, console /dev/console: '/bin/sh'&lt;br /&gt;
Bus error&lt;br /&gt;
#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ls 一下，就会有如下的一些诡异现象：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# ls /bin/&lt;br /&gt;
Segmentation fault&lt;br /&gt;
&lt;br /&gt;
# ls /&lt;br /&gt;
*** glibc detected *** -sh: malloc(): memory corruption: 0x33fb4af4 ***&lt;br /&gt;
Aborted&lt;br /&gt;
&lt;br /&gt;
# ls /proc&lt;br /&gt;
Unhandled kernel unaligned access[#2]:&lt;br /&gt;
Cpu 0&lt;br /&gt;
$ 0 : 00000000 1000fc00 00000000 65532043&lt;br /&gt;
$ 4 : 65532043 00000000 00000000 00000000&lt;br /&gt;
$ 8 : 812c2006 00001000 812c2000 fffffff4&lt;br /&gt;
$12 : 0000002e 00004000 00600000 0000006c&lt;br /&gt;
$16 : 00000000 65532043 812c5cf4 812efd38&lt;br /&gt;
$20 : 00000000 877ac120 004a02f8 812efd40&lt;br /&gt;
$24 : 80000000 33f222d0&lt;br /&gt;
$28 : 812ee000 812efcb0 00000001 8003f568&lt;br /&gt;
Hi : 00000000&lt;br /&gt;
Lo : 00000004&lt;br /&gt;
epc : 8003f174 pid_task+0x1c/0x38 Not tainted&lt;br /&gt;
ra : 8003f568 get_pid_task+0x2c/0x88&lt;br /&gt;
Status: 1000fc03 KERNEL EXL IE&lt;br /&gt;
Cause : 00000010&lt;br /&gt;
BadVA : 65532053&lt;br /&gt;
PrId : 0002901a&lt;br /&gt;
Modules linked in:&lt;br /&gt;
Process sh (pid: 708, threadinfo=812ee000, task=8771f908)&lt;br /&gt;
Stack : 877ac120 812efd38 8009dd90 812efd38 812c2009 812a534c 800cab10 800900c0&lt;br /&gt;
812c2009 812efd40 812efe60 812efd38 812c2009 812c5cf4 812efe60 800901b8&lt;br /&gt;
811e3304 8009e564 812efe84 80330000 812c2009 812efd40 877a3dc4 812efe60&lt;br /&gt;
00000000 00000000 004a02f8 00000000 80092358 8009290c 80193fb4 8002e788&lt;br /&gt;
00008000 812efea5 877ac120 877a85ec 001313f5 00000003 812c2006 000012bf&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
Call Trace:&lt;br /&gt;
[&amp;lt;8003f174&amp;gt;] pid_task+0x1c/0x38&lt;br /&gt;
[&amp;lt;8003f568&amp;gt;] get_pid_task+0x2c/0x88&lt;br /&gt;
[&amp;lt;800cab10&amp;gt;] pid_revalidate+0x28/0x178&lt;br /&gt;
[&amp;lt;800901b8&amp;gt;] do_lookup+0x68/0x1fc&lt;br /&gt;
[&amp;lt;80092358&amp;gt;] __link_path_walk+0x5b0/0x1238&lt;br /&gt;
[&amp;lt;80093098&amp;gt;] link_path_walk+0xb8/0x1b4&lt;br /&gt;
[&amp;lt;800934fc&amp;gt;] do_path_lookup+0x140/0x36c&lt;br /&gt;
[&amp;lt;80094190&amp;gt;] __user_walk_fd+0x54/0x88&lt;br /&gt;
[&amp;lt;8008aa3c&amp;gt;] vfs_lstat_fd+0x28/0x68&lt;br /&gt;
[&amp;lt;8008aaa4&amp;gt;] sys_newlstat+0x28/0x50&lt;br /&gt;
[&amp;lt;8000d610&amp;gt;] syscall_trace_entry+0x70/0x90&lt;br /&gt;
&lt;br /&gt;
Code: 03e00008 00001021 00021100 &amp;lt;8c630010&amp;gt; 00451023 00621023 1060fff9 2442ff34 03e00008&lt;br /&gt;
note: sh[708] exited with preempt_count 1&lt;br /&gt;
Segmentation fault&lt;br /&gt;
&lt;br /&gt;
# ps ax&lt;br /&gt;
PID Uid VCPU 0 Unable to handle kernel paging request at virtual address 73656d20, epc == 800bf6f0, ra == 800bf6e8&lt;br /&gt;
mSize Stat CommaOops[#1]:&lt;br /&gt;
Cpu 0&lt;br /&gt;
$ 0 : 00000000 1000fc00 73656d20 7375621f&lt;br /&gt;
$ 4 : 81240568 73756220 00000000 87719854&lt;br /&gt;
$ 8 : 00000000 80370000 81253c50 ffffffff&lt;br /&gt;
$12 : 00000005 00000000 2aaa8290 7fcca278&lt;br /&gt;
$16 : 73656d18 877197fc 81240464 00000000&lt;br /&gt;
$20 : 81240560 00000020 00000020 81246e64&lt;br /&gt;
$24 : 00000000 801728e4&lt;br /&gt;
$28 : 81252000 81253e80 87719854 800bf6e8&lt;br /&gt;
Hi : 00000000&lt;br /&gt;
Lo : 00000d68&lt;br /&gt;
epc : 800bf6f0 inotify_inode_queue_event+0x94/0x160 Not tainted&lt;br /&gt;
ra : 800bf6e8 inotify_inode_queue_event+0x8c/0x160&lt;br /&gt;
Status: 1000fc03 KERNEL EXL IE&lt;br /&gt;
Cause : 80000008&lt;br /&gt;
BadVA : 73656d20&lt;br /&gt;
PrId : 0002901a&lt;br /&gt;
Modules linked in:&lt;br /&gt;
Process ps (pid: 636, threadinfo=81252000, task=87792c90)&lt;br /&gt;
&lt;br /&gt;
Stack : 00000000 800833d4 00000000 00000000 00000000 00000000 81240568 00000000&lt;br /&gt;
875991d0 877197fc 81240464 00000000 87719854 00000020 00000000 00000000&lt;br /&gt;
00000000 800c0148 81225000 7fcca8b5 80082fc0 00000000 81246e64 0000416d&lt;br /&gt;
00000020 8123eb60 00000004 81246e64 81225000 7fcca8b5 80083488 11e1a2ff&lt;br /&gt;
386d4414 11e1a2ff 386d4414 11e1a2ff 00000400 00000000 000003ff 7fcca958&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
Call Trace:&lt;br /&gt;
[&amp;lt;800bf6f0&amp;gt;] inotify_inode_queue_event+0x94/0x160&lt;br /&gt;
[&amp;lt;800c0148&amp;gt;] inotify_dentry_parent_queue_event+0xd8/0x190&lt;br /&gt;
[&amp;lt;80083488&amp;gt;] do_sys_open+0xa0/0x174&lt;br /&gt;
[&amp;lt;8000d610&amp;gt;] syscall_trace_entry+0x70/0x90&lt;br /&gt;
&lt;br /&gt;
Code: afa20018 8e0200fc 2450fff8 &amp;lt;16820007&amp;gt; 8e030008 0802fddf 8fa40018 26220008 02208021&lt;br /&gt;
nd&lt;br /&gt;
1 root 508 S init&lt;br /&gt;
2 root SWN [ksoftirqd/0]&lt;br /&gt;
3 root SW [watchdog/0]&lt;br /&gt;
4 root SW&amp;lt; [events/0]&lt;br /&gt;
5 root SW&amp;lt; [khelper]&lt;br /&gt;
6 root SW&amp;lt; [kthread]&lt;br /&gt;
20 root SW&amp;lt; [kblockd/0]&lt;br /&gt;
31 root SW [pdflush]&lt;br /&gt;
32 root SW [pdflush]&lt;br /&gt;
33 root SW&amp;lt; [kswapd0]&lt;br /&gt;
34 root SW&amp;lt; [aio/0]&lt;br /&gt;
35 root SW&amp;lt; [unionfs_siod/0]&lt;br /&gt;
&lt;br /&gt;
Segmentation fault&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
执行其它的命令，亦会有类似的现象。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Analysis ==&lt;br /&gt;
&lt;br /&gt;
通常的 &amp;quot;Segmentation fault&amp;quot; 系访问非法虚拟地址所致（页表没相应的映射）；&amp;quot;Bus error&amp;quot; 则常常是访问非对其的地址所致，例如从 0x8000 0003 读取一个字，大多数情况下内核会报 &amp;quot;Bus error&amp;quot;。&lt;br /&gt;
&lt;br /&gt;
从几次内核 dump 出来的寄存器和栈来看，出现 &amp;quot;Segmentation fault&amp;quot; 的位置不固定，访问的非法地址差别较大，完全重现的概率微乎其微，因此从引起异常的指令，到函数，再到程序块的逆向分析思路根本行不通。印象中试了几次，几近抓狂。&lt;br /&gt;
&lt;br /&gt;
后与 shyjuventus 聊起，此 BSP 在 2.6.14 的版本时没有任何问题，更新到 2.6.21 后每次到运行 busybox 时，就会 hung 掉（此时 cpu_has_dc_aliases = 1），强制将 cpu_has_dc_aliases = 0 则出现上面描述的 &amp;quot;Segmentation fault&amp;quot; 现象，而且更重要的：将 kernel 配置成 uncached (CONFIG_UNCACHED=y) 后，系统能正常运行，没有任何问题，并表示十分怀疑是 Cache Aliases 引起的问题。 shyjuventus 提供的信息，给从正面突破打开了一个口子。&lt;br /&gt;
&lt;br /&gt;
查看内核启动日志后发现该 MIPS core 使用 32KB 2-way 的 DCache，且其用虚址索引、物址匹配，内核默认使用 4KB 的页大小，则 way_size = 32KB/2 = 16KB &amp;gt; 4KB，显然存在 Cache Aliases。加上用 uncached 的内核起没有问题，因此初步判断是由 Cache Aliases 引起的。&lt;br /&gt;
&lt;br /&gt;
查看代码发现 cpu_has_dc_aliases 这个变量应该为 1，指示说明这个处理器有 Cache Aliases 问题，如将其强制定义成 0，则 Kernel 中为 Cache Aliases 准备的额外的 Cache flush 皆会被绕过，造成大量的父子进程间数据不一致。&lt;br /&gt;
&lt;br /&gt;
由此将强制 0 赋值去除，则问题转化成：在 2.6.14 没有任何问题，2.6.21 则启动到运行 busybox 时就 hung 了。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Investigate ==&lt;br /&gt;
&lt;br /&gt;
用 SysRq 的 t 键查看 hung 时，系统所有的 Task，惊奇的发现 pid == 1 的 init “蒸发”了。&lt;br /&gt;
&lt;br /&gt;
很自然的，kgdb 上，艰苦卓绝的跟踪后发现是在 run_init_process(&amp;quot;/sbin/init&amp;quot;) 中挂了，&lt;br /&gt;
&lt;br /&gt;
以行步进到 do_execve()，发现该函数能正确返回，继续跟踪发现在执行 syscall_exit 时挂的，眼见就能接近焦点，不幸的是，当单步到 restore_all 的第一条指令时， kgdb 的单步跟踪始终在不停的死循环，每次执行 si，PC 的值都不会变。尝试多次，无果。静心偶然想起，以前亦遇到过断点在异常返回代码中是 kgdb 常常不能正常工作，其原因大概是 kgdb 的实现亦依赖于内核的异常处理，应该是自己单步自己，搞出死循环了。&lt;br /&gt;
&lt;br /&gt;
于是转而对比 2.6.21 相对于 2.6.14 所做的改进，期间和 yshi 闲聊，亦提到过 2.6.21 在一些地方使用 kmap_coherent 替换了 2.6.14 所用的 kmap_atomic，于是很快就找到了 5.4.3 节所提到的那个 patch。&lt;br /&gt;
&lt;br /&gt;
稍作分析后，就尝试绕开所有使用 kmap_coherent 的代码（使用原 kmap_atomic + flush 的机制）发现没有 hung，可以进入 shell，但现象与将 cpu_has_dc_aliases 强制定义为 0 的现象类似，只是情况没那么糟糕，虽有 &amp;quot;Segmentation fault&amp;quot;、&amp;quot;Bus error&amp;quot; 但不太影响正常使用，显然是 kmap_coherent 导致了 hung。于是粗略判断为退回原有的机制，可能还有某些该 flush 的地方被疏漏了，如果将这些洞补上，应该就可以彻底消除这些讨厌的 &amp;quot;Segmentation fault&amp;quot; 了。&lt;br /&gt;
&lt;br /&gt;
至此已有些眉目，考虑到市场的兄弟还等着发布，列了两个解决方向：&lt;br /&gt;
&lt;br /&gt;
A. 保守的，也是最快的：参照 2.6.14，补上这些残余的疏漏；&lt;br /&gt;
&lt;br /&gt;
B. 激进的，也是可能花时间很多的：使 kmap_coherent 工作正常。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Comcat</name></author>	</entry>

	</feed>