<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: rzezeski</title><link>https://news.ycombinator.com/user?id=rzezeski</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 10 Oct 2026 04:14:25 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=rzezeski" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by rzezeski in "Our $445M Series D"]]></title><description><![CDATA[
<p>> I apply for jobs because I want money. Not to reflect or learn about myself.<p>We are not the same.</p>
]]></description><pubDate>Fri, 09 Oct 2026 19:41:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=50025679</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=50025679</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50025679</guid></item><item><title><![CDATA[New comment by rzezeski in "On the Costs of Syscalls (2021)"]]></title><description><![CDATA[
<p>I wrote a detailed walk-through of the illumos syscall handler back in 2016. It's missing the updates around KPTI (meltdown mitigation), but other than that the mechanisms should be unchanged.<p><a href="https://zinascii.com/2016/the-illumos-syscall-handler.html" rel="nofollow">https://zinascii.com/2016/the-illumos-syscall-handler.html</a></p>
]]></description><pubDate>Tue, 30 Jan 2024 13:00:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=39189579</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=39189579</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39189579</guid></item><item><title><![CDATA[New comment by rzezeski in "Hunting a bug in the i40e Intel driver"]]></title><description><![CDATA[
<p>Probably more to do with the fact that everything is moving towards virtualization. Oftentimes these NICs dole out VFs directly to VMs via SR-IOV, in which case I imagine the NIC controller has some safeguards to keep the host and the rest of the guest's safe from denial-of-service and other attacks from a malicious guest driver.</p>
]]></description><pubDate>Fri, 30 Jul 2021 03:22:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=28004091</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=28004091</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28004091</guid></item><item><title><![CDATA[New comment by rzezeski in "Hunting a bug in the i40e Intel driver"]]></title><description><![CDATA[
<p>> During those tests, we noticed the machines were randomly freezing after some time, so we decided to upgrade the firmware of the network cards,<p>Reminds me of the various i40e Tx freezes I debugged while at Joyent. Granted, this is the illumos driver, not Intel's, but basically there were issues with the programming guide that I had to figure out the hard way. The 700-series controllers have not been the easiest to work with.<p><a href="https://smartos.org/bugview/OS-7492" rel="nofollow">https://smartos.org/bugview/OS-7492</a> [Tx freeze when b_cont chain exceeds 8 descriptors]<p><a href="https://smartos.org/bugview/OS-7457" rel="nofollow">https://smartos.org/bugview/OS-7457</a> [i40e Tx freezes on zero descriptors]</p>
]]></description><pubDate>Thu, 29 Jul 2021 22:40:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=28002336</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=28002336</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28002336</guid></item><item><title><![CDATA[New comment by rzezeski in "Illumos is a Unix operating system which provides next-generation features"]]></title><description><![CDATA[
<p>You just figured it out.</p>
]]></description><pubDate>Mon, 04 Nov 2019 18:38:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=21444823</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=21444823</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21444823</guid></item><item><title><![CDATA[Notes on the History of Fork and Join]]></title><description><![CDATA[
<p>Article URL: <a href="http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7548985">http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7548985</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=12394415">https://news.ycombinator.com/item?id=12394415</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 30 Aug 2016 22:17:58 +0000</pubDate><link>http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&amp;arnumber=7548985</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=12394415</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=12394415</guid></item><item><title><![CDATA[New comment by rzezeski in "How My Printer Caused Excessive Syscalls and UDP Traffic"]]></title><description><![CDATA[
<p>That's a good question.  I should have mentioned that in the post perhaps.  The reason I initially ran vmstat was just to make sure my dev machine was "zeroed out".  Recently my kernel builds had taken twice the time as normal and I wasn't sure why.  That's when I noticed this.  It turns out this had no significant effect on my build times but was rather an effect of a different change I made weeks prior.  I also noticed no ill effects on my laptop that I recall.</p>
]]></description><pubDate>Thu, 06 Nov 2014 16:47:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=8567919</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=8567919</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8567919</guid></item><item><title><![CDATA[How My Printer Caused Excessive Syscalls and UDP Traffic]]></title><description><![CDATA[
<p>Article URL: <a href="http://zinascii.com/2014/how-my-printer-caused-excessive-syscalls.html">http://zinascii.com/2014/how-my-printer-caused-excessive-syscalls.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=8565161">https://news.ycombinator.com/item?id=8565161</a></p>
<p>Points: 90</p>
<p># Comments: 16</p>
]]></description><pubDate>Thu, 06 Nov 2014 00:32:14 +0000</pubDate><link>http://zinascii.com/2014/how-my-printer-caused-excessive-syscalls.html</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=8565161</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8565161</guid></item><item><title><![CDATA[New comment by rzezeski in "Most operating systems have implemented realtime signals incorrectly"]]></title><description><![CDATA[
<p>According to POSIX.1b RT signals are used for other features defined in .1b.  An excerpt from "POSIX.4 Programmers Guide":<p>> So far, we've talked about real-time signals sent by the sigqueue function. However, most POSIX.4 signals are sent as a result of three other facilities in POSIX.4. We'll cover these facilities in detail in their own chapters, but for now, you need to know that realtime signals can be generated as a result of expiration of a POSIX.4 timer, completion of asynchronous I/O, and by arrival of a message on an empty message queue.<p>Linux reserves 2-3 RT signals for use in its threading library:<p><a href="http://man7.org/linux/man-pages/man7/signal.7.html" rel="nofollow">http://man7.org/linux/man-pages/man7/signal.7.html</a></p>
]]></description><pubDate>Mon, 03 Nov 2014 16:44:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=8551749</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=8551749</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8551749</guid></item><item><title><![CDATA[New comment by rzezeski in "Most operating systems have implemented realtime signals incorrectly"]]></title><description><![CDATA[
<p>All kernels do not use the same libc.  In fact, Linux is different in the fact that it doesn't ship a libc with the kernel.  Illumos, the OS I investigated, goes by the philosophy that you _have_ to ship libc with your kernel, and thus they have their own libc.<p>My diagnosis for Illumos may not hold up on other OSs, they may invert priority for other reasons.  In any case the spec is fairly clear that a signal is considered delivered when the "appropriate action" is taken.  In this case the appropriate action is to invoke the user's handler, which is above libc on the stack.<p>Finally, in case you missed it, I witnessed 4 unique orderings across the systems I tested.  They were not the same across the board.</p>
]]></description><pubDate>Mon, 03 Nov 2014 16:16:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=8551545</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=8551545</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8551545</guid></item><item><title><![CDATA[Most operating systems have implemented realtime signals incorrectly]]></title><description><![CDATA[
<p>Article URL: <a href="http://zinascii.com/2014/crossed-signals.html">http://zinascii.com/2014/crossed-signals.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=8550829">https://news.ycombinator.com/item?id=8550829</a></p>
<p>Points: 105</p>
<p># Comments: 23</p>
]]></description><pubDate>Mon, 03 Nov 2014 14:17:11 +0000</pubDate><link>http://zinascii.com/2014/crossed-signals.html</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=8550829</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8550829</guid></item><item><title><![CDATA[New comment by rzezeski in "The 8-Byte Two-Step"]]></title><description><![CDATA[
<p>Author here, I won't get to it today but I would like to try the method you describe.  I realize that benchmarking is a very tricky thing having followed Brendan Gregg's work the last couple of years.  This is why I also ran my baseline benchmark which simply performed a ret.  I learned years ago from tuning cars that absolute numbers are less interesting than relative.  That said, I am a total newb at low-level stuff like this and I would not be surprised if I messed something up.  I'll be curious to use your method and see how it compares.</p>
]]></description><pubDate>Sat, 20 Sep 2014 22:26:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=8345768</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=8345768</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8345768</guid></item><item><title><![CDATA[New comment by rzezeski in "The 8-Byte Two-Step"]]></title><description><![CDATA[
<p>Hi, author here.  My align_2 implementation is indeed very naive.  Part of that was to show just how much overhead a naive implementation could add, in this case 3 orders of magnitude.  I'm also new to systems programming.  This article should serve as a reminder to experienced hackers that idioms are often only obvious _after_ they've been explained.  My last 4 years were spent working on a distributed database; I could bring up "obvious" idioms from that world that might perplex a kernel hacker.<p>But you are right, this is indeed a very obvious line of code once you understand it.  Thank you for your comments.</p>
]]></description><pubDate>Sat, 20 Sep 2014 22:16:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=8345742</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=8345742</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8345742</guid></item><item><title><![CDATA[The 8-Byte Two-Step]]></title><description><![CDATA[
<p>Article URL: <a href="http://zinascii.com/2014/the-8-byte-two-step.html">http://zinascii.com/2014/the-8-byte-two-step.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=8345410">https://news.ycombinator.com/item?id=8345410</a></p>
<p>Points: 48</p>
<p># Comments: 31</p>
]]></description><pubDate>Sat, 20 Sep 2014 19:48:35 +0000</pubDate><link>http://zinascii.com/2014/the-8-byte-two-step.html</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=8345410</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8345410</guid></item><item><title><![CDATA[A Posix Queue Implementation]]></title><description><![CDATA[
<p>Article URL: <a href="http://zinascii.com/2014/a-posix-queue-implementation.html">http://zinascii.com/2014/a-posix-queue-implementation.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=8303897">https://news.ycombinator.com/item?id=8303897</a></p>
<p>Points: 88</p>
<p># Comments: 13</p>
]]></description><pubDate>Thu, 11 Sep 2014 17:36:34 +0000</pubDate><link>http://zinascii.com/2014/a-posix-queue-implementation.html</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=8303897</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8303897</guid></item><item><title><![CDATA[New comment by rzezeski in "Riak 2.0.0 RC1"]]></title><description><![CDATA[
<p>Not only that, why make every user reimplement the same resolution strategies?  Or make Basho dev's reimplement them for each official client?  You'll increase the chance for bugs or subtle semantic differences.  Also, many users don't know or want to understand conflict resolution.  They want a data structure that just "does the right thing".  This is most easily achieved by baking it into the database itself.<p>Disclaimer: Former Basho developer with a lot of pride in the 2.0 release.</p>
]]></description><pubDate>Mon, 21 Jul 2014 22:12:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=8066327</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=8066327</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8066327</guid></item><item><title><![CDATA[New comment by rzezeski in "Fly the Airplane"]]></title><description><![CDATA[
<p>There may be more to the situation.  I wonder if Normalcy Bias also played a role in Air France 447.</p>
]]></description><pubDate>Fri, 16 Dec 2011 14:31:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=3360779</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=3360779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3360779</guid></item><item><title><![CDATA[New comment by rzezeski in "Riak 1.0"]]></title><description><![CDATA[
<p>Replicas (or as you put it, ring replication) is critical, and Riak very much has replicas.  What it doesn't have in it's open source version is multi-ring replication (cross DC) which is a separate concern.<p>In the Dynamo paper the ring spans DCs but they also have a very different network than most that allows them to do that.  In Riak it is recommended that each ring is contained in a single DC.  If you want ring-to-ring replication from Basho then you can pay for Riak EDS.  You could also build it yourself as others have mentioned (Kresten Krab Thorup has done something like this in Riak Mobile [1]).<p>Nothing is stopping you from running a single ring (cluster) across DCs, and it might even be okay for certain apps, but it's not a choice that should be taken lightly.  In general, if you don't understand the tradeoffs you're making in that regard  then it's best to stick to one ring, one DC.<p>[1]: <a href="http://www.erlang-factory.com/upload/presentations/413/ErlangFactory2011_KrestenKrabThorup_RiakSync.pdf" rel="nofollow">http://www.erlang-factory.com/upload/presentations/413/Erlan...</a></p>
]]></description><pubDate>Tue, 27 Sep 2011 22:31:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=3045539</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=3045539</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3045539</guid></item><item><title><![CDATA[New comment by rzezeski in "The Three Slide Rule"]]></title><description><![CDATA[
<p>I agree in general with the sentiment but don't like rule of an absolute # of slides.  To this day one of the best presentations I've ever seen had 500+ slides and is an example of what a good presentation looks/feels like.<p><a href="http://www.infoq.com/presentations/archaeopteryx-bowkett" rel="nofollow">http://www.infoq.com/presentations/archaeopteryx-bowkett</a></p>
]]></description><pubDate>Tue, 13 Sep 2011 17:34:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=2992469</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=2992469</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=2992469</guid></item><item><title><![CDATA[New comment by rzezeski in "MongoDB 2.0 Released"]]></title><description><![CDATA[
<p>I work at Basho.  Specifically I've been doing a lot of work on Riak Search lately.  I absolutely agree that the Search documentation is underwhelming and could use some major love.  I take it as a personal challenge to improve the situation before the 1.0 release comes out.<p>That aside, you might like to know that for the 1.0 release Search is bundled along with the standard Riak package (you just need to set a flag to enable it).  You can try using the latest pre-release or even build from source on master or the 1.0 branch.  If you don't actually need full-text search then you could also checkout Riak's new support for secondary indexes.  Please drop a line on the mailing list or IRC if you have questions.</p>
]]></description><pubDate>Tue, 13 Sep 2011 00:07:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=2989407</link><dc:creator>rzezeski</dc:creator><comments>https://news.ycombinator.com/item?id=2989407</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=2989407</guid></item></channel></rss>