However improbable: The story of a processor bug

Processor problems have been in the news lately, due to the Meltdown and Spectre vulnerabilities. But generally, engineers writing software assume that computer hardware operates in a reliable, well-understood fashion, and that any problems lie on the software side of the software-hardware divide. Modern processor chips routinely execute many billions of instructions in a second, so any erratic behaviour must be very hard to trigger, or it would quickly become obvious.

But sometimes that assumption of reliable processor hardware doesn’t hold. Last year at Cloudflare, we were affected by a bug in one of Intel’s processor models. Here’s the story of how we found we had a mysterious problem, and how we tracked down the cause.

Sherlock_holmes_pipe_hat-1
CC-BY-SA-3.0 image by Alterego

Prologue

Back in February 2017, Cloudflare disclosed a security problem which became known as Cloudbleed. The bug behind that incident lay in some code that ran on our servers to parse HTML. In certain cases involving invalid HTML, the parser would read data from a region of memory beyond the end of the buffer being parsed. The adjacent memory might contain other customers’ data, which would then be returned in the HTTP response, and the result was Cloudbleed.

But Continue reading

oVirt 4.2.2 web admin UI browser bookmarks

oVirt web admin UI now allows the user to bookmark all entities and searches using their browser.

Synchronizing URL with application state

Whenever you select a detail view in the application, the browser URL is now updated to match the selected entity. For instance if you have a VM named MyVM and you click on the name to see the details, the URL of the browser will go to #vms-general;name=MyVM. If you switch to lets say the network interfaces tab the URL in your browser will switch to #vms-network_interfaces;name=MyVM. Changing entity or changing location will keep the browser URL synchronized. This allows you to use your browsers bookmark functionality to store a link to that VM.

Direct linking to entities

As a complementary functionality you can pass arguments to places that will execute some functionality based on the type of argument you have passed in. The following types are available:

  • SEARCH, is for main views only, this allows you to pre populate the search string used in the search bar.
  • NAME, most entities are uniquely named and you can use their name in a detail view to go directly to that named entity.
  • DATACENTER, quota and networks are not uniquely Continue reading

Webinars in 2017

2017 was one of the busiest years since I started the ipSpace.net project.

It started with an Ansible for Networking Engineers session covering advanced Ansible topics and network device configurations. Further sessions of that same webinar throughout 2017 added roles, includes, extending Ansible with dynamic inventory, custom modules and filters, and using NAPALM with Ansible.

Read more ...

Ready for CiscoLive Barcelona? Woot! Woot! See ya there!

In less than 2 weeks CiscoLive Europe 2018 will be in full swing!  And, as usual, I am so incredibly excited!  ?  This happens to me before every CiscoLive…. round about two weeks prior to the start of the event.  I just turn into a super excited little kid.  Like a little kid looking forward to going back to their favorite summer camp.  ?   I’m even already mostly packed.  Teehee.

CiscoLive Barcelona – Plans and Priorities

What is my absolute #1 suggestion to anyone going to a CiscoLive event?  My #1 suggestion regardless if it is your first CiscoLive ever, or like me, your 17th.  My #1 suggestion is – “Begin with the End in Mind“.

  1. Know what your priorities are and then schedule your week accordingly.
  2. Review your priorities for the week during the week multiple times a day
    1. before the day begins
    2. at lunch
    3. at the end of the day

Begin with the End in Mind. Why?  Because, at CiscoLive, there are so many more things to do than you will have time to fit in.   I personally believe it helps to have a priorities list Continue reading

Ready for CiscoLive Barcelona? Woot! Woot! See ya there!

In less than 2 weeks CiscoLive Europe 2018 will be in full swing!  And, as usual, I am so incredibly excited!  ?  This happens to me before every CiscoLive…. round about two weeks prior to the start of the event.  I just turn into a super excited little kid.  Like a little kid looking forward to going back to their favorite summer camp.  ?   I’m even already mostly packed.  Teehee.

CiscoLive Barcelona – Plans and Priorities

What is my absolute #1 suggestion to anyone going to a CiscoLive event?  My #1 suggestion regardless if it is your first CiscoLive ever, or like me, your 17th.  My #1 suggestion is – “Begin with the End in Mind“.

  1. Know what your priorities are and then schedule your week accordingly.
  2. Review your priorities for the week during the week multiple times a day
    1. before the day begins
    2. at lunch
    3. at the end of the day

Begin with the End in Mind. Why?  Because, at CiscoLive, there are so many more things to do than you will have time to fit in.   I personally believe it helps to have a priorities list Continue reading

Remembering Pål Spilling

It is with a heavy heart that I report to Internauts everywhere that one of the early pioneers of the ARPANET and Internet has passed away. Pål Spilling was at the Norwegian Defense Research Establishment (NDRE) at a time when an ARPANET node was installed at Kjeller, Norway. The satellite link was shared between the ARPANET and the Norwegian Seismic Array (NORSAR) system that was used to monitor Soviet underground nuclear testing to assure the tests did not exceed the test ban treaty limits. Together with his colleague, Yngvar Lundh, Pål worked to test early Internet implementation and applications including packetized speech. He was ever an enthusiastic participant in the Internet’s evolution and a steadfast research partner at NDRE and the subsequent institutions who were lucky to have him in their midst. He spent time at University College London with Peter Kirstein’s group and also at SRI International testing packet radio and packet speech applications. More about Pål’s work can be found at his Wikipedia site.

I, for one, will miss Pål greatly but remember his workmanlike involvement over many decades. His name can be found on the Stanford Plaque commemorating the early researchers who participated in the earliest development Continue reading

What is fog computing? Connecting the cloud to things

Fog computing is the concept of a network fabric that stretches from the outer edges of where data is created to where it will eventually be stored, whether that's in the cloud or in a customer’s data center.Fog is another layer of a distributed network environment and is closely associated with cloud computing and the internet of things (IoT). Public infrastructure as a service (IaaS) cloud vendors can be thought of as a high-level, global endpoint for data; the edge of the network is where data from IoT devices is created.Fog computing is the idea of a distributed network that connects these two environments. “Fog provides the missing link for what data needs to be pushed to the cloud, and what can be analyzed locally, at the edge,” explains Mung Chiang, dean of Purdue University’s College of Engineering and one of the nation’s top researchers on fog and edge computing.To read this article in full, please click here