Boot Interrupt Quirks and (RealTime) Interrupt Handling on x86. Olaf Dabrunz, Stefan Assmann

Size: px
Start display at page:

Download "Boot Interrupt Quirks and (RealTime) Interrupt Handling on x86. Olaf Dabrunz, Stefan Assmann"

Transcription

1 Boot Interrupt Quirks and (RealTime) Interrupt Handling on x86 Olaf Dabrunz, Stefan Assmann

2 Overview 1. Interrupt Handling 2. RT Interrupt Handling is a bit Different 3. So all is well, no? 4. x86 Interrupt Routing Overview 5. Boot Interrupts 6. Fixing it in Software 7. What's in it for you 2

3 Interrupt Handling Device sends an Interrupt Request (IRQ) to the CPU Ethernet card receives a packet Mouse is moved IRQ handler services the device Normal processing continues We will show IRQ handling using IRQ 10 as example 3

4 Interrupt Handling (non-shared) Hardware Software Network Card IRQ IRQ 10 eth IRQ Handler 4

5 Interrupt Handling (shared) Hardware Software Network Card Sound Card IRQ IRQ 10 eth IRQ Handler sound IRQ Handler 5

6 Overview 1. Interrupt Handling 2. RT Interrupt Handling is a bit Different 3. So all is well, no? 4. x86 Interrupt Routing Overview 5. Boot Interrupts 6. Fixing it in Software 7. What's in it for you 6

7 IRQ Handling - Vanilla vs. RT Vanilla IRQ 10 IRQ 10 Handler 7 Blocks CPU (Interrupts deactivated) Other programs can run (Interrupts activated)

8 IRQ Handling - Vanilla vs. RT Vanilla IRQ 10 IRQ 10 Handler IRQ 10 Thread 10 waker wake up thread Threaded IRQ 10 Handler RealTime 8 Blocks CPU (Interrupts deactivated) Other programs can run (Interrupts activated)

9 Threaded IRQ Handling Low latency The CPU is only blocked for a short time High-priority programs are delayed for shorter periods of time Realtime programs need this 9

10 RT IRQ Handling Really cool! :) IRQ 10 Thread 10 waker wake up thread Threaded IRQ 10 Handler RealTime 10 Blocks CPU (Interrupts deactivated) Other programs can run (Interrupts activated)

11 Threaded IRQ Handler Problem After waking up the thread, IRQ is delivered again IRQ 10 IRQ 10 Thread 10 waker wake up thread Threaded IRQ 10 Handler 11 Blocks CPU (Interrupts deactivated) Other programs can run (Interrupts activated)

12 Threaded IRQ Handler: Solution Mask IRQ until IRQ thread handled it Prevent device from delivering same IRQ again IRQ 10 pending on device IRQ 10 Thread 10 waker wake up thread Threaded IRQ 10 Handler IRQ 10 is masked 12 Blocks CPU (Interrupts deactivated) Other programs can run (Interrupts activated)

13 Overview 1. Interrupt Handling 2. RT Interrupt Handling is a bit Different 3. So all is well, no? 4. x86 Interrupt Routing Overview 5. Boot Interrupts 6. Fixing it in Software 7. What's in it for you 13

14 Nobody cared!? irq 16: nobody cared (try booting with the "irqpoll" option) Call Trace: [<ffffffff80278dae>] report_bad_irq+0x1e/0x80 [<ffffffff802790be>] note_interrupt+0x2ae/0x2e0 [<ffffffff d>] thread_simple_irq+0x7d/0xa0 [<ffffffff80278bf3>] do_irqd+0x233/0x3a0 [<ffffffff802789c0>] do_irqd+0x0/0x3a0 [<ffffffff802789c0>] do_irqd+0x0/0x3a0 [<ffffffff b>] kthread+0x4b/0x80 [<ffffffff8020ae98>] child_rip+0xa/0x12 [<ffffffff8021ceb0>] lapic_next_event+0x0/0x10 [<ffffffff >] kthread+0x0/0x80 [<ffffffff8020ae8e>] child_rip+0x0/0x12 14

15 Problem: no Handler for this Device Hardware Software Network Card Sound Card IRQ IRQ 16 eth IRQ Handler sound IRQ Handler 15

16 Nobody cared! Kernel tries to find origin of interrupt Loop through handlers on IRQ Line No handler is found that could handle the interrupt Interrupt is counted as unhandled Unhandled interrupts are called Spurious Interrupts Kernel tracks Spurious Interrupts IRQ line disabled when too many Spurious Interrupts IRQ nobody cared message 16

17 Consequences Devices stop working System may hang System breaks 17

18 Overview 1. Interrupt Handling 2. RT Interrupt Handling is a bit Different 3. So all is well, no? 4. x86 Interrupt Routing Overview 5. Boot Interrupts 6. Fixing it in Software 7. What's in it for you 18

19 IRQ Routing PIC Southbridge IO-APIC Interrupts can be processed by the PIC and/or IO- APIC 19

20 IRQ Routing with PIC only PIC Southbridge IO-APIC Interrupts are processed by the PIC IO-APIC lines are masked 20

21 IRQ Routing with APIC only PIC Southbridge IO-APIC Interrupts are processed by the IO-APIC PIC lines are masked 21

22 Overview 1. Interrupt Handling 2. RT Interrupt Handling is a bit Different 3. So all is well, no? 4. x86 Interrupt Routing Overview 5. Boot Interrupts 6. Fixing it in Software 7. What's in it for you 22

23 What s a Boot Interrupt anyway? Boot Interrupts are generated by (PCI) Bus Bridges Deliver IRQs from other buses to the PIC during boot Boot Interrupt PIC Southbridge IO-APIC 0 IRQ Device X IRQ IO-APIC 1 PCI Bridge

24 Boot Interrupts and RT 1. IRQ on non-primary bus is delivered to CPU Delivered by non-primary IO-APIC PIC Southbridge IO-APIC 0 Device X IRQ IO-APIC 1 PCI Bridge IRQ 42 24

25 Boot Interrupts and RT 2. Handler masks IRQ, Boot Interrupt is generated Delivered through primary IO-APIC PIC Boot Interrupt Southbridge IO-APIC 0 IRQ Device X IRQ IO-APIC 1 PCI Bridge

26 Boot Interrupts and RT 3. Spurious IRQ 16 (Device X Handler not installed) IRQ 16 might get disabled by kernel!!! PIC Boot Interrupt Southbridge IO-APIC 0 IRQ Device X IRQ IO-APIC 1 PCI Bridge

27 Boot Interrupts and RT 4. What we see in the system Multiple Interrupts delivered based on single IRQ PIC Southbridge Boot Interrupt IO-APIC 0 IRQ 16 Device X IRQ IO-APIC 1 PCI Bridge IRQ 42 27

28 Overview 1. Interrupt Handling 2. RT Interrupt Handling is a bit Different 3. So all is well, no? 4. x86 Interrupt Routing Overview 5. Boot Interrupts 6. Fixing it in Software 7. What's in it for you 28

29 Disable Delivery of Boot IRQs " Disabling Boot Interrupts is chipset specific " Not possible with every chipset PIC Boot Interrupt Southbridge IO-APIC 0 Device X IRQ IO-APIC 1 PCI Bridge IRQ 42 29

30 Reroute to Boot Interrupt " Move IRQ Handler to primary IO-APIC " Very deep chipset knowledge necessary PIC Boot Interrupt Southbridge IO-APIC 0 IRQ 16 Device X IRQ IO-APIC 1 PCI Bridge IRQ 42 30

31 Overview 1. Interrupt Handling 2. RT Interrupt Handling is a bit Different 3. So all is well, no? 4. x86 Interrupt Routing Overview 5. Boot Interrupts 6. Fixing it in Software 7. What's in it for you 31

32 What's in it for you? " Threaded IRQ Handler works with today's hardware " Faster Response Times during IRQ Processing " Buggy IRQ Handlers do not bring the system down that easily " Threaded IRQ Handlers are easier to debug 32

33 What's next Get Threaded IRQ Handler upstream Talk to vendors to make disabling of Boot Interrupts possible put the disable bit in a common place 33

34 More details and Acknowledgements Git repository git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip.git Branch pci-ioapic-boot-irq-quirks Additional slides on the conference web page Acknowledgements for many discussions go to Alexander Graf, Hannes Reinecke, Torsten Duwe, Ihno Krumreich, Daniel Gollub, Sven-Thorsten Dietrich, Thomas Gleixner and Maciej W. Rozycki 34

35 More details and Acknowledgements Git repository git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip.git Branch pci-ioapic-boot-irq-quirks Additional slides on the conference web page Acknowledgements for many discussions go to Alexander Graf, Hannes Reinecke, Torsten Duwe, Ihno Krumreich, Daniel Gollub, Sven-Thorsten Dietrich, Thomas Gleixner and Maciej W. Rozycki Questions? 35

36 License This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 Germany License. To view a copy of this license, visit or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. General Disclaimer This document is not to be construed as a promise by any participating company to develop, deliver, or market a product. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. Novell, Inc. makes no representations or warranties with respect to the contents of this document, and specifically disclaims any express or implied warranties of merchantability or fitness for any particular purpose. The development, release, and timing of features or functionality described for Novell products remains at the sole discretion of Novell. Further, Novell, Inc. reserves the right to revise this document and to make changes to its content, at any time, without obligation to notify any person or entity of such revisions or changes. All Novell marks referenced in this presentation are trademarks or registered trademarks of Novell, Inc. in the United States and other countries. All third-party trademarks are the property of their respective owners.

37 Details

38 Details 1. ACPI Interrupt Routing Setup 2. Edge- and Level-Triggered Interrupts 3. Possible and Impossible ;) Solutions 38

39 ACPI Interrupt Routing Setup " IRQ routing information is stored in the ACPI tables " Device driver gets loaded " Kernel queries ACPI for IRQ line of corresponding device 39

40 Details 1. ACPI Interrupt Routing Setup 2. Edge- and Level-Triggered Interrupts 3. Possible and Impossible ;) Solutions 40

41 Edge-triggered Interrupts Edge-triggered interrupts are active only during a very short time Pros: Need no interrupt acknowledge on the device Need not be masked Cons: Cannot share an interrupt line Are more vulnerable to electrical disturbances on wiring 41

42 Level-triggered Interrupts Level triggered interrupts remain asserted until acknowledged on the causing device Pros: Can share interrupt lines Are less vulnerable to transmission disturbances on wiring Cons: Need interrupt acknowledge on the device Need masking for threaded interrupt handling 42

43 Details 1. ACPI Interrupt Routing Setup 2. Edge- and Level-Triggered Interrupts 3. Possible and Impossible ;) Solutions 43

44 Possible and Impossible ;) Solutions 1 A) Avoid Generating the Problem Use IRQ delivery method w/o Boot IRQs (not everywhere) Use Alternatives For Masking > Disable Local APIC temporarily (thwarts threaded IRQ benefits) > Delayed End of Interrupt signaling (does not work for some reason) > Level-edge-level patch (works unreliably, difficult to predict) Acknowledge IRQ early on device (future, may often not work) B) Avoid Symptoms Never disable lines with spurious IRQs (system may hang) Subtract real IRQs from spurious IRQ count (cannot count) 44 Solution does not work, works unreliably or other severe problems Solution works on several platforms Proposed solution, may or may not have problems

45 Possible and Impossible ;) Solutions 2 C) Prevent Problem Propagation Hide Boot IRQs (does not work) Disable Delivery of Boot IRQs (unavailable where needed, contradictory specs) Disable Boot IRQs *) (not possible everywhere) Reroute to Boot IRQ *) (increases IRQ sharing) Mask Boot IRQ (code is more spread out, increases IRQ latencies as if sharing was increased) 45 *) Solution implemented by us Solution does not work, works unreliably or other severe problems Solution works on several platforms Proposed solution, may or may not have problems

46 Use IRQ delivery method w/o Boot IRQs (1/2) " Modern IRQ delivery methods do not trigger Boot IRQs " PCI has MSI and MSI-X " During system boot, devices supporting MSI or MSI-X use legacy IRQ delivery methods equivalent to boot IRQs (virtual wire INTx) or methods that can generate boot IRQs (INTx) so during boot or when for other reasons in PIC mode IRQ delivery still works " Solution: in APIC mode use MSI or MSI-X IRQ delivery 46

47 Use IRQ delivery method w/o Boot IRQs (2/2) " Pros: Simple to implement Available on all modern systems and many older systems MSI / MSI-X are fast and reliable " Cons: MSI / MSI-X is buggy on several chipsets, software disables it 47

48 Use Alternatives for Masking " Masking causes Boot IRQ generation " Solution: Use other methods to temporarily stop IRQ delivery " Methods: Disable Local APIC temporarily Delayed End of Interrupt signaling Level-edge-level patch 48

49 Disable Local APIC temporarily (1/2) " Final IRQ delivery to CPU is done by Local APIC " Local APIC can temporarily be disabled " Solution: Disable Local APIC temporarily 49

50 Disable Local APIC temporarily (2/2) " Pros: Simple to implement Covers most or all modern processors " Cons: Local APIC cannot be disabled on old processors All IRQs are affected: very dependent on re-enabling LAPIC Advantage of threaded IRQ handling is lost: CPU is blocked until IRQ handler thread finishes 50

51 Delayed End of Interrupt signaling " Current RT kernels signal End of Interrupt to APICs after waking up IRQ handler thread " APICs can then interrupt the CPU again " Solution: Instead of masking, delay End of Interrupt until IRQ handler thread is finished " Pros: Simple to implement Should cover all hardware " Cons: Does not work: system hangs during boot (reasons unknown) 51

52 Level-edge-level patch (1/2) " Only level-triggered IRQs need masking " When IO-APIC is told to recognize edge-triggered IRQs on a line, a level-triggered IRQ that is pending on that line will not be recognized " Solution: set IO-APIC line to recognize edge-triggered IRQs instead of masking 52

53 Level-edge-level patch (2/2) " Pros: Simple to implement In principle should work on all hardware " Cons: Triggers IO-APIC lockups on the switched line on several types of hardware Result: devices do not work anymore, system may hang Attempts to fix this in software have been unsuccessful 53

54 Never disable lines with spurious IRQs (1/2) " Current kernels disable IRQ lines when the current rate of spurious IRQs reaches a certain level ( screaming IRQs ) " Solution: never disable lines with spurious IRQs 54

55 Never disable lines with spurious IRQs (2/2) " Pros: Very simple to implement Covers all hardware " Cons: Hardware without drivers can cause CPUs to hang > Hardware generates IRQ for some reason > No driver available to disable the IRQ > CPU will re-enter the IRQ handler immediately after leaving it > No way to stop this endless loop (disabling the line was the solution) Drivers bugs can cause system hangs Broken hardware can cause system hangs (Temporary) electrical problems can cause system hangs 55

56 Substract real IRQs from spurious IRQ count " Every real IRQ generates at most one Boot IRQ " Solution: Substracting real IRQ count from spurious IRQ count should make spurious IRQ count accurate " Pros: Not dependent on hardware " Cons: Need to find Boot IRQ line corresponding to real IRQ Masking on the Boot IRQ line (for other devices on that line) makes real IRQ count diverge easily from corresponding spurious IRQ count this is unreliable 56

57 Disable Delivery of Boot IRQs (1/2) " Boot IRQs are generated on PCI bus bridges " They use legacy INTx signals to make sure Boot IRQs are delivered to primary IO-APIC " Solution: disable legacy INTx signal generation on PCI bridge 57

58 Disable Delivery of Boot IRQs (2/2) " Pros: Simple to implement Little maintenance required (new bridges should support this, as it is required by the later PCI(e?) standards) " Cons: Some older (but widely used) hardware does not support disabling INTx Are passed-through INTx disabled by this bit as well? > Documentation is unclear or contradictory INTx is used for other purposes as well (error reporting) 58

59 Hide Boot IRQs " Use Same Vector for IRQ and corresp. Boot IRQ " Pros: Simple to implement Works on all hardware " Cons: Still two IRQs are received for each real IRQ No way to decide which IRQs are Boot IRQs, which are real IRQs and which are spurious IRQs 59

60 Disable Boot IRQ " Modern PCI bridges can disable Boot IRQ generation " Solution: disable Boot IRQ generation " Pros: Works reliably Simple to implement and maintain, when bridge known " Cons: Several older (and often still in use) bridges cannot disable Boot IRQ generation Implementation very specific to PCI bridge Not possible when device documentation unavailable 60

61 Reroute to Boot IRQ (1/2) " Keeping bridge IRQs masked at all times always causes the generation of boot IRQs, and the original IRQs are never recognized " Solution: keep bridge IRQs masked and tell driver to always use the corresponding boot IRQ line instead 61

62 Reroute to Boot IRQ (2/2) " Pros: Moderately simple to implement Works with devices that cannot disable boot IRQs Works with devices without (public) documentation " Cons: Need to find Boot IRQ line corresponding to real IRQ Needs lots of testing with different hardware configurations IRQ sharing between devices is increased on Boot IRQ lines 62

63 Mask Boot IRQ (1/3) " Delivery of Boot IRQ may be prevented by masking / manipulating the IO-APIC or LAPIC " Solution: mask primary IO-APIC before masking secondary IO-APIC When bridge IRQ comes in, in the IRQ handler first mask the corresponding (boot IRQ) line on the primary IO-APIC Then mask the IRQ line on the bridge IO-APIC Handle bridge IRQ (this will acknowledge the IRQ on the device) Unmask IRQ line on the primary IO-APIC 63

64 Mask Boot IRQ (2/3) " Pros: Moderately simple to implement Works with devices that cannot disable boot IRQs Works with devices without public documentation Should work with all IO-APICs > Level-asserts or negates occurring on a masked level-sensitive pin are [...] ignored and have no side effects. Intel 82093AA IOAPIC datasheet > Pending level-asserts from other devices on the IRQ line will be recognized as soon as the line is unmasked again No additional interrupt sharing on primary IO-APIC 64

65 Mask Boot IRQ (3/3) " Cons: Code is more spread out Need to find Boot IRQ line corresponding to real IRQ Needs lots of testing with different hardware configurations Masks other IRQs that share the line until real IRQ handled > introducing additional delay, as if sharing was increased Side-Notes: EOI before unmasking was an idea to clear pending Boot IRQs, so that we can unmask much earlier > Is not expected to work, as the IO-APIC is not in the correct state yet for EOI IRQ needs to be delivered fist, leading to the known problems 65

66 Acknowledge IRQ early on device (1/2) " If IRQ can be acknowledged early and quickly on the causing device, masking is not needed " Solution: require drivers to implement early IRQ ack method and use that instead of masking 66

67 Acknowledge IRQ early on device (2/2) " Pros: " Cons: > Infrastructure moderately simple to implement (and is now in the kernel) > Makes one IRQ thread per device possible (as opposed to one IRQ thread per IRQ line ) -> better latency > Puts burden of early ack implementation on driver developer > Early ack may take moderately long on some devices > Device may be unable to early ack -- this problem may persist, we need more experience here > Device may not offer implementation alternatives, such as masking (and disabling IRQs may cause lost IRQs) > Little experience with this approach: BSD has one driver > Impact on development, maintainability and performance difficult to predict 67

68 Mask / Reroute to Boot IRQ (revisited) " Need to find Boot IRQ line corresponding to real IRQ " How to do this? " ACPI tables cannot be used In APIC mode, they only give information about the real IRQ's IO-APIC line In PIC mode, they only give information about the PIC IRQ line (which is the boot IRQ line) The PIC / APIC mode can only be selected once mode selection can irreversibly reconfigure IRQ hardware 68

69 Mask / Reroute to Boot IRQ (revisited) " Need to trace the IRQ routing through the hardware: PCI standards apply to most components PCI standards do not apply to Northbridge internals and Northbridge/Southbridge links Routing is moderately dependent on chipsets 69 > Intel has the longest list of chipset generations, but most older generations behave identical wrt IRQ routing > ATM some newer Intel Northbridges are special, and come with special IRQ routing capabilities Rerouting needs to be revised for new Northbridges Need to detect unknown Northbridges and to default to opt out of rerouting in these cases Not a real problem: rerouting is unlikely to be needed with newer chipsets, as newer PCI bridges can disable boot IRQs

70

SUSE Linux Enterprise Kernel Back to the Future

SUSE Linux Enterprise Kernel Back to the Future SUSE Enterprise Kernel Back to the Future Olaf Kirch Director Server Engineering okir@suse.com Agenda SUSE Enterprise Service Packs What makes a SUSE Enterprise kernel an enterprise kernel? Bringing you

More information

Systems Programming and Computer Architecture ( ) Timothy Roscoe

Systems Programming and Computer Architecture ( ) Timothy Roscoe Systems Group Department of Computer Science ETH Zürich Systems Programming and Computer Architecture (252-0061-00) Timothy Roscoe Herbstsemester 2016 AS 2016 Exceptions 1 17: Exceptions Computer Architecture

More information

Using SAT for solving package dependencies. Michael Schröder Novell, Inc.

Using SAT for solving package dependencies. Michael Schröder Novell, Inc. Using SAT for solving package dependencies Michael Schröder Novell, Inc. What was wrong with the old solver Much too slow with bug repositories solving could take several minutes Complex code, many special

More information

Software Defined. All The Way with OpenStack. T. R. Bosworth Senior Product Manager SUSE OpenStack Cloud

Software Defined. All The Way with OpenStack. T. R. Bosworth Senior Product Manager SUSE OpenStack Cloud Software Defined All The Way with OpenStack T. R. Bosworth Senior Product Manager SUSE OpenStack Cloud Mark Darnell Senior Product Manager SUSE OpenStack Cloud Why Bother with Software Defined Infrastructure?

More information

Interrupt Swizzling Solution for Intel 5000 Chipset Series based Platforms

Interrupt Swizzling Solution for Intel 5000 Chipset Series based Platforms Interrupt Swizzling Solution for Intel 5000 Chipset Series based Platforms Application Note August 2006 Document Number: 314337-002 Notice: This document contains information on products in the design

More information

From GIT to a custom OS image in a few click OS image made easy

From GIT to a custom OS image in a few click OS image made easy From GIT to a custom OS image in a few click OS image made easy Frédéric Crozat Senior Software Engineer SUSE fcrozat@suse.com Goals Create ISO live image to ease testing Automate image creation as much

More information

Intel Graphics Virtualization on KVM. Aug KVM Forum 2011 Rev. 3

Intel Graphics Virtualization on KVM. Aug KVM Forum 2011 Rev. 3 Intel Graphics Virtualization on KVM Aug-16-2011 allen.m.kay@intel.com KVM Forum 2011 Rev. 3 Agenda Background on IO Virtualization Device Operation on Native Platform QEMU IO Virtualization Device Direct

More information

Pushing The Limits Of Linux On ARM

Pushing The Limits Of Linux On ARM Pushing The Limits Of Linux On ARM LinuxCon Japan 2015 Andreas Färber afaerber@suse.de Overview Definition of Linux on ARM Transitioning from Embedded to Servers & Desktops Pushing the limits in general

More information

RTD cpumodule LX-Series Migration Guide

RTD cpumodule LX-Series Migration Guide RTD cpumodule LX-Series Migration Guide ISO9001 and AS9100 Certified SWM-640000023 Rev. D Page 1 of 9 Revision History Rev. A 02/29/2007 Preliminary Draft Rev. B 06/23/2008 Added information about the

More information

Best practices with SUSE Linux Enterprise Server Starter System and extentions Ihno Krumreich

Best practices with SUSE Linux Enterprise Server Starter System and extentions Ihno Krumreich Best practices with SUSE Linux Enterprise Server Starter System and extentions Ihno Krumreich Project Manager for Linux on System z Ihno@SUSE.de SHARE Atlanta 2012 Session 10728 Reasoning Requirements

More information

PCI Interrupts for x86 Machines under FreeBSD

PCI Interrupts for x86 Machines under FreeBSD PCI Interrupts for x86 Machines under FreeBSD May 18, 2007 John Baldwin jhb@freebsd.org Introduction Hardware for PCI INTx interrupts x86 CPU interrupts PCI INTx signals x86 interrupt controllers Interrupt

More information

Last Time. Think carefully about whether you use a heap Look carefully for stack overflow Especially when you have multiple threads

Last Time. Think carefully about whether you use a heap Look carefully for stack overflow Especially when you have multiple threads Last Time Cost of nearly full resources RAM is limited Think carefully about whether you use a heap Look carefully for stack overflow Especially when you have multiple threads Embedded C Extensions for

More information

I/O Handling. ECE 650 Systems Programming & Engineering Duke University, Spring Based on Operating Systems Concepts, Silberschatz Chapter 13

I/O Handling. ECE 650 Systems Programming & Engineering Duke University, Spring Based on Operating Systems Concepts, Silberschatz Chapter 13 I/O Handling ECE 650 Systems Programming & Engineering Duke University, Spring 2018 Based on Operating Systems Concepts, Silberschatz Chapter 13 Input/Output (I/O) Typical application flow consists of

More information

evm for Windows* User Manual

evm for Windows* User Manual evm for Windows* User Manual Rev 4.0 1 Copyright 2017 TenAsys Corporation No part of this manual may be copied, duplicated, reprinted, and stored in a retrieval system by any means, mechanical or electronic,

More information

Input/Output. Today. Next. Principles of I/O hardware & software I/O software layers Disks. Protection & Security

Input/Output. Today. Next. Principles of I/O hardware & software I/O software layers Disks. Protection & Security Input/Output Today Principles of I/O hardware & software I/O software layers Disks Next Protection & Security Operating Systems and I/O Two key operating system goals Control I/O devices Provide a simple,

More information

Managing Linux Servers Comparing SUSE Manager and ZENworks Configuration Management

Managing Linux Servers Comparing SUSE Manager and ZENworks Configuration Management Managing Linux Servers Comparing SUSE Manager and ZENworks Configuration Management Product Support As of September 30,2012, Novell no longer offers general support and will only provide limited updates

More information

Cloud in a box. Fully automated installation of SUSE Openstack Cloud 5 on Dell VRTX. Lars Everbrand. Software Developer

Cloud in a box. Fully automated installation of SUSE Openstack Cloud 5 on Dell VRTX. Lars Everbrand. Software Developer Cloud in a box Fully automated installation of SUSE Openstack Cloud 5 on Dell VRTX Lars Everbrand Software Developer lars.everbrand@ericsson.com 2 From 3 To Introduction Disclaimer All views expressed

More information

Application Note. Shared IRQ Line Considerations AN-PM-059

Application Note. Shared IRQ Line Considerations AN-PM-059 Application Note AN-PM-059 Abstract When IRQ line-sharing between multiple devices has been imposed by the target hardware design, a system failure may occur that is intrinsic to the Linux kernel. This

More information

PCI Bus & Interrupts

PCI Bus & Interrupts PCI Bus & Interrupts PCI Bus A bus is made up of both an electrical interface and a programming interface PCI (Peripheral Component Interconnect) A set of specifications of how parts of a computer should

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: NUC7i3BNK, NUC7i3BNH, NUC7i5BNK, NUC7i5BNH, NUC7i7BNH (Standard BIOS) BIOS Version 0047 - BNKBL357.86A.0047.2017.0518.1824 Date: May 18, 2017 ME Firmware: 11.6.27.3264

More information

A Smart Port Card Tutorial --- Hardware

A Smart Port Card Tutorial --- Hardware A Smart Port Card Tutorial --- Hardware John DeHart Washington University jdd@arl.wustl.edu http://www.arl.wustl.edu/~jdd 1 References: New Links from Kits References Page Intel Embedded Module: Data Sheet

More information

Knut Omang Ifi/Oracle 20 Oct, Introduction to virtualization (Virtual machines) Aspects of network virtualization:

Knut Omang Ifi/Oracle 20 Oct, Introduction to virtualization (Virtual machines) Aspects of network virtualization: Software and hardware support for Network Virtualization part 2 Knut Omang Ifi/Oracle 20 Oct, 2015 32 Overview Introduction to virtualization (Virtual machines) Aspects of network virtualization: Virtual

More information

Vhost and VIOMMU. Jason Wang (Wei Xu Peter Xu

Vhost and VIOMMU. Jason Wang (Wei Xu Peter Xu Vhost and VIOMMU Jason Wang (Wei Xu ) Peter Xu Agenda IOMMU & Qemu viommu background Motivation of secure virtio DMAR (DMA Remapping) Design Overview

More information

PCI-SIG ENGINEERING CHANGE NOTICE

PCI-SIG ENGINEERING CHANGE NOTICE PCI-SIG ENGINEERING CHANGE NOTICE TITLE: PCIe Link Activation DATE: Introduced: 17 May 2017 Updated: 7 December 2017 Final Approval: 7 December 2017 AFFECTED DOCUMENT: PCI Express Base Specification, Revision

More information

Architecture Specification

Architecture Specification PCI-to-PCI Bridge Architecture Specification, Revision 1.2 June 9, 2003 PCI-to-PCI Bridge Architecture Specification Revision 1.1 December 18, 1998 Revision History REVISION ISSUE DATE COMMENTS 1.0 04/05/94

More information

COTS Integration and Debugging Challenges - RBSP Lessons Learned. Subodh Harmalkar Joseph Hennawy Samuel Fix Debbie Clancy

COTS Integration and Debugging Challenges - RBSP Lessons Learned. Subodh Harmalkar Joseph Hennawy Samuel Fix Debbie Clancy COTS Integration and Debugging Challenges - RBSP Lessons Learned Subodh Harmalkar Joseph Hennawy Samuel Fix Debbie Clancy Agenda Background Testbed Architecture Intel PCI bus architecture Testbed modifications

More information

coreboot - Bug #86 IRQ errors precede slow down of tape I/O, via SCSI and PCI/PCIe bridge

coreboot - Bug #86 IRQ errors precede slow down of tape I/O, via SCSI and PCI/PCIe bridge coreboot - Bug #86 IRQ errors precede slow down of tape I/O, via SCSI and PCI/PCIe bridge 12/12/2016 07:35 PM - Andrew Engelbrecht Status: New Start date: 12/12/2016 Priority: Normal Due date: Assignee:

More information

ATCA Release Notes J09D

ATCA Release Notes J09D ATCA-7360 Release Notes 6806800J09D January 2011 Copyright Copyright 2011 Emerson Network Power All rights reserved. Emerson Network Power is registered in the U.S. Patent and Trademark Offices. All other

More information

openqa making QA interesting since 2013 Ondrej Holecek /aaannz/

openqa making QA interesting since 2013 Ondrej Holecek /aaannz/ openqa making QA interesting since 2013 Ondrej Holecek /aaannz/ oholecek@suse.com opensuse storytime opensuse walking packaging stuff build check release time? manual QA 3 release/ milestone opensuse Leap-ing

More information

SUSE Linux Enterprise High Availability Extension

SUSE Linux Enterprise High Availability Extension A Xen Cluster Success Story Using the SUSE Linux Enterprise High Availability Extension Mark Robinson Director, MrLinux mark@mrlinux.co.uk Case Study: R M Donaldson APC High Power Partner My first commercial

More information

SUSE Manager and Salt

SUSE Manager and Salt SUSE Manager and Salt The Three Cs of the IT Transformation Challenge Transform your approach to infrastructure to enable the business to capitalize on new innovations of data Cost Complexity Compliance

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: NUC7i3BNK, NUC7i3BNH, NUC7i5BNK, NUC7i5BNH, NUC7i7BNH (Standard BIOS) BIOS Version 0050 - BNKBL357.86A.0050.2017.0816.2002 Date: August 16, 2017 EC Firmware: 8.05 :

More information

Using Linux Containers as a Virtualization Option

Using Linux Containers as a Virtualization Option Using Linux Containers as a Virtualization Option Michal Svec Product Manager msvec@suse.com Mike Friesenegger Sales Engineer mfriesenegger@suse.com 2 Containers Linux Containers Virtualization OS Level

More information

Intel Virtualization Technology Roadmap and VT-d Support in Xen

Intel Virtualization Technology Roadmap and VT-d Support in Xen Intel Virtualization Technology Roadmap and VT-d Support in Xen Jun Nakajima Intel Open Source Technology Center Legal Disclaimer INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS.

More information

BRG17088HR User's Manual PCI to ISA Bridge PC/104-Plus Module

BRG17088HR User's Manual PCI to ISA Bridge PC/104-Plus Module BRG17088HR User's Manual PCI to ISA Bridge PC/104-Plus Module ISO9001 and AS9100 Certified BDM-610020053 Rev D BRG17088HR User's Manual RTD EMBEDDED TECHNOLOGIES, INC. 103 Innovation Blvd State College,

More information

BOV89296 SUSE Best Practices Sharing Expertise, Experience and Knowledge. Christoph Wickert Technical Writer SUSE /

BOV89296 SUSE Best Practices Sharing Expertise, Experience and Knowledge. Christoph Wickert Technical Writer SUSE / BOV89296 SUSE Best Practices Sharing Expertise, Experience and Knowledge Christoph Wickert Technical Writer SUSE / cwickert@suse.com AGENDA The SUSE Documentation Team SUSE Best Practices Open Source Tools

More information

Open Enterprise & Open Community

Open Enterprise & Open Community Open Enterprise & Open Community Working Together Richard Brown opensuse Chairman SUSE Linux GmbH Andrew Wafaa Principal Engineer, Open Source ARM Ltd Stephan Kulow opensuse Release Manager SUSE Linux

More information

Saving Real Storage with xip2fs and DCSS. Ihno Krumreich Project Manager for SLES on System z

Saving Real Storage with xip2fs and DCSS. Ihno Krumreich Project Manager for SLES on System z Saving Real Storage with xip2fs and DCSS Ihno Krumreich Project Manager for SLES on System z ihno@suse.de Agenda Overview DCSS What is DCSS? xip2fs What is xip2fs? DCSS How to create? Maintenance Problems

More information

Introduction to Software Defined Infrastructure SUSE Linux Enterprise 15

Introduction to Software Defined Infrastructure SUSE Linux Enterprise 15 Introduction to Software Defined Infrastructure SUSE Linux Enterprise 15 Matthias G. Eckermann Director Product Management SUSE Linux Enterprise Helsinki, 2018-03-08 SUSE Software-defined Infrastructure

More information

Zypper. Ján Kupec YaST Team

Zypper. Ján Kupec YaST Team Zypper Ján Kupec YaST Team jano@opensuse.org In This Talk... Overview Tips & Tricks Future Plans & How to Contribute Q & A 6 minutes 10 minutes 4 minutes 2 Overview What is Zypper? Command line software

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: NUC7i3BNK, NUC7i3BNH, NUC7i5BNK, NUC7i5BNH, NUC7i7BNH (Standard BIOS) BIOS Version 0051 - BNKBL357.86A.0051.2017.0901.1328 Date: September 01, 2017 ME Firmware: 11.6.27.3264

More information

Operating System: Chap13 I/O Systems. National Tsing-Hua University 2016, Fall Semester

Operating System: Chap13 I/O Systems. National Tsing-Hua University 2016, Fall Semester Operating System: Chap13 I/O Systems National Tsing-Hua University 2016, Fall Semester Outline Overview I/O Hardware I/O Methods Kernel I/O Subsystem Performance Application Interface Operating System

More information

Chapter 13: I/O Systems. Operating System Concepts 9 th Edition

Chapter 13: I/O Systems. Operating System Concepts 9 th Edition Chapter 13: I/O Systems Silberschatz, Galvin and Gagne 2013 Chapter 13: I/O Systems Overview I/O Hardware Application I/O Interface Kernel I/O Subsystem Transforming I/O Requests to Hardware Operations

More information

Docker Networking In OpenStack What you need to know now. Fawad Khaliq

Docker Networking In OpenStack What you need to know now. Fawad Khaliq Docker Networking In OpenStack What you need to know now Fawad Khaliq About Me OpenStack Community Member Developer in Neutron Maintainer of PLUMgrid Neutron Plugin (networking-plumgrid) How to contact

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: NUC7i3BNK, NUC7i3BNH, NUC7i5BNK, NUC7i5BNH, NUC7i7BNH (Standard BIOS) BIOS Version 0054 - BNKBL357.86A.0054.2017.1025.1822 Date: October 25, 2017 ME Firmware: 11.6.27.3264

More information

openqa features capabilities bugs Ondrej Holecek /aaannz/

openqa features capabilities bugs Ondrej Holecek /aaannz/ openqa features capabilities bugs Ondrej Holecek /aaannz/ oholecek@suse.com What makes openqa User focused 3 Watching the screen User focused 4 Watching the screen Keyboard and mouse input User focused

More information

Welcome to SUSE Expert Days 2017 Service Delivery with DevOps

Welcome to SUSE Expert Days 2017 Service Delivery with DevOps Welcome to SUSE Expert Days 2017 Service Delivery with DevOps Changing Application Service Delivery with DevOps 2 Key Components for DevOps Success Good habits and people Development done now Automate

More information

Jeff Dodson / Avago Technologies

Jeff Dodson / Avago Technologies SNIA PRESENTATION Tutorial: TITLE PCIe GOES Shared HERE I/O Jeff Dodson / Avago Technologies SNIA Legal Notice The material contained in this tutorial is copyrighted by the SNIA unless otherwise noted.

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: NUC7i3BNK, NUC7i3BNH, NUC7i5BNK, NUC7i5BNH, NUC7i7BNH (Standard BIOS) BIOS Version 0062 - BNKBL357.86A.0062.2018.0222.1644 Date: February 22, 2018 ME Firmware: 11.8.50.3425

More information

SUSE Manager Roadmap OS Lifecycle Management from the Datacenter to the Cloud

SUSE Manager Roadmap OS Lifecycle Management from the Datacenter to the Cloud SUSE Manager Roadmap OS Lifecycle Management from the Datacenter to the Cloud Joachim Werner Senior Product Manager joe@suse.com Jeff Lindholm Sales Engineer Jlindholm@suse.com SUSE and Linux Workloads

More information

96Boards Enablement for opensuse

96Boards Enablement for opensuse 96Boards Enablement for opensuse Progress Report and Remaining Issues Andreas Färber Expert Virtualization andreas.faerber@suse.com The Presenter and ARM Background in virtualization software (QEMU) Involved

More information

Real Time Linux patches: history and usage

Real Time Linux patches: history and usage Real Time Linux patches: history and usage Presentation first given at: FOSDEM 2006 Embedded Development Room See www.fosdem.org Klaas van Gend Field Application Engineer for Europe Why Linux in Real-Time

More information

Protect your server with SELinux on SUSE Linux Enterprise Server 11 SP Sander van Vugt

Protect your server with SELinux on SUSE Linux Enterprise Server 11 SP Sander van Vugt Protect your server with SELinux on SUSE Linux Enterprise Server 11 SP Sander van Vugt Instructor, Consultant and Author Sandervanvugt.nl About Sander van Vugt Trainer, consultant and author Doing much

More information

EEL 4744C: Microprocessor Applications. Lecture 7. Part 1. Interrupt. Dr. Tao Li 1

EEL 4744C: Microprocessor Applications. Lecture 7. Part 1. Interrupt. Dr. Tao Li 1 EEL 4744C: Microprocessor Applications Lecture 7 Part 1 Interrupt Dr. Tao Li 1 M&M: Chapter 8 Or Reading Assignment Software and Hardware Engineering (new version): Chapter 12 Dr. Tao Li 2 Interrupt An

More information

Reading Assignment. Interrupt. Interrupt. Interrupt. EEL 4744C: Microprocessor Applications. Lecture 7. Part 1

Reading Assignment. Interrupt. Interrupt. Interrupt. EEL 4744C: Microprocessor Applications. Lecture 7. Part 1 Reading Assignment EEL 4744C: Microprocessor Applications Lecture 7 M&M: Chapter 8 Or Software and Hardware Engineering (new version): Chapter 12 Part 1 Interrupt Dr. Tao Li 1 Dr. Tao Li 2 Interrupt An

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: NUC7i3BNK, NUC7i3BNH, NUC7i5BNK, NUC7i5BNH, NUC7i7BNH (Standard BIOS) BIOS Version 0057 - BNKBL357.86A.0057.2017.1122.1550 Date: November 22, 2017 ME Firmware: 11.8.50.3425

More information

Optimizing the GigE transfer What follows comes from company Pleora.

Optimizing the GigE transfer What follows comes from company Pleora. Optimizing the GigE transfer What follows comes from company Pleora. Selecting a NIC and Laptop Based on our testing, we recommend Intel NICs. In particular, we recommend the PRO 1000 line of Intel PCI

More information

Building a Secure and Compliant Cloud Infrastructure. Ben Goodman Principal Strategist, Identity, Compliance and Security Novell, Inc.

Building a Secure and Compliant Cloud Infrastructure. Ben Goodman Principal Strategist, Identity, Compliance and Security Novell, Inc. Building a Secure and Compliant Cloud Infrastructure Ben Goodman Principal Strategist, Identity, Compliance and Security Novell, Inc. Why Are We Here? Expanded Enterprise Data access anywhere, anytime

More information

Kernel Interrupt: A Major Overhaul

Kernel Interrupt: A Major Overhaul Kernel Interrupt: A Major Overhaul - APIC Initialization & - Vector Allocation Dou Liyang douly.fnst@cn.fujitsu.com June 20 2018 Copyright 2018 FUJITSU LIMITED Outline Basics of an interrupt What's next?

More information

KVM Forum 2013 How closely do we model real hardware in QEMU?

KVM Forum 2013 How closely do we model real hardware in QEMU? KVM Forum 2013 How closely do we model real hardware in QEMU? Anthony Liguori Why? QEMU is a functional simulator Learn from the past, avoid repeating mistakes Informed decisions

More information

PCIe driver development for Exynos SoC

PCIe driver development for Exynos SoC PCIe driver development for Exynos SoC Korea Linux Forum 2013 Jingoo Han Samsung Electronics Introduction S/W engineer at Samsung Electronics since 2005 Linux kernel development for Samsung Exynos ARM

More information

Managing your real hardware: Installation, Boot, Hardware changes. Olivier Crémel Staff Engineer

Managing your real hardware: Installation, Boot, Hardware changes. Olivier Crémel Staff Engineer Managing your real hardware: Installation, Boot, Hardware changes Olivier Crémel Staff Engineer Agenda Hardware choices Real hardware vs. virtual hardware Driven by Service Console or VMkernel Hardware

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: NUC7i3BNK, NUC7i3BNH, NUC7i5BNK, NUC7i5BNH, NUC7i7BNH (Standard BIOS) BIOS Version 0063 - BNKBL357.86A.0063.2018.0413.1542 Date: April 13, 2018 ME Firmware: 11.8.50.3425

More information

CS/ECE 217. GPU Architecture and Parallel Programming. Lecture 16: GPU within a computing system

CS/ECE 217. GPU Architecture and Parallel Programming. Lecture 16: GPU within a computing system CS/ECE 217 GPU Architecture and Parallel Programming Lecture 16: GPU within a computing system Objective To understand the major factors that dictate performance when using GPU as an compute co-processor

More information

Appliance Upgrade Guide

Appliance Upgrade Guide Appliance Upgrade Guide 2003-2018 BeyondTrust, Inc. All Rights Reserved. BEYONDTRUST, its logo, and JUMP are trademarks of BeyondTrust, Inc. Other trademarks are the property of their respective owners.

More information

The opensuse project. Motivation, Goals, and Opportunities. Sonja Krause-Harder Michael Löffler. March 6, 2006

The opensuse project. Motivation, Goals, and Opportunities. Sonja Krause-Harder Michael Löffler. March 6, 2006 The opensuse project Motivation, Goals, and Opportunities Sonja Krause-Harder Michael Löffler March 6, 2006 What is opensuse / SUSE Linux? opensuse is a community project (not a distribution) wiki, mailinglist,

More information

Intel Desktop Board DX58SO. MLP Report. Motherboard Logo Program (MLP) 8/10/2009

Intel Desktop Board DX58SO. MLP Report. Motherboard Logo Program (MLP) 8/10/2009 Motherboard Logo Program (MLP) Intel Desktop Board DX58SO MLP Report 8/10/2009 Purpose: This report describes the DX58SO Motherboard Logo Program testing run conducted by Intel Corporation. THIS TEST REPORT

More information

Build with SUSE Studio, Deploy with SUSE Linux Enterprise Point of Service and Manage with SUSE Manager Case Study

Build with SUSE Studio, Deploy with SUSE Linux Enterprise Point of Service and Manage with SUSE Manager Case Study Build with SUSE Studio, Deploy with SUSE Linux Enterprise Point of Service and Manage with SUSE Manager Case Study Vladimir Botka Joachim Plack Anthony Tortola Product Manager vbotka@suse.com Senior Project

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: DH67BL, DH67CF, DH67CL, DH67GD, DH67VR (Standard BIOS) BIOS Version 0155 - BLH6710H.86A.0155.2012.0509.1620 Date: May 9, 2012 ME Firmware: 7.1.40.1161, 8.0.10.1464 Integrated

More information

Real-Time Technology in Linux

Real-Time Technology in Linux Real-Time Technology in Linux Sven-Thorsten Dietrich Real-Time Architect Introductions MontaVista Software is a leading global supplier of systems software and development tools for intelligent connected

More information

The CephFS Gateways Samba and NFS-Ganesha. David Disseldorp Supriti Singh

The CephFS Gateways Samba and NFS-Ganesha. David Disseldorp Supriti Singh The CephFS Gateways Samba and NFS-Ganesha David Disseldorp ddiss@samba.org Supriti Singh supriti.singh@suse.com Agenda Why Exporting CephFS over Samba and NFS-Ganesha What Architecture & Features Samba

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: NUC7i3BNK, NUC7i3BNH, NUC7i5BNK, NUC7i5BNH, NUC7i7BNH (Standard BIOS) BIOS Version 0067 - BNKBL357.86A.0067.2018.0814.1500 Date: August 14, 2018 ME Firmware: 11.8.50.3425

More information

Intel X48 Express Chipset Memory Controller Hub (MCH)

Intel X48 Express Chipset Memory Controller Hub (MCH) Intel X48 Express Chipset Memory Controller Hub (MCH) Specification Update March 2008 Document Number: 319123-001 Legal Lines and Disclaimers INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH

More information

WHITE PAPER AX WAIT, DID WE JUST BUILD A WIRELESS SWITCH?

WHITE PAPER AX WAIT, DID WE JUST BUILD A WIRELESS SWITCH? WHITE PAPER 80.AX WAIT, DID WE JUST BUILD A WIRELESS SWITCH? November 08 Introduction With the initial versions of 80.ax (Wi-Fi ) coming out, some of the most interesting features and enhancements revolve

More information

openqa Avoiding Disasters of Biblical Proportions Marita Werner QA Project Manager

openqa Avoiding Disasters of Biblical Proportions Marita Werner QA Project Manager openqa Avoiding Disasters of Biblical Proportions Marita Werner QA Project Manager mawerner@suse.com Testing is HARD - Everyone who has built any software, ever. Upstreams Upstream projects are moving

More information

Linux /proc/irq/<irq>/smp_affinity PC ... PCIe. 3. Legacy PCIe. INTx PCI MSI MSI-X

Linux /proc/irq/<irq>/smp_affinity PC ... PCIe. 3. Legacy PCIe. INTx PCI MSI MSI-X PC Linux /proc/irq//smp_affinity PC... 1. 2 CPU Core2 Core i Intel CPU 2. PCIe NIC 3. Legacy 8259 4. x86_64 Linux 3.2.0+ 5. PCIe INTx PCI PCI PCI PCIe MSI MSI-X 1 MSI PCI 2.3 32 MSI MSI-X PCI 3.0

More information

Review of the Stable Realtime Release Process

Review of the Stable Realtime Release Process Review of the Stable Realtime Release Process An unscientific, slightly opinionated stab at the current status... With the intent of generating some discussion. Frank Rowand, Sony Network Entertainment

More information

Operating Systems Design Fall 2010 Exam 1 Review. Paul Krzyzanowski

Operating Systems Design Fall 2010 Exam 1 Review. Paul Krzyzanowski Operating Systems Design Fall 2010 Exam 1 Review Paul Krzyzanowski pxk@cs.rutgers.edu 1 Question 1 To a programmer, a system call looks just like a function call. Explain the difference in the underlying

More information

I/O Scalability in Xen

I/O Scalability in Xen I/O Scalability in Xen Kevin Tian kevin.tian@intel.com Eddie Dong eddie.dong@intel.com Yang Zhang yang.zhang@intel.com Sponsored by: & & Agenda Overview of I/O Scalability Issues Excessive Interrupts Hurt

More information

Exploring History with Hawk

Exploring History with Hawk Exploring History with Hawk An Introduction to Cluster Forensics Kristoffer Grönlund High Availability Software Developer kgronlund@suse.com This tutorial High Availability in 5 minutes Introduction to

More information

Intel E8500 Chipset North Bridge (NB)

Intel E8500 Chipset North Bridge (NB) Intel E8500 Chipset North Bridge (NB) Specification Update June 2005 Notice: The Intel E8500 chipset North Bridge (NB) may contain design defects or errors known as errata that may cause the product to

More information

Intel Desktop Board DX48BT2. MLP Report. Motherboard Logo Program (MLP) 6/17/2008

Intel Desktop Board DX48BT2. MLP Report. Motherboard Logo Program (MLP) 6/17/2008 Motherboard Logo Program (MLP) Intel Desktop Board DX48BT2 MLP Report 6/17/2008 Purpose: This report describes the DX48BT2 Motherboard Logo Program testing run conducted by Intel Corporation. THIS TEST

More information

NTRDMA v0.1. An Open Source Driver for PCIe NTB and DMA. Allen Hubbe at Linux Piter 2015 NTRDMA. Messaging App. IB Verbs. dmaengine.h ntb.

NTRDMA v0.1. An Open Source Driver for PCIe NTB and DMA. Allen Hubbe at Linux Piter 2015 NTRDMA. Messaging App. IB Verbs. dmaengine.h ntb. Messaging App IB Verbs NTRDMA dmaengine.h ntb.h DMA DMA DMA NTRDMA v0.1 An Open Source Driver for PCIe and DMA Allen Hubbe at Linux Piter 2015 1 INTRODUCTION Allen Hubbe Senior Software Engineer EMC Corporation

More information

6.9. Communicating to the Outside World: Cluster Networking

6.9. Communicating to the Outside World: Cluster Networking 6.9 Communicating to the Outside World: Cluster Networking This online section describes the networking hardware and software used to connect the nodes of cluster together. As there are whole books and

More information

Oracle Java SE Advanced for ISVs

Oracle Java SE Advanced for ISVs Oracle Java SE Advanced for ISVs Oracle Java SE Advanced for ISVs is designed to enhance the Java based solutions that ISVs are providing to their enterprise customers. It brings together industry leading

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: DH67BL, DH67CF, DH67CL, DH67GD, DH67VR (Standard BIOS) BIOS Version 0159 - BLH6710H.86A.0159.2012.0927.1423 Date: September 27, 2012 ME Firmware: 7.1.60.1193, 8.0.13.1502

More information

Packaging made easy. How the opensuse build service makes building packages easy for developers who don't care about packaging

Packaging made easy. How the opensuse build service makes building packages easy for developers who don't care about packaging Packaging made easy How the opensuse build service makes building packages easy for developers who don't care about packaging Cornelius Schumacher Motivation Packaging: Creating installable

More information

StoneGate Management Center. Release Notes for Version 5.3.3

StoneGate Management Center. Release Notes for Version 5.3.3 StoneGate Management Center Release Notes for Version 5.3.3 Created: October 21, 2011 Table of Contents What s New... 3 Fixes... 3 Other Changes... 4 System Requirements... 5 Basic Management System Hardware

More information

openqa Avoiding Disasters of Biblical Proportions Marita Werner QA Project Manager

openqa Avoiding Disasters of Biblical Proportions Marita Werner QA Project Manager openqa Avoiding Disasters of Biblical Proportions Marita Werner QA Project Manager mawerner@suse.com Testing is HARD - Everyone who has built any software, ever. 2 Upstreams Upstream projects are moving

More information

INPUT/OUTPUT ORGANIZATION

INPUT/OUTPUT ORGANIZATION INPUT/OUTPUT ORGANIZATION Accessing I/O Devices I/O interface Input/output mechanism Memory-mapped I/O Programmed I/O Interrupts Direct Memory Access Buses Synchronous Bus Asynchronous Bus I/O in CO and

More information

Interrupt is a process where an external device can get the attention of the microprocessor. Interrupts can be classified into two types:

Interrupt is a process where an external device can get the attention of the microprocessor. Interrupts can be classified into two types: 8085 INTERRUPTS 1 INTERRUPTS Interrupt is a process where an external device can get the attention of the microprocessor. The process starts from the I/O device The process is asynchronous. Classification

More information

Provisioning with SUSE Enterprise Storage. Nyers Gábor Trainer &

Provisioning with SUSE Enterprise Storage. Nyers Gábor Trainer & Provisioning with SUSE Enterprise Storage Nyers Gábor Trainer & Consultant @Trebut gnyers@trebut.com Managing storage growth and costs of the software-defined datacenter PRESENT Easily scale and manage

More information

G Robert Grimm New York University

G Robert Grimm New York University G22.3250-001 Receiver Livelock Robert Grimm New York University Altogether Now: The Three Questions What is the problem? What is new or different? What are the contributions and limitations? Motivation

More information

Porting Linux to a new SoC

Porting Linux to a new SoC Porting Linux to a new SoC Who am I? PrasannaKumar Muralidharan Linux kernel enthusiast Contributed to a few open source projects Contributed several patches to hwrng subsystem Wrote CI20 PRNG driver Implemented

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: NUC7i3BNK, NUC7i3BNH, NUC7i5BNK, NUC7i5BNH, NUC7i7BNH (Standard BIOS) BIOS Version 0071 - BNKBL357.86A.0071.2018.1102.1400 Date: November 2, 2018 ME Firmware: 11.8.50.3425

More information

AMD SR5690/5670/5650 Register Programming Requirements

AMD SR5690/5670/5650 Register Programming Requirements AMD Register Programming Requirements Publication # 43872 Revision: Rev 3.05 Issue Date: August 2012 Trademarks AMD, the AMD Arrow logo, and combinations thereof, are trademarks of Advanced Micro Devices,

More information

I/O. Fall Tore Larsen. Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum)

I/O. Fall Tore Larsen. Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum) I/O Fall 2011 Tore Larsen Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum) Big Picture Today we talk about I/O characteristics interconnection devices & controllers (disks

More information

I/O. Fall Tore Larsen. Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum)

I/O. Fall Tore Larsen. Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum) I/O Fall 2010 Tore Larsen Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum) Big Picture Today we talk about I/O characteristics interconnection devices & controllers (disks

More information

BIOS Update Release Notes

BIOS Update Release Notes BIOS Update Release Notes PRODUCTS: DP67BA, DP67DE (Standard BIOS) BIOS Version 0082 - BAP6710H.86A.0082.2018.0412.1527 Date: April 12, 2018 ME Firmware: 7.1.60.1193, 8.0.13.1502 SATA RAID Option ROM:

More information

Introduction Electrical Considerations Data Transfer Synchronization Bus Arbitration VME Bus Local Buses PCI Bus PCI Bus Variants Serial Buses

Introduction Electrical Considerations Data Transfer Synchronization Bus Arbitration VME Bus Local Buses PCI Bus PCI Bus Variants Serial Buses Introduction Electrical Considerations Data Transfer Synchronization Bus Arbitration VME Bus Local Buses PCI Bus PCI Bus Variants Serial Buses 1 Most of the integrated I/O subsystems are connected to the

More information