---
name: "kldunload"
section: "2"
platform: "linux"
package: "freebsd-manpages"
version: "6.0-5"
release: "Debian 4.0 (Etch)"
platforms: ["linux", "freebsd"]
url: "https://new.carta.tech/kldunload/2"
---

# kldunload(2)

unload kld files

## NAME

**kldunload** – unload kld files

## LIBRARY

Standard C Library (libc, -lc)

## SYNOPSIS

**#include \<sys/param.h\>**

**#include \<sys/linker.h\>**

*int*\

**kldunload**(*int fileid*);

## DESCRIPTION

The **kldunload**() system call unloads a kld file from the kernel that was previously linked via [kldload(2)](/kldload/2.md).

## RETURN VALUES

The **kldunload()** function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.

## ERRORS

The file referred to by *fileid* is unloaded unless:

- \[EPERM\]

  You do not have access to unlink the file from the kernel.

- \[ENOENT\]

  The file was not found.

- \[EBUSY\]

  You attempted to unload a file linked by the kernel.

## SEE ALSO

[kldfind(2)](/kldfind/2.md), [kldfirstmod(2)](/kldfirstmod/2.md), [kldload(2)](/kldload/2.md), [kldnext(2)](/kldnext/2.md), [kldstat(2)](/kldstat/2.md), [kldsym(2)](/kldsym/2.md), [modfind(2)](/modfind/2.md), [modfnext(2)](/modfnext/2.md), [modnext(2)](/modnext/2.md), [modstat(2)](/modstat/2.md), [kld(4)](/kld/4.md), [kldunload(8)](/kldunload/8.md)

## HISTORY

The **kld** interface first appeared in FreeBSD 3.0.
