<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://etherboot.org/wiki/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://etherboot.org/wiki/feed.php">
        <title>Etherboot/gPXE Wiki soc:2010:peper:journal</title>
        <description></description>
        <link>http://etherboot.org/wiki/</link>
        <image rdf:resource="http://etherboot.org/wiki/lib/tpl/monobook/images/favicon.ico" />
       <dc:date>2026-06-22T15:29:49-07:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/start?rev=1275416602&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week0?rev=1275416775&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week1?rev=1275781254&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week2?rev=1276198125&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week3?rev=1276558001&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week4?rev=1278017448&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week5?rev=1278017404&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week6?rev=1278016869&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week7?rev=1278432873&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week8?rev=1279133548&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week9?rev=1281279482&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week10?rev=1280614382&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week11?rev=1281276271&amp;do=diff"/>
                <rdf:li rdf:resource="http://etherboot.org/wiki/soc/2010/peper/journal/week12?rev=1281626713&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://etherboot.org/wiki/lib/tpl/monobook/images/favicon.ico">
        <title>Etherboot/gPXE Wiki</title>
        <link>http://etherboot.org/wiki/</link>
        <url>http://etherboot.org/wiki/lib/tpl/monobook/images/favicon.ico</url>
    </image>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/start?rev=1275416602&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-06-01T11:23:22-07:00</dc:date>
        <title>soc:2010:peper:journal:start</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/start?rev=1275416602&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Journal

	*  Previous work|Prior to 24 May 2010
	*  Week 1  [ May 24 - May 30 ]
	*  Week 2  [ May 31 - Jun  6 ]
	*  Week 3  [ Jun  7 - Jun 13 ]
	*  Week 4  [ Jun 14 - Jun 20 ]
	*  Week 5  [ Jun 21 - Jun 27 ]
	*  Week 6  [ Jun 28 - Jul  4 ]
	*  Week 7  [ Jul  5 - Jul 11 ]
	*  Week 8  [ Jul 12 - Jul 18 ]
	*  Week 9  [ Jul 19 - Jul 25 ]
	*  Week 10 [ Jul 26 - Aug  1 ]
	*  Week 11 [ Aug  2 - Aug  8 ]
	*  Week 12 [ Aug  9 - Aug 15 ]</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week0?rev=1275416775&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-06-01T11:26:15-07:00</dc:date>
        <title>soc:2010:peper:journal:week0</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week0?rev=1275416775&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Previous work [ Prior to 24 May 2010 ]

Unrelated work

Before I even started thinking about a proposal for my project I decided to do some pretty much random unrelated work to get a better feeling of gPXE in general. This resulted in a few trivial patches:</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week1?rev=1275781254&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-06-05T16:40:54-07:00</dc:date>
        <title>soc:2010:peper:journal:week1</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week1?rev=1275781254&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 1  [ 24 May - 30 May 2010 ]

Monday, 24 May 2010

	*  Refreshed my gPXE memory a little
	*  Had a meeting with Josh:
		*  Went over my previous work
		*  Decided upon the tasks for the nearest and more distant future</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week2?rev=1276198125&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-06-10T12:28:45-07:00</dc:date>
        <title>soc:2010:peper:journal:week2</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week2?rev=1276198125&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 2  [ 31 May - 6 Jun 2010 ]

Cleanup and command line options

I have pretty much finished the cleanup and also added command line options.
Multiple commits in the linux branch, but especially:

	*  [linux] Add device, drivers and initialization logic</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week3?rev=1276558001&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-06-14T16:26:41-07:00</dc:date>
        <title>soc:2010:peper:journal:week3</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week3?rev=1276558001&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 3  [ 7 Jun - 13 Jun 2010 ]

Getting rid of the stdlib dep

I have finished the stdlib-free implementation. It's available on the linux branch. Most of the new stuff is in these commits:

	*  [linux] Add linuxprefix</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week4?rev=1278017448&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-07-01T13:50:48-07:00</dc:date>
        <title>soc:2010:peper:journal:week4</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week4?rev=1278017448&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 4 [ 14 Jun - 20 Jun 2010 ]

Wiki

Added/updated:

	*  Being self-contained (libc-free)

valgrind

I have started working on valgrind. See week 6 for report.</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week5?rev=1278017404&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-07-01T13:50:04-07:00</dc:date>
        <title>soc:2010:peper:journal:week5</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week5?rev=1278017404&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 5 [  Jun 21 - Jun 27 2010 ]

Although I have managed to do some work during the week I have been mostly busy at uni so I will call this week the slackweek and leave it at that. See next week for work report.</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week6?rev=1278016869&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-07-01T13:41:09-07:00</dc:date>
        <title>soc:2010:peper:journal:week6</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week6?rev=1278016869&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 6 [  Jun 28 - Jul 4  2010 ]

In the spirit of not building up the journal slackpile even more I will try to keep it up-to-date since now and work on the past in the meantime.

valgrind

The last 2 weeks (including a break for exams at uni) I have been working on making the usermode gPXE valgrindable.
You may ask what's there to do as valgrind usually works out of the box for most applications.
And that's a very good question, the thing is t…</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week7?rev=1278432873&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-07-06T09:14:33-07:00</dc:date>
        <title>soc:2010:peper:journal:week7</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week7?rev=1278432873&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 7 [ Jul 5 - Jul 11 2010 ]

drivers in userspace

After a lot of reading and trial and error I have managed to come up with a working, but awfully hacky proof of concept:


# ./pcnet32.linuxlibc 
gPXE initialising devices...



gPXE 1.0.1+ -- Open Source Boot Firmware -- http://etherboot.org
Features: HTTP DNS TFTP
DHCP (net0 52:54:00:12:34:58).... ok
http://root.piotrj.org/files/gpxe/1mb. ok</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week8?rev=1279133548&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-07-14T11:52:28-07:00</dc:date>
        <title>soc:2010:peper:journal:week8</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week8?rev=1279133548&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 8 [  Jul 12 - Jul 18 2010 ]

valgrind

I wasn't supposed to work on valgrind related stuff, but the following report keeps nagging me:


==31509== 360 bytes in 1 blocks are still reachable in loss record 4 of 5
==31509==    at 0x402C2E: realloc (malloc.c:316)
==31509==    by 0x402DCE: malloc (malloc.c:351)
==31509==    by 0x402DDC: zalloc (malloc.c:382)
==31509==    by 0x404FF8: alloc_netdev (netdevice.c:329)
==31509==    by 0x404185: alloc…</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week9?rev=1281279482&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-08-08T07:58:02-07:00</dc:date>
        <title>soc:2010:peper:journal:week9</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week9?rev=1281279482&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 9 [ Jul 19 - Jul 25 2010 ]

drivers in userspace

I have just pushed my drivers in userspace branch. It's still a bit rough but it gets the job done. See next week's report for an issue that particularly bugs me. Before getting into details of the implementation let's see a quick HOWTO first:</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week10?rev=1280614382&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-07-31T15:13:02-07:00</dc:date>
        <title>soc:2010:peper:journal:week10</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week10?rev=1280614382&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 10 [ Jul 26 - Aug 1 2010 ]

drivers in userspace

The big issue

There is one thing that keeps bugging me in the drivers branch - UIO-DMA and malloc.
UIO-DMA does the DMA mappings on a per device basis (as does kernel). I am
not sure whether the mappings are really per device or global, but the</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week11?rev=1281276271&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-08-08T07:04:31-07:00</dc:date>
        <title>soc:2010:peper:journal:week11</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week11?rev=1281276271&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 11 [ Aug 2 - Aug 8 2010 ]

drivers in userspace

Addressing spaces

First a bit of background. There are four different kind of addresses in gPXE:

	*  virtual - these are the ones you can access directly in gPXE via normal pointer derefence</description>
    </item>
    <item rdf:about="http://etherboot.org/wiki/soc/2010/peper/journal/week12?rev=1281626713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-08-12T08:25:13-07:00</dc:date>
        <title>soc:2010:peper:journal:week12</title>
        <link>http://etherboot.org/wiki/soc/2010/peper/journal/week12?rev=1281626713&amp;do=diff</link>
        <description>Piotr Jaroszyński: Usermode debugging under Linux

Week 12 [ Aug 9 - Aug 15 2010 ]

drivers in userspace

Josh did a thorough review of the drivers branch, thanks Josh! Apart from smaller things the two bigger issues were:

	*  Implementing bus_to_phys() as some drivers do need it (mostly indirectly via bus_to_virt())</description>
    </item>
</rdf:RDF>
