ABI removed symbols — The Linux Kernel 5.18.5-gnu-1 documentation

# ABI removed symbols

## Symbols under /sys/bus

/sys/bus/nd/devices/regionX/nfit/ecc_unit_size

Defined on file sysfs-bus-nfit

(RO) Size of a write request to a DIMM that will not incur a read-modify-write cycle at the memory controller.

When the nfit driver initializes it runs an ARS (Address Range Scrub) operation across every pmem range. Part of that process involves determining the ARS capabilities of a given address range. One of the capabilities that is reported is the ‘Clear Uncorrectable Error Range Length Unit Size’ (see: ACPI 6.2 section 9.20.7.4 Function Index 1 - Query ARS Capabilities). This property indicates the boundary at which the NVDIMM may need to perform read-modify-write cycles to maintain ECC (Error Correcting Code) blocks.

## Symbols under /sys/class

/sys/class/rfkill/rfkill[0-9]+/claim

Defined on file sysfs-class-rfkill

This file was deprecated because there no longer was a way to claim just control over a single rfkill instance. This file was scheduled to be removed in 2012, and was removed in 2016. Values: 0: Kernel handles events

## Symbols under /sys/devices

/sys/devices/system/machinecheck/machinecheckX/tolerant

Defined on file sysfs-mce

Unused and obsolete after the advent of recoverable machine checks (see last sentence below) and those are present since 2010 (Nehalem).

Original description:

The entries appear for each CPU, but they are truly shared between all CPUs.

Tolerance level. When a machine check exception occurs for a non corrected machine check the kernel can take different actions.

Since machine check exceptions can happen any time it is sometimes risky for the kernel to kill a process because it defies normal kernel locking rules. The tolerance level configures how hard the kernel tries to recover even at some risk of deadlock. Higher tolerant values trade potentially better uptime with the risk of a crash or even corruption (for tolerant >= 3).

0 | always panic on uncorrected errors, log corrected errors
1 | panic or SIGBUS on uncorrected errors, log corrected errors
2 | SIGBUS or log uncorrected errors, log corrected errors
3 | never panic or SIGBUS, log all errors (for testing only)

Default: 1

Note this only makes a difference if the CPU allows recovery from a machine check exception. Current x86 CPUs generally do not.

## Symbols under /sys/kernel

/sys/kernel/fadump_release_opalcore

Defined on file sysfs-kernel-fadump_release_opalcore

write only The sysfs file is available when the system is booted to collect the dump on OPAL based machine. It used to release the memory used to collect the opalcore.

/sys/kernel/uids/<uid>/cpu_shares

Defined on file sysfs-kernel-uids

The /sys/kernel/uids/<uid>/cpu_shares tunable is used to set the cpu bandwidth a user is allowed. This is a proportional value. What that means is that if there are two users logged in, each with an equal number of shares, then they will get equal CPU bandwidth. Another example would be, if User A has shares = 1024 and user B has shares = 2048, User B will get twice the CPU bandwidth user A will. For more details refer CFS Scheduler

## Symbols under /sys/o2cb

/sys/o2cb symlink

Defined on file o2cb

This is a symlink: /sys/o2cb to /sys/fs/o2cb. The symlink is removed when new versions of ocfs2-tools which know to look in /sys/fs/o2cb are sufficiently prevalent. Don’t code new software to look here, it should try /sys/fs/o2cb instead.

Users: ocfs2-tools. It’s sufficient to mail proposed changes to ocfs2-devel@oss.oracle.com.

## devfs

devfs

Defined on file devfs

devfs has been unmaintained for a number of years, has unfixable races, contains a naming policy within the kernel that is against the LSB, and can be replaced by using udev.

The files fs/devfs/, include/linux/devfs_fs.h were removed, along with the assorted devfs function calls throughout the kernel tree.

## Symbols under dv1394

dv1394 (a.k.a. "OHCI-DV I/O support" for FireWire)

Defined on file dv1394

/dev/dv1394/* were character device files, one for each FireWire controller and for NTSC and PAL respectively, from which DV data could be received by read() or transmitted by write(). A few ioctl()s allowed limited control. This special-purpose interface has been superseded by libraw1394 + libiec61883 which are functionally equivalent, support HDV, and transparently work on top of the newer firewire kernel drivers.

Users:

ffmpeg/libavformat (if configured for DV1394)

## ip_queue

ip_queue

Defined on file ip_queue

ip_queue has been replaced by nfnetlink_queue which provides more advanced queueing mechanism to user-space. The ip_queue module was already announced to become obsolete years ago.

## Symbols under raw1394

raw1394 (a.k.a. "Raw IEEE1394 I/O support" for FireWire)

Defined on file raw1394

/dev/raw1394 was a character device file that allowed low-level access to FireWire buses. Its major drawbacks were its inability to implement sensible device security policies, and its low level of abstraction that required userspace clients to duplicate much of the kernel’s ieee1394 core functionality.

Replaced by /dev/fw*, i.e. the <linux/firewire-cdev.h> ABI of firewire-core.

Users:

libraw1394 (works with firewire-cdev too, transparent to library ABI users)

## tcp_dma_copybreak sysctl

tcp_dma_copybreak sysctl

Defined on file net_dma

Formerly the lower limit, in bytes, of the size of socket reads that will be offloaded to a DMA copy engine. Removed due to coherency issues of the cpu potentially touching the buffers while dma is in flight.

## video1394 (a.k.a. “OHCI-1394 Video support” for FireWire)

video1394 (a.k.a. "OHCI-1394 Video support" for FireWire)

Defined on file video1394

/dev/video1394/* were character device files, one for each FireWire controller, which were used for isochronous I/O. It was added as an alternative to raw1394’s isochronous I/O functionality which had performance issues in its first generation. Any video1394 user had to use raw1394 + libraw1394 too because video1394 did not provide asynchronous I/O for device discovery and configuration.

Replaced by /dev/fw*, i.e. the <linux/firewire-cdev.h> ABI of firewire-core.

Users:

libdc1394 (works with firewire-cdev too, transparent to library ABI users)

## File /build/linux-libre/src/linux-5.18/removed/devfs

Has the following ABI:

- devfs

## File /build/linux-libre/src/linux-5.18/removed/dv1394

Has the following ABI:

- dv1394 (a.k.a. “OHCI-DV I/O support” for FireWire)

## File /build/linux-libre/src/linux-5.18/removed/ip_queue

Has the following ABI:

- ip_queue

## File /build/linux-libre/src/linux-5.18/removed/net_dma

Has the following ABI:

- tcp_dma_copybreak sysctl

## File /build/linux-libre/src/linux-5.18/removed/o2cb

Has the following ABI:

- /sys/o2cb symlink

## File /build/linux-libre/src/linux-5.18/removed/raw1394

Has the following ABI:

- raw1394 (a.k.a. “Raw IEEE1394 I/O support” for FireWire)

## File /build/linux-libre/src/linux-5.18/removed/sysfs-bus-nfit

Has the following ABI:

- /sys/bus/nd/devices/regionX/nfit/ecc_unit_size

## File /build/linux-libre/src/linux-5.18/removed/sysfs-class-rfkill

rfkill - radio frequency (RF) connector kill switch support

For details to this subsystem look at rfkill - RF kill switch support.

Has the following ABI:

- /sys/class/rfkill/rfkill[0-9]+/claim

## File /build/linux-libre/src/linux-5.18/removed/sysfs-kernel-fadump_release_opalcore

This ABI is moved to /sys/firmware/opal/mpipl/release_core.

Has the following ABI:

- /sys/kernel/fadump_release_opalcore

## File /build/linux-libre/src/linux-5.18/removed/sysfs-kernel-uids

Has the following ABI:

- /sys/kernel/uids/<uid>/cpu_shares

## File /build/linux-libre/src/linux-5.18/removed/sysfs-mce

Has the following ABI:

- /sys/devices/system/machinecheck/machinecheckX/tolerant

## File /build/linux-libre/src/linux-5.18/removed/video1394

Has the following ABI:

- video1394 (a.k.a. “OHCI-1394 Video support” for FireWire)