X86_64_IOPL(2) | System Calls Manual (x86_64) | X86_64_IOPL(2)

# NAME

`x86_64_iopl` —
change the x86_64 I/O privilege level

# LIBRARY

x86_64 Architecture Library (libx86_64, -lx86_64)

# SYNOPSIS

`#include <sys/types.h>`
`#include <machine/sysarch.h>`

int
`x86_64_iopl`(int iopl);

# DESCRIPTION

`x86_64_iopl`() sets the x86_64 I/O privilege level to the value specified by iopl. This call is restricted to the super-user.

# RETURN VALUES

Upon successful completion, `x86_64_iopl`() returns 0. Otherwise, a value of -1 is returned and the global variable errno is set to indicate the error.

# ERRORS

`x86_64_iopl`() will fail if:

[`EPERM`]
  The caller was not the super-user, or the operation was not permitted at the current security level.

# WARNING

You can really hose your machine if you enable user-level I/O and write to hardware ports without care.

July 3, 2002 | NetBSD 9.0