Skip to main content

Gilles Chehade

Roses are red, violets are blue, can’t be fucked to write this, so lorem ipsum for you.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec porttitor ultrices leo, sed mattis dolor iaculis sed. Pellentesque et suscipit dolor. Suspendisse tincidunt tempor vulputate. Phasellus ultrices rutrum vehicula. Mauris elementum tincidunt dapibus. Nam accumsan nisi quis hendrerit cursus. Nulla felis lectus, mattis vitae felis et, ultricies interdum ex. Donec consequat risus et nunc sodales, vel pharetra ante pellentesque. Praesent at sodales sapien, ac semper ante. Nulla facilisi.

Sed pulvinar eu ipsum et malesuada. Proin in porttitor dolor. Fusce non risus magna. Mauris vehicula convallis tristique. Morbi faucibus nunc in velit tempus interdum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla aliquam venenatis nulla, tincidunt sollicitudin erat commodo blandit. Nulla sodales mollis nibh. Duis scelerisque posuere nulla sed egestas. Donec dui arcu, bibendum id risus eu, cursus interdum lectus. Aliquam interdum scelerisque risus eget aliquet.

2023, a retrospective.

·965 words·5 mins
TL;DR: A personal retrospective of 2023 2023 was a rough year # I usually enjoy doing these yearly posts, looking back at what I did and planning what I’ll do, but 2023 was a rough year. I’m glad it’s over.

Plakar: an avalanche of changes

·2625 words·13 mins
TL;DR: Significant refactoring to improve its performance, implemented read and write semaphores to throttle chunkers and reduce memory usage, introduced a repository index and packfiles to decrease the number of I/O operations, also intrioduced a new HTTP storage backend. A ton of refactors # I’ve done so much work on plakar in the past few weeks that I don’t even know what to begin with…

Plakar: a TON of changes

·3855 words·19 mins
TL;DR: TL;DR: a lot of work in plakar, but also on CDC and index optimization. Optimized go-fastcdc # I ran into a benchmark which included my implementation of the FastCDC algorithm, and it made me realise that it was not on par with alternative implementations:

Building my own guitar, part 4

·325 words·2 mins
TL;DR: Came back from vacation, started working on the neck but realised I really needed more tools. Luckily, I could get some that weren’t too expensive. Working on the head # I had ordered and received this neck, which fits nicely, but I wanted to rework the head a bit so it looked a little less PRSey. Unfortunately, after spending an hour trying to manually reshape and sand, I figured I was doing it wrong and needed some automated tools… otherwise I’d still be working on the head in December.

Plakar: snapshot forking and tagging

·2064 words·10 mins
TL;DR: plakar gained two minor features, snapshots fork-ing and snapshots tagging, which makes it possible to unlock several major new features in a relatively short future. Plakar is not only for backups # If you have followed my work on this project, you may have assumed that plakar was intended solely for backups: it’s not entirely the case.

Implementing a system call for OpenBSD

·3090 words·15 mins
TL;DR: I found a printed copy of an assignment I had to do in 2005 back when I was a student to implement a system call for OpenBSD and Linux. I lost the original LaTeX file so I decided to rewrite it so I have a digital copy. The article originally covered loadable kernel modules (LKM) which is no longer a thing in OpenBSD, I trimmed that part. I also trimmed the Linux part because I didn’t care about it back then and did the minimum to pass ;-) This article is translated from French. Disclaimer # The content of this post is based on an assignment I wrote in 2005, back when I was a student at Epitech, so things have probably changed and this is by no means a tutorial: please don’t write system calls and don’t submit them to OpenBSD… unless you’ve been told it’s a good idea by OpenBSD developers.