Move initrd position, add openresolv and ip6addrctl
[ikiwiki.git] / release54 / index.mdwn
1 # DragonFly BSD 5.4
2
3 * Version 5.4.0 released xx XXXX 2018
4
5 ** NOTE THAT THIS IS A PAGE IN PROGRESS AND IS INCOMPLETE.  5.4 IS NOT RELEASED. DO NOT LINK TO, READ, OR ACKNOWLEDGE THE EXISTENCE OF THIS PAGE. **
6
7 DragonFly version 5.4 brings a new system compiler, various network and virtual machine driver updates, and updates to video support.
8
9 The details of all commits between the 5.2 and 5.4 branches are available in the associated commit messages for [5.4.0rc](http://lists.dragonflybsd.org/pipermail/commits/2018-November/718131.html) and [5.4.0]().
10  
11 ## Big-ticket items
12
13 * Better support for asymmetric NUMA configurations.  In particular, both the memory subsystem and the scheduler now understand the Threadripper 2990WX's architecture.  The scheduler will prioritize cpu nodes with direct-attached memory and the memory subsystem will normalize memory queues for cpu nodes without direct-attached memory (which improves cache locality on those cpus).
14
15 * Incremental performance work.  DFly as a whole is very SMP friendly.  The type of performance work we are doing now mostly revolves around improving fairness for shared-v-exclusive lock clashes, reducing cache ping-ponging due to non-contending SMP locks (i.e. massive use of shared locks on shared resources), and so forth.
16
17 * Major updates to dports brings us to within a week or two of FreeBSD's ports as of this writing, in particular major updates to chromium, and making the whole mess work with gcc-8.
18
19 ### GCC 8 
20
21 * DragonFly now ships with GCC 8.0, and runs as the default compiler. It is also now used for building dports.
22
23 * GCC 4.7.4 and GCC 5.4.1 are still installed.  4.7.4 is our backup compiler, and 5.4.1 is still there to ensure a smooth transition, but should generally not be used.  buildworld builds all three by default to ensure maximum compatibility.
24
25 ### HAMMER2
26
27 * Bug fixing has continued.  HAMMER2 is recommended as the default root filesystem in non-clustered mode.
28 * Clustered support is not yet available.
29 * There is medium-sized update in progress that will not make it into the release, but which will be cherry-picked into the release once it gets into master and is determined to be stable.  This update will guarantee full filesystem tree consistency at all sync points and in all snapshots as well as provide relief for frontend bottlenecks and stalls related to flushes.
30
31 ### Driver updates
32
33 * A number of drivers of use when running DragonFly as a guest VM have been added or updated, including ena, if_vtnet, virtio_balloon, and virtio_pci.
34 * Improvements for DRM and radeon.
35 * Serial-output-only installs are now possible.
36
37 ### Network updates
38
39 * dhcpcd has been added to the base system, and will replace dhclient and rtsold - though not in this release.
40 * A number of network device drivers have been added.
41 * A couple of edge-case panics have been fixed.
42
43 ## Details
44
45 ### Checksums
46
47     MD5 (dfly-x86_64-5.4.0_REL.img) = 
48     MD5 (dfly-x86_64-5.4.0_REL.iso) = 
49     MD5 (dfly-x86_64-5.4.0_REL.img.bz2) = 
50     MD5 (dfly-x86_64-5.4.0_REL.iso.bz2) = 
51
52 ### Upgrading
53
54 If you have an existing 5.2.x system and are running a generic kernel, the normal upgrade process, described below, will work.  
55
56 * Note that DSA OpenSSH keys were deprecated in the 4.6 to 4.8 release.  If you are upgrading from a release older than 4.8 and use DSA OpenSSH keys, please update your private/public key pair or risk locking yourself out.
57
58 * Note that due to base compiler updates, upgrading to 5.1 and later versions now require at least a 4.4 (or later) system.
59
60 Change your local /usr/src to 5.4:
61
62     cd /usr/src
63     git fetch origin
64     git branch DragonFly_RELEASE_5_4 origin/DragonFly_RELEASE_5_4
65     git checkout DragonFly_RELEASE_5_4
66     git pull
67
68 And then rebuild: (in /usr/src )
69
70     make buildworld
71     make buildkernel
72     make installkernel
73     make installworld
74     make upgrade
75
76 Don't forget to upgrade your existing packages.  5.4 packages have already been built and are immediately available.
77
78     pkg upgrade
79
80 ## All changes since DragonFly 5.2
81
82 ### Kernel
83
84 * drm has been updated to match Linux kernel 4.7.10 in a number of locations.
85 * The radeon driver has been updated; currently matches Linux 3.18.
86 * CVE-2018-8897 mitigated.
87 * x2apic timer support added.
88 * various updates to autofs
89
90 ### Networking
91
92 * The network tunnel driver, [tun(4)](https://leaf.dragonflybsd.org/cgi/web-man?command=tun&section=4), has been cleaned up and updated.  It's now clonable for anyone building VPN links.
93 * The [tap(4)](https://leaf.dragonflybsd.org/cgi/web-man?command=tap&section=4) and interface cloning have also received related updates and fixes.
94 * Interface groups are now supported in the kernel and [pf(4)](https://leaf.dragonflybsd.org/cgi/web-man?command=pf&section=4).  They can be configured with [ifconfig(8)](https://leaf.dragonflybsd.org/cgi/web-man?command=ifconfig&section=8)
95 * DragonFly now can use [dhcpcd(8)](https://leaf.dragonflybsd.org/cgi/web-man?command=dhcpcd&section=8) for DHCP, for both IPv4 and IPv6.  See [the announcement](http://lists.dragonflybsd.org/pipermail/users/2018-November/357989.html) for details.  The existing utilities dhclient(8) and rtsold(8) are still supported, so no configuration change is required yet.
96 * The ena (Elastic Network Adapter) network driver has been added.
97 * if_iwm has had multiple updates.
98 * if_vtnet, the virtual I/O Ethernet driver, has been updated.
99
100 ### Other drivers
101
102 * The virtio_balloon memory driver has been added.
103 * /dev/sndstat can now be opened multiple times by the same device.
104 * mpr(4) driver for LSI Fusion-MPT 3/3.5 SAS controllers added.
105 * MosChip PCIe serial communications now supported.
106
107 ### Userland
108
109 ### Boot
110
111 * The initrd has had significant improvement and now forms a much more complete rescue system, with over 70 tools added via [crunchgen(1)](https://leaf.dragonflybsd.org/cgi/web-man?command=crunchgen&section=1).  See the [initrd(7)](https://leaf.dragonflybsd.org/cgi/web-man?command=initrd&section=7) man page for details.
112
113 ### Various tools have been upgraded in the base system:
114
115 * [dhcpcd](http://roy.marples.name/projects/dhcpcd) 7.0.8 imported.
116 * [openresolv](https://roy.marples.name/projects/openresolv) 3.9.0 imported, installed as [resolvconf(8)](https://leaf.dragonflybsd.org/cgi/web-man?command=resolvconf&section=8).
117 * [ip6addrctl(8)](https://leaf.dragonflybsd.org/cgi/web-man?command=ip6addrctl&section=8) together with a rc script imported from FreeBSD.
118 * DHCP server for network installs updated to net/isc-dhcp44-server.
119 * OpenSSH updated to 7.6p1.
120 * ACPICA updated to 20181031.
121 * Time zone data updated to tzdata2018g.
122
123 ### Hammer1 Changes
124
125
126 ### Hammer2 Changes
127
128
129 ### Compiler status
130
131 * gcc 8
132
133 ### Package updates
134
135 * status of web browsers - link to page
136
137 ### 64-bit status
138
139 * Note that DragonFly is a 64-bit-only operating system as of 4.6, and will not run on 32-bit hardware.
140
141