<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://foss.coep.org.in/coepwiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=612303017</id>
	<title>COEP Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://foss.coep.org.in/coepwiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=612303017"/>
	<link rel="alternate" type="text/html" href="https://foss.coep.org.in/coepwiki/index.php/Special:Contributions/612303017"/>
	<updated>2026-05-15T18:42:55Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://foss.coep.org.in/coepwiki/index.php?title=Linux_kernel_v6.16.2&amp;diff=39</id>
		<title>Linux kernel v6.16.2</title>
		<link rel="alternate" type="text/html" href="https://foss.coep.org.in/coepwiki/index.php?title=Linux_kernel_v6.16.2&amp;diff=39"/>
		<updated>2025-08-30T10:08:16Z</updated>

		<summary type="html">&lt;p&gt;612303017: Added a wiki entry explaining the CONFIG_X86_NATIVE_CPU flag issue in Linux 6.16+, its problems with virtualization (-march=native), and the fix (CONFIG_X86_NATIVE_CPU=n)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;&#039;&#039;&#039;The CONFIG_X86_NATIVE_CPU Flag:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- This is a CPU Virtualization error. Linux kernel 6.16+ versions introduce a new build time option, (&amp;lt;code&amp;gt;CONFIG_X86_NATIVE_CPU&amp;lt;/code&amp;gt;) in the .config file, created after running &amp;lt;sub&amp;gt;&amp;lt;code&amp;gt;make menuconfig&amp;lt;/code&amp;gt;&amp;lt;/sub&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When this option is enabled, i.e &amp;lt;code&amp;gt;CONFIG_X86_NATIVE_CPU=y&amp;lt;/code&amp;gt;, then it instructs the compiler gcc to use the &amp;lt;code&amp;gt;-march=native&amp;lt;/code&amp;gt; flag. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Now what does this flag mean or it&#039;s significance?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Essentially it directs the compiler to detect a specific CPU model on which the compiler runs and generate optimized instructions which will be unique to the architecture.&lt;br /&gt;
&lt;br /&gt;
Now, on the host machine this option optimizes the code for the actual CPU but inside a VM (like VirtualBox), the compiler only sees the vCPU presented by the &#039;&#039;Virtual Environment&#039;&#039; which can be heavily restrictive and slightest modifications to the VM model via Host machine.&lt;br /&gt;
&lt;br /&gt;
- The kernel which is built will have runtime portability issues and any changes to the VM physical configuration (via Host Machine Software) creates a fault wherein the kernel ELF file uses instructions that the new vCPU doesn&#039;t support!&lt;br /&gt;
&lt;br /&gt;
Hence results in -&amp;gt; (&#039;&#039;Illegal Instruction Faults&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
- Also with lower versions of GCC compiler, the flag &amp;lt;code&amp;gt;-march=native&amp;lt;/code&amp;gt; is not supported completely (classic issue of legacy compatibility) and throws make errors - (build-time error).&lt;br /&gt;
&lt;br /&gt;
Fix:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;CONFIG_X86_NATIVE_CPU=y&amp;lt;/code&amp;gt; changed to &amp;lt;code&amp;gt;CONFIG_X86_NATIVE_CPU=&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Documentation on the merits/demerits of this feature: https://www.phoronix.com/review/linux-616-x86-native-cpu&lt;/div&gt;</summary>
		<author><name>612303017</name></author>
	</entry>
	<entry>
		<id>https://foss.coep.org.in/coepwiki/index.php?title=Operating_Systems_Odd_Sem_2025-26&amp;diff=38</id>
		<title>Operating Systems Odd Sem 2025-26</title>
		<link rel="alternate" type="text/html" href="https://foss.coep.org.in/coepwiki/index.php?title=Operating_Systems_Odd_Sem_2025-26&amp;diff=38"/>
		<updated>2025-08-22T10:12:45Z</updated>

		<summary type="html">&lt;p&gt;612303017: /* Adding Syscall to Linux kernel (different versions) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Adding Syscall to Linux kernel (different versions) ===&lt;br /&gt;
&lt;br /&gt;
==== Add an entry here for a specific kernel, and then write the specific issues you have faced and their solution or some possible approaches to solving. ====&lt;br /&gt;
[[linux kernel v 6.11.0]]&lt;br /&gt;
&lt;br /&gt;
[[linux kernel v6.16.2]]&lt;/div&gt;</summary>
		<author><name>612303017</name></author>
	</entry>
</feed>