Kernel

Enable net.ipv4.ping_group_range

Fedora 31 now supports the net.ipv4.ping_group_range kernel parameter for all user groups. This change enables all users to create Internet Control Message Protocol (ICMP) Echo sockets without using the setuid binaries, or having the CAP_NET_ADMIN and CAP_NET_RAW file capabilities.

As a result, the rootless podman containers are now able to use the ping utility. This change applies also to users developing on the Fedora Silverblue variant, who use containers created through the toolbox utility.

No bootable images for i686 kernels

Fedora 31 no longer provides 32-bit kernels or bootable images for i686 systems. This change is a result of ever decreasing amount of users with 32-bit only hardware.

The kernel-headers package continues to exist in the i686 package.

Fedora now uses cgroups-v2 by default

Enablement of control groups version 2 (cgroups-v2) by default allows the system utilities to conveniently take advantage of new functionality and fixes this kernel feature brings.

Users have to update any tools or scripts they used for manual configuration of cgroups-v1 so that they reflect cgroups-v2 now. The tools or scripts should not require any changes, if they utilized the systemd interfaces.

Some container engines leak the control group hierarchy into containers. This could pose a problem for container images that expect to be running in a control group version 1 environment. This change is tied to the removal of the docker package in Fedora 31; see the Containers section for details.

To retain the old default of control groups version 1 (cgroups-v1), set the following kernel command line parameter:

`systemd.unified_cgroup_hierarchy=0`