<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dnbd3.git/src/server/image.h, branch isfant</title>
<subtitle>Distributed Network Block Device 3 --rewrite for Kernel 3.x</subtitle>
<id>https://git.openslx.org/dnbd3.git/atom/src/server/image.h?h=isfant</id>
<link rel='self' href='https://git.openslx.org/dnbd3.git/atom/src/server/image.h?h=isfant'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/'/>
<updated>2024-07-05T08:48:29+00:00</updated>
<entry>
<title>[SERVER] Verify checksums of all images on SIGUSR1</title>
<updated>2024-07-05T08:48:29+00:00</updated>
<author>
<name>Simon Rettberg</name>
</author>
<published>2024-07-05T08:48:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/commit/?id=ae91f373cf5ce045fe65df022fae151fe915c6c3'/>
<id>urn:sha1:ae91f373cf5ce045fe65df022fae151fe915c6c3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[SERVER] Add FUSE mode</title>
<updated>2020-07-28T15:49:17+00:00</updated>
<author>
<name>Simon Rettberg</name>
</author>
<published>2020-07-28T15:49:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/commit/?id=e4dec3562e6cab27e1a3f40165e4c0d9d0bf05c9'/>
<id>urn:sha1:e4dec3562e6cab27e1a3f40165e4c0d9d0bf05c9</id>
<content type='text'>
Still needs some cleanup and optimizations, variable naming sucks,
comments, etc.
</content>
</entry>
<entry>
<title>[SERVER] Rewrite uplink queue handling</title>
<updated>2020-03-13T15:03:29+00:00</updated>
<author>
<name>Simon Rettberg</name>
</author>
<published>2020-03-13T15:03:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/commit/?id=290d3478f245bb7d2112bb781286a9fbae42b983'/>
<id>urn:sha1:290d3478f245bb7d2112bb781286a9fbae42b983</id>
<content type='text'>
- Now uses linked lists instead of huge array
- Does prefetch data on client requests
- Can have multiple replication requests in-flight
</content>
</entry>
<entry>
<title>[SERVER] Add timer task for saving cache maps</title>
<updated>2020-03-04T16:49:50+00:00</updated>
<author>
<name>Simon Rettberg</name>
</author>
<published>2020-03-04T16:49:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/commit/?id=930b65f26cb39687a113641f56711a2d58f886ca'/>
<id>urn:sha1:930b65f26cb39687a113641f56711a2d58f886ca</id>
<content type='text'>
Cache maps will now be saved periodically, but only if either they have
a "dirty" bit set, which happens if any bits in the map get cleared
again (due to corruption), or if new data has been replicated from an
uplink server. This either means at least one byte received and 5
minutes have passed, or at least 500MB have been downloaded. The timer
currently runs every 20 seconds.
</content>
</entry>
<entry>
<title>[SERVER] Fix checking images without cache map</title>
<updated>2019-10-29T16:55:20+00:00</updated>
<author>
<name>Simon Rettberg</name>
</author>
<published>2019-10-29T16:55:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/commit/?id=3d0c89fccf14599d156696d74224a4fbe0787777'/>
<id>urn:sha1:3d0c89fccf14599d156696d74224a4fbe0787777</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[SERVER] rpc: Add cachemap feature</title>
<updated>2019-09-06T15:32:58+00:00</updated>
<author>
<name>Simon Rettberg</name>
</author>
<published>2019-09-06T15:32:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/commit/?id=701e5a967fd6bc97644f39e6fea3714f49a90291'/>
<id>urn:sha1:701e5a967fd6bc97644f39e6fea3714f49a90291</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[SERVER] Use weakref for cache maps</title>
<updated>2019-08-29T12:49:18+00:00</updated>
<author>
<name>Simon Rettberg</name>
</author>
<published>2019-08-29T12:49:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/commit/?id=88695877f085af475a6ca8a01c2fbb08eb5b15da'/>
<id>urn:sha1:88695877f085af475a6ca8a01c2fbb08eb5b15da</id>
<content type='text'>
Gets rid of a bunch of locking, especially the hot path in net.c where
clients are requesting data. Many clients unsing the same incomplete
image previously created a bottleneck here.
</content>
</entry>
<entry>
<title>[SERVER] Refactor uplink/cache handling, improve crc checking</title>
<updated>2018-07-04T12:39:43+00:00</updated>
<author>
<name>Simon Rettberg</name>
</author>
<published>2018-07-04T12:39:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/commit/?id=053ca3b9a9601467d5ce30c56c3cea078c897f57'/>
<id>urn:sha1:053ca3b9a9601467d5ce30c56c3cea078c897f57</id>
<content type='text'>
The cacheFd is now moved to the uplink data structure and will
only be handled by the uplink thread.
The integrity checker now supports checking all blocks of an
image. This will be triggered automatically whenever a check for
a single block failed.
Also, if a crc check on startup fails, the image won't be discarded
anymore, but rather a full check will be initiated.
Furthermore, when calling image_updateCacheMap() on an image that
was previously complete, the cache map will now be re-initialized,
and a new uplink connection created.
</content>
</entry>
<entry>
<title>[SERVER] Try to re-open cacheFd if writing fails</title>
<updated>2018-06-25T13:57:50+00:00</updated>
<author>
<name>Simon Rettberg</name>
</author>
<published>2018-06-25T13:57:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/commit/?id=b4c1fe882758c077fc9bd48599653b147dae3c8a'/>
<id>urn:sha1:b4c1fe882758c077fc9bd48599653b147dae3c8a</id>
<content type='text'>
In scenarios where the proxy is using an NFS server as
storage (for whatever crazy reason) or when the cacheFd
goes bad through e.g. a switchroot, try to re-open it
instead of just disabling caching forever.
</content>
</entry>
<entry>
<title>[SERVER] Make sure image has read fd before reading</title>
<updated>2018-06-13T14:14:39+00:00</updated>
<author>
<name>Simon Rettberg</name>
</author>
<published>2018-06-13T14:14:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/dnbd3.git/commit/?id=6c87083685744b6aa899de50128ab74ef8f89982'/>
<id>urn:sha1:6c87083685744b6aa899de50128ab74ef8f89982</id>
<content type='text'>
</content>
</entry>
</feed>
