<feed xmlns='http://www.w3.org/2005/Atom'>
<title>pub/users/cem/toxicos.git/src/include, branch master</title>
<subtitle>[no description]</subtitle>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/'/>
<entry>
<title>Add a path parsing mechanism</title>
<updated>2026-03-08T12:47:28+00:00</updated>
<author>
<name>Carlos Maiolino</name>
<email>cem@toxiclabs.cc</email>
</author>
<published>2026-03-08T12:37:37+00:00</published>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/commit/?id=84b464a185d20d8e329b7aad0b482687a9705b58'/>
<id>84b464a185d20d8e329b7aad0b482687a9705b58</id>
<content type='text'>
Now the system can parse paths to files/directories.

It follows the same Unix standard namespace.

For now, only absolute paths are allowed.

The parse mechanism relies on the struct path_part. Which represents
each component on a single path.

All the components are chain-linked through path_part-&gt;next, where the
last path component will have -&gt;next == NULL.

This also introduces path_root struct, which represents the root of
the path.

The first component, linked to path_root-&gt;head, is always the "/" component.

The disk_id represents the disk the root directory is found into. This
should actually (and likely will) be a mountpoint not a disk id.

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now the system can parse paths to files/directories.

It follows the same Unix standard namespace.

For now, only absolute paths are allowed.

The parse mechanism relies on the struct path_part. Which represents
each component on a single path.

All the components are chain-linked through path_part-&gt;next, where the
last path component will have -&gt;next == NULL.

This also introduces path_root struct, which represents the root of
the path.

The first component, linked to path_root-&gt;head, is always the "/" component.

The disk_id represents the disk the root directory is found into. This
should actually (and likely will) be a mountpoint not a disk id.

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>add strncpy helper</title>
<updated>2026-03-08T12:47:28+00:00</updated>
<author>
<name>Carlos Maiolino</name>
<email>cem@toxiclabs.cc</email>
</author>
<published>2026-03-08T12:34:34+00:00</published>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/commit/?id=5ba10e3ee774602e20553091568551e210731fbb'/>
<id>5ba10e3ee774602e20553091568551e210731fbb</id>
<content type='text'>
Also fix a off by one bug in strnlen

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also fix a off by one bug in strnlen

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add NULL definition</title>
<updated>2026-03-08T12:47:28+00:00</updated>
<author>
<name>Carlos Maiolino</name>
<email>cem@toxiclabs.cc</email>
</author>
<published>2026-03-08T12:45:16+00:00</published>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/commit/?id=525d3163a541c3553d88acc5cc2db4cc58b5b42d'/>
<id>525d3163a541c3553d88acc5cc2db4cc58b5b42d</id>
<content type='text'>
Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add strnlen helper</title>
<updated>2026-02-28T12:37:40+00:00</updated>
<author>
<name>Carlos Maiolino</name>
<email>cem@toxiclabs.cc</email>
</author>
<published>2026-02-28T12:37:40+00:00</published>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/commit/?id=d1a48fa371378ff7cc5833958a6f453ee46c4488'/>
<id>d1a48fa371378ff7cc5833958a6f453ee46c4488</id>
<content type='text'>
Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>add strnlen and isdigit helpers</title>
<updated>2026-02-28T12:11:41+00:00</updated>
<author>
<name>Carlos Maiolino</name>
<email>cem@toxiclabs.cc</email>
</author>
<published>2026-02-28T11:48:48+00:00</published>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/commit/?id=7b3f6a5a507a59b613998ef9ad2f14252d993d42'/>
<id>7b3f6a5a507a59b613998ef9ad2f14252d993d42</id>
<content type='text'>
This is missing and will come in handy for path parsing.

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is missing and will come in handy for path parsing.

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>block: Add a simple block layer</title>
<updated>2026-02-24T20:12:39+00:00</updated>
<author>
<name>Carlos Maiolino</name>
<email>cem@toxiclabs.cc</email>
</author>
<published>2026-02-24T20:12:39+00:00</published>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/commit/?id=150499dbea44a4ecf1689990ed915467a14abb02'/>
<id>150499dbea44a4ecf1689990ed915467a14abb02</id>
<content type='text'>
Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mm: enable paging</title>
<updated>2025-10-07T06:18:42+00:00</updated>
<author>
<name>Carlos Maiolino</name>
<email>cem@toxiclabs.cc</email>
</author>
<published>2025-10-07T06:13:55+00:00</published>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/commit/?id=da471de9d1367f6f69b5a5d3a21109b737d31024'/>
<id>da471de9d1367f6f69b5a5d3a21109b737d31024</id>
<content type='text'>
Add infra-structure to enable and manipulate page tables in the
processor.

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add infra-structure to enable and manipulate page tables in the
processor.

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mm: add kzalloc helper</title>
<updated>2025-10-07T06:18:29+00:00</updated>
<author>
<name>Carlos Maiolino</name>
<email>cem@toxiclabs.cc</email>
</author>
<published>2025-10-06T05:31:40+00:00</published>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/commit/?id=44117e4031563d4ff8c0f35302ff21329645a8ab'/>
<id>44117e4031563d4ff8c0f35302ff21329645a8ab</id>
<content type='text'>
Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Enable interrupts only after IDT is set</title>
<updated>2025-09-14T13:11:20+00:00</updated>
<author>
<name>Carlos Maiolino</name>
<email>cem@toxiclabs.cc</email>
</author>
<published>2025-09-14T13:11:20+00:00</published>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/commit/?id=9c7a059f64c86e5026cbbc5c6ae2f48be0f56c0c'/>
<id>9c7a059f64c86e5026cbbc5c6ae2f48be0f56c0c</id>
<content type='text'>
So far we've been playing a dangerous game... We enabled interrupts
before we actually had the interrupt descriptor table setup.

Fix this so we prevent IRQs to fire before the table is initialized
and attempt to run garbage instead of code

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
So far we've been playing a dangerous game... We enabled interrupts
before we actually had the interrupt descriptor table setup.

Fix this so we prevent IRQs to fire before the table is initialized
and attempt to run garbage instead of code

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a kernel heap</title>
<updated>2025-09-14T12:18:41+00:00</updated>
<author>
<name>Carlos Maiolino</name>
<email>cem@toxiclabs.cc</email>
</author>
<published>2025-09-14T12:18:41+00:00</published>
<link rel='alternate' type='text/html' href='http://toxiclabs.cc/cgit.cgi/pub/users/cem/toxicos.git/commit/?id=cd2c4e4a25cb41ca6fe622f0ccf1b1a3dd9d5660'/>
<id>cd2c4e4a25cb41ca6fe622f0ccf1b1a3dd9d5660</id>
<content type='text'>
Use the heap API to implement a 100MiB heap to
be used by the kernel code.

Add example usage to src/kernel.c

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use the heap API to implement a 100MiB heap to
be used by the kernel code.

Add example usage to src/kernel.c

Signed-off-by: Carlos Maiolino &lt;cem@toxiclabs.cc&gt;
</pre>
</div>
</content>
</entry>
</feed>
