Linux and glibc API changes

As The Linux Programming Interface went to press in August 2010, it was up to date with the then current versions of the Linux kernel (2.6.35), glibc (2.12), and the POSIX.1/Single UNIX Standard (POSIX.1-2008/SUSv4).

Because the developers of both the Linux kernel and glibc are committed to maintaining ABI compatibility, virtually all of the details provided in TLPI should remain accurate in the future. However, (a few) new features are added to the kernel and glibc with each release. As each new release of the Linux kernel and glibc occurs, this page will attempt to note new interface features that are relevant to the subject area of the book. In addition, this page provides links to information about subsequent updates to the POSIX/SUS standard.



Linux kernel API changes

Linux 6.8 (Not yet released)

API changes include the following:

See also: LWN articles on the kernel 6.8 merge window (1, 2) and the Kernel Newbies kernel 6.8 summary.

Linux 6.7 (7 January 2024)

API changes include the following:

See also: LWN articles on the kernel 6.7 merge window (1, 2) and the Kernel Newbies kernel 6.7 summary.

Linux 6.6 (29 October 2023)

API changes include the following:

See also: LWN articles on the kernel 6.6 merge window (1, 2) and the Kernel Newbies kernel 6.6 summary.

Linux 6.5 (27 August 2023)

API changes include the following:

See also: LWN articles on the kernel 6.5 merge window (1, 2) and the Kernel Newbies kernel 6.5 summary.

Linux 6.4 (25 June 2023)

API changes include the following:

See also: LWN articles on the kernel 6.4 merge window (1, 2) and the Kernel Newbies kernel 6.4 summary.

Linux 6.3 (23 April 2023)

API changes include the following:

See also: LWN articles on the kernel 6.3 merge window (1, 2) and the Kernel Newbies kernel 6.3 summary.

Linux 6.2 (19 February 2023)

API changes include the following:

See also: LWN articles on the kernel 6.2 merge window (1, 2) and the Kernel Newbies kernel 6.2 summary.

Linux 6.1 (11 December 2022)

API changes include the following:

See also: LWN articles on the kernel 6.1 merge window (1, 2) and the Kernel Newbies kernel 6.1 summary.

Linux 6.0 (2 October 2022)

API changes include the following:

See also: LWN articles on the kernel 6.0 merge window (1, 2) and the Kernel Newbies kernel 6.0 summary.

Linux 5.19 (31 July 2022)

API changes include the following:

See also: LWN articles on the kernel 5.19 merge window (1, 2) and the Kernel Newbies kernel 5.19 summary.

Linux 5.18 (22 May 2022)

API changes include the following:

See also: LWN articles on the kernel 5.18 merge window (1, 2) and the Kernel Newbies kernel 5.18 summary.

Linux 5.17 (20 March 2022)

API changes include the following:

See also: LWN articles on the kernel 5.17 merge window (1, 2) and the Kernel Newbies kernel 5.17 summary.

Linux 5.16 (9 January 2022)

API changes include the following:

See also: LWN articles on the kernel 5.16 merge window (1, 2) and the Kernel Newbies kernel 5.16 summary.

Linux 5.15 (31 October 2021)

API changes include the following:

See also: LWN articles on the kernel 5.15 merge window (1, 2) and the Kernel Newbies kernel 5.15 summary.

Linux 5.14 (29 August 2021)

API changes include the following:

See also: LWN articles on the kernel 5.14 merge window (1, 2) and the Kernel Newbies kernel 5.14 summary.

Linux 5.13 (27 June 2021)

API changes include the following:

See also: LWN articles on the kernel 5.13 merge window (1, 2) and the Kernel Newbies kernel 5.13 summary.

Linux 5.12 (25 April 2021)

API changes include the following:

See also: LWN articles on the kernel 5.12 merge window (1, 2) and the Kernel Newbies kernel 5.12 summary.

Linux 5.11 (14 February 2021)

API changes include the following:

See also: LWN articles on the kernel 5.11 merge window (1, 2) and the Kernel Newbies kernel 5.11 summary.

Linux 5.10 (13 December 2020)

API changes include the following:

See also: LWN articles on the kernel 5.10 merge window (1, 2) and the Kernel Newbies kernel 5.10 summary.

Linux 5.9 (11 October 2020)

API changes include the following:

See also: LWN articles on the kernel 5.9 merge window (1, (2) and the Kernel Newbies kernel 5.9 summary.

Linux 5.8 (2 August 2020)

API changes include the following:

See also: LWN articles on the kernel 5.8 merge window (1, 2) and the Kernel Newbies kernel 5.8 summary.

Linux 5.7 (31 May 2020)

API changes include the following:

See also: LWN articles on the kernel 5.7 merge window (1, 2) and the Kernel Newbies kernel 5.7 summary.

Linux 5.6 (29 March 2020)

API changes include the following:

See also: LWN articles on the kernel 5.6 merge window (1, 2) and the Kernel Newbies kernel 5.6 summary.

Linux 5.5 (26 January 2020)

API changes include the following:

See also: LWN articles on the kernel 5.5 merge window (1, 2) and the Kernel Newbies kernel 5.5 summary.

Linux 5.4 (25 November 2019)

API changes include the following:

See also: LWN articles on the kernel 5.4 merge window (1, 2) and the Kernel Newbies kernel 5.4 summary.

Linux 5.3 (15 September 2019)

API changes include the following:

See also: LWN articles on the kernel 5.3 merge window (1, 2) and the Kernel Newbies kernel 5.3 summary.

Linux 5.2 (7 July 2019)

API changes include the following:

See also: LWN articles on the kernel 5.2 merge window (1, 2) and the Kernel Newbies kernel 5.2 summary.

Linux 5.1 (5 May 2019)

API changes include the following:

See also: LWN articles on the kernel 5.1 merge window (1, 2) and the Kernel Newbies kernel 5.1 summary.

Linux 5.0 (3 March 2019)

API changes include the following:

See also: LWN articles on the kernel 5.0 merge window (1, 2) and the Kernel Newbies kernel 5.0 summary.

Linux 4.20 (23 Dec 2018)

API changes include the following:

See also: LWN articles on the kernel 4.20 merge window (1, 2) and the Kernel Newbies kernel 4.20 summary.

Linux 4.19 (22 Oct 2018)

API changes include the following:

See also: LWN articles on the kernel 4.19 merge window (1, 2) and the Kernel Newbies kernel 4.19 summary.

Linux 4.18 (12 Aug 2018)

API changes include the following:

See also: LWN articles on the kernel 4.18 merge window (1, 2) and the Kernel Newbies kernel 4.18 summary.

Linux 4.17 (3 June 2018)

API changes include the following:

See also: LWN articles on the kernel 4.17 merge window (1, 2) and the Kernel Newbies kernel 4.17 summary.

Linux 4.16 (1 April 2018)

API changes include the following:

See also: LWN articles on the kernel 4.16 merge window (1, 2) and the Kernel Newbies kernel 4.16 summary.

Linux 4.15 (28 Jan 2018)

API changes include the following:

See also: LWN articles on the kernel 4.15 merge window (1, 2) and the Kernel Newbies kernel 4.15 summary.

Linux 4.14 (12 Nov 2017)

API changes include the following:

See also: LWN articles on the kernel 4.14 merge window (1, 2) and the Kernel Newbies kernel 4.14 summary.

Linux 4.13 (3 Sep 2017)

API changes include the following:

See also: LWN articles on the kernel 4.13 merge window (1, 2) and the Kernel Newbies kernel 4.13 summary.

Linux 4.12 (2 Jul 2017)

API changes include the following:

See also: LWN articles on the kernel 4.12 merge window (1, 2, 3) and the Kernel Newbies kernel 4.12 summary.

Linux 4.11 (30 April 2017)

API changes include the following:

See also: LWN articles on the kernel 4.11 merge window (1, 2, 3) and the Kernel Newbies kernel 4.11 summary.

Linux 4.10 (19 Feb 2017)

API changes include the following:

See also: LWN articles on the kernel 4.10 merge window (1, 2, 3) and the Kernel Newbies kernel 4.10 summary.

Linux 4.9 (11 Dec 2016)

API changes include the following:

See also: LWN articles on the kernel 4.9 merge window (1, 2, 3) and the Kernel Newbies kernel 4.9 summary.

Linux 4.8 (2 Oct 2016)

API changes include the following:

See also: LWN articles on the kernel 4.8 merge window (1, 2, 3) and the Kernel Newbies kernel 4.8 summary.

Linux 4.7 (24 July 2016)

API changes include the following:

See also: LWN articles on the kernel 4.7 merge window (1, 2, 3) and the Kernel Newbies kernel 4.7 summary.

Linux 4.6 (15 May 2016)

API changes include the following:

See also: LWN articles on the kernel 4.6 merge window (1, 2, 3) and the Kernel Newbies kernel 4.6 summary.

Linux 4.5 (14 Mar 2016)

API changes include the following:

See also: LWN articles on the kernel 4.5 merge window (1, 2, 3) and the Kernel Newbies kernel 4.5 summary.

Linux 4.4 (10 Jan 2016)

API changes include the following:

See also: LWN articles on the kernel 4.4 merge window (1, 2) and the Kernel Newbies kernel 4.4 summary.

Linux 4.3 (1 Nov 2015)

API changes include the following:

See also: LWN articles on the kernel 4.3 merge window (1, 2, 3) and the Kernel Newbies kernel 4.3 summary.

Linux 4.2 (30 Aug 2015)

API changes include the following:

See also: LWN articles on the kernel 4.2 merge window (1, 2, 3) and the Kernel Newbies kernel 4.2 summary.

Linux 4.1 (21 June 2015)

API changes include the following:

See also: LWN articles on the kernel 4.1 merge window (1, 2, 3) and the Kernel Newbies kernel 4.1 summary.

Linux 4.0 (12 April 2015)

API changes include the following:

See also: LWN articles on the kernel 4.0 merge window (1, 2, 3) and the Kernel Newbies kernel 4.0 summary.

Linux 3.19 (9 Feb 2015)

API changes include the following:

See also: LWN articles on the kernel 3.19 merge window (1, 2, 3) and the Kernel Newbies kernel 3.19 summary.

Linux 3.18 (7 December 2014)

API changes include the following:

See also: LWN articles on the kernel 3.18 merge window (1, 2, 3) and the Kernel Newbies kernel 3.18 summary.

Linux 3.17 (5 October 2014)

API changes include the following:

See also: LWN articles on the kernel 3.17 merge window (1, 2, 3) and the Kernel Newbies kernel 3.17 summary.

Linux 3.16 (3 August 2014)

API changes include the following:

See also: LWN articles on the kernel 3.16 merge window (1, 2, 3) and the Kernel Newbies kernel 3.16 summary.

Linux 3.15 (8 Jun 2014)

API changes include the following:

See also: LWN articles on the kernel 3.15 merge window (1, 2) and the Kernel Newbies kernel 3.15 summary.

Linux 3.14 (31 Mar 2014)

API changes include the following:

See also: LWN articles on the kernel 3.14 merge window (1, 2, 3) and the Kernel Newbies kernel 3.14 summary.

Linux 3.13 (20 Jan 2014)

API changes include the following:

See also: LWN articles on the kernel 3.13 merge window (1, 2, 3) and the Kernel Newbies kernel 3.13 summary.

Linux 3.12 (3 Nov 2013)

API changes include the following:

See also: LWN articles on the kernel 3.12 merge window (1, 2, 3) and the Kernel Newbies kernel 3.12 summary.

Linux 3.11 (2 Sep 2013)

API changes include the following:

See also: LWN articles on the kernel 3.11 merge window (1, 2, 3) and the Kernel Newbies kernel 3.11 summary.

Linux 3.10 (30 Jun 2013)

API changes include the following:

See also: LWN articles on the kernel 3.10 merge window (1, 2, 3) and the Kernel Newbies kernel 3.10 summary.

Linux 3.9 (29 Apr 2013)

API changes include the following:

See also: LWN articles on the kernel 3.9 merge window (1, 2, 3) and the Kernel Newbies kernel 3.9 summary.

Linux 3.8 (19 Feb 2013)

API changes include the following:

See also: LWN articles on the kernel 3.8 merge window (1, 2) and the Kernel Newbies kernel 3.8 summary.

Linux 3.7 (11 Dec 2012)

API changes include the following:

See also: LWN articles on the kernel 3.7 merge window (1, 2, 3) and the Kernel Newbies kernel 3.7 summary.

Linux 3.6 (1 Oct 2012)

API changes include the following:

See also: LWN articles on the kernel 3.6 merge window (1, 2, 3) and the Kernel Newbies kernel 3.6 summary.

Linux 3.5 (21 Jul 2012)

API changes include the following:

See also: LWN articles on the kernel 3.5 merge window (1, 2, 3) and the Kernel Newbies kernel 3.5 summary.

Linux 3.4 (21 May 2012)

API changes include the following:

See also: LWN articles on the kernel 3.4 merge window (1, 2, 3) and the Kernel Newbies kernel 3.4 summary.

Linux 3.3 (19 Mar 2012)

API changes include the following:

See also: LWN articles on the kernel 3.3 merge window (1, 2) and the Kernel Newbies kernel 3.3 summary.

Linux 3.2 (5 Jan 2012)

API changes include the following:

See also: LWN articles on the kernel 3.2 merge window (1, 2) and the Kernel Newbies kernel 3.2 summary.

Linux 3.1 (24 Oct 2011)

API changes include the following:

See also: LWN articles on the kernel 3.1 merge window (1, 2) and the Kernel Newbies kernel 3.1 summary.

Linux 3.0 (?) (22 Jul 2011)

API changes include the following:

See also: LWN articles on the kernel 3.0 merge window (1, 2) and the Kernel Newbies kernel 3.0 summary.

Linux 2.6.39 (19 May 2011)

API changes include the following:

See also: LWN articles on the kernel 2.6.39 merge window (1, 2, 3) and the Kernel Newbies kernel 2.6.39 summary.

Linux 2.6.38 (15 Mar 2011)

API changes include the following:

See also: LWN articles on the kernel 2.6.38 merge window (1, 2) and the Kernel Newbies kernel 2.6.38 summary.

Linux 2.6.37 (5 Jan 2011)

API changes include the following:

See also: LWN articles on the kernel 2.6.37 merge window (1, 2) and the Kernel Newbies kernel 2.6.37 summary.

Linux 2.6.36 (20 Oct 2010)

API changes include the following:

See also: LWN articles on the kernel 2.6.36 merge window (1, 2) and the Kernel Newbies kernel 2.6.36 summary.


glibc API changes

glibc 2.38 (31 July 2023)

API changes include the following:

glibc 2.37 (31 January 2023)

API changes include the following:

glibc 2.36 (30 July 2022)

API changes include the following:

glibc 2.35 (3 February 2022)

API changes include the following:

glibc 2.34 (2 August 2021)

API changes include the following:

glibc 2.33 (1 February 2021)

API changes include the following:

glibc 2.32 (5 August 2020)

API changes include the following:

glibc 2.31 (1 February 2020)

API changes include the following:

glibc 2.30 (1 Aug 2019)

API changes include the following:

Other changes include the following:

glibc 2.29 (31 Jan 2019)

API changes include the following:

glibc 2.28 (1 Aug 2018)

API changes include the following:

glibc 2.27 (1 Feb 2018)

API changes include the following:

glibc 2.26 (2 Aug 2017)

API changes include the following:

glibc 2.25 (5 Feb 2017)

API changes include the following:

glibc 2.24 (2 Aug 2016)

API changes include the following:

glibc 2.23 (18 Feb 2016)

API changes include the following:

glibc 2.22 (5 Aug 2015)

API changes include the following:

glibc 2.21 (6 Feb 2015)

The obsolete sigvec() function is removed.

glibc 2.20 (7 Sep 2014)

Note: the minimum Linux kernel version to run with this and later glibc versions is Linux 2.6.32.

API changes include the following:

glibc 2.19 (7 Feb 2014)

API changes include the following:

glibc 2.18 (10 Aug 2013)

API changes include the following:

glibc 2.17 (25 Dec 2012)

Note: the minimum Linux kernel version to run with this and later glibc versions is Linux 2.6.16.

API changes include the following:

glibc 2.16 (30 Jun 2012)

Note: this and subsequent glibc versions are not expected to work with any Linux kernel less than version 2.6.

API changes include the following:

glibc 2.15 (tagged 25 Dec 2011)

API changes include the following:

glibc 2.14 (tagged 31 May 2011)

API changes include the following:

glibc 2.13 (tagged 17 Jan 2011)

API changes include the following:


POSIX/Single UNIX Specification

Since the last major release of the POSIX/SUS standard (Issue 7) in 2008, there have been some Technical Corrigenda—essentially bug fix releases to the standard. In addition, work proceeds on the next release (Issue 8).

The Austin Group Defect Tracker can be found here.

Issues marked for the next POSIX release (in progress)

The issues tagged for the next release of the standard (Issue 8) can be found here here.

POSIX.1-2008 Technical Corrigendum 3 (in progress)

Work on POSIX.1-2008 Technical Corrigendum 3 is in progress.

The issues tagged for TC 3 can be found here.

POSIX.1-2008 Technical Corrigendum 2 (SUSv4 2016 Edition)

Work on POSIX.1-2008 Technical Corrigendum 2 was completed in 2016. TC 2 can be found here.

The issues tagged for TC 2 can be found here.

POSIX.1-2008 Technical Corrigendum 1

Work on POSIX.1-2008 Technical Corrigendum 1 was completed in 2013. TC 1 can be found here.

The issues tagged for TC 1 can be found here.