forked from freebsd/freebsd-src
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathUPDATING
More file actions
2502 lines (2051 loc) · 102 KB
/
UPDATING
File metadata and controls
2502 lines (2051 loc) · 102 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Updating Information for users of FreeBSD-CURRENT.
This file is maintained and copyrighted by M. Warner Losh <imp@freebsd.org>.
See end of file for further details. For commonly done items, please see the
COMMON ITEMS: section later in the file. These instructions assume that you
basically know what you are doing. If not, then please consult the FreeBSD
handbook:
https://docs.freebsd.org/en/books/handbook/cutting-edge/#makeworld
Items affecting the ports and packages system can be found in
/usr/ports/UPDATING. Please read that file before updating system packages
and/or ports.
NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW:
FreeBSD 15.x has many debugging features turned on, in both the kernel
and userland. These features attempt to detect incorrect use of
system primitives, and encourage loud failure through extra sanity
checking and fail stop semantics. They also substantially impact
system performance. If you want to do performance measurement,
benchmarking, and optimization, you'll want to turn them off. This
includes various WITNESS- related kernel options, INVARIANTS, malloc
debugging flags in userland, and various verbose features in the
kernel. Many developers choose to disable these features on build
machines to maximize performance. (To completely disable malloc
debugging, define WITH_MALLOC_PRODUCTION in /etc/src.conf and rebuild
world, or to merely disable the most expensive debugging functionality
at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".)
20250820:
The WITHOUT_GSSAPI src.conf knob has been removed. This was already
a no-op for MIT Kerberos, so this only affects builds which set
WITHOUT_MITKRB5=1, in which case you now always get libgssapi.
Also, Heimdal's compile_et and libcom_err are now controlled by
WITHOUT_KERBEROS, not WITHOUT_KERBEROS_SUPPORT. This matches
the behaviour of the MIT Kerberos versions.
20250820:
Commits 08c7dd2fbe4f and a4197ea47777 have changed the ABI between
libvmmapi and the vmm device. If using a custom kernel configuration,
please ensure that the COMPAT_FREEBSD14 option is included so older
versions of libvmmapi continue working as expected.
20250819:
The CLEAN option has been switched back from default-on to default-off.
This reverts the 20250808 change below, which had reverted the 20240729
change before it. Note that some src.conf(5) options are known to break
ABI or compatibility in ways that may require a clean build initially
when switched.
20250816:
Sendmail's libmilter has been moved to its own package. If you want
to compile applications that use libmilter, you should install the
FreeBSD-libmilter* packages.
If you only have FreeBSD-sendmail installed for applications that
require libmilter, you can now remove it.
20250815:
jemalloc 5.3.0 has been committed to the tree.
20250815:
The removal of Secure RPC DES authentication notced in 20250810
has been reverted. (However, it is still non-functional.)
20250813:
Commit cce64f2e6851 changed the internal KAPI between the NFS
modules. As such, all of them need to be rebuilt from sources.
__FreeBSD_version has been bumped to 1500060 already today,
so I will not bump it again for this.
20250813:
The gpiobus_attach_bus() function has been removed. Drivers should now
use the gpiobus_add_bus() function instead. The difference being that
gpiobus_add_bus() doesn't call bus_attach_children(), calling it will
be the responsibility of the caller now.
20250810:
Support for Secure RPC DES authentication has been removed.
The keyserv(8) daemon was already removed, but support for it in libc
has also been removed, so if you somehow still had keyserv installed,
it will now stop working. There is no workaround for this. Removing
DES is considered a feature.
20250808:
The CLEAN option has been switched back from default-off to
default-on. This reverts the 20240729 change below.
20250807:
routed(8) and route6d(8) have moved to the FreeBSD-rip package.
If you use either of these, you should install the new package.
20250806:
if_epair(4) now uses ether_gen_addr(9) to generate a stable MAC
address.
To keep using the random address, set the loader tunable
net.link.epair.ether_gen_addr=0.
20250804:
bsdconfig (including sysrc(8)) has moved to the new bsdconfig
package. If you use pkgbase and wish to use bsdconfig, you should
install FreeBSD-bsdconfig.
20250730:
The usbhid(4) USB HID driver is now enabled by default, and will be
used in preference to other USB HID drivers like ukbd(4), ums(4), and
uhid(4). Work on a FIDO/U2F driver and moused(8) is in progress.
The default is being switched now so that we can find and fix any
additional issues prior to FreeBSD 15.0.
To revert to the previous USB HID driver behavior, set the loader
tunable hw.usb.usbhid.enable=0.
20250727:
bmake (i.e., /usr/bin/make and /usr/share/mk) has moved to a new
package, FreeBSD-bmake. If you use pkgbase and you need make, you
should install this package.
20250726:
amd64 kernel configurations must contain "options SMP".
20250725:
gssd(8) has been moved to a new package, FreeBSD-gssd. If you use
pkgbase and you need gssd, you should install this package.
20250724:
The Kerberos packages which are built when WITH_MITKRB5 is enabled
have been renamed from FreeBSD-krb5* to FreeBSD-kerberos*. This
affects pkgbase users who manually enabled WITH_MITKRB5, *or* use
the default value of WITH_MITKRB5 and updated past c7da9fb90b0b
(20250721) which made WITH_MITKRB5 the default.
In either case, if you have FreeBSD-krb5* packages installed, you
should remove them and (re)install the equivalent FreeBSD-kerberos*
packages instead.
20250721:
WITH_MITKRB5 is now enabled by default. MIT KRB5 has replaced
Heimdal in base. Ports that use USES=gssapi must be rebuilt.
A clean buildworld is required.
20250719:
Commits 392a82b225 and c00baac0ab both changed the
internal API between the NFS modules. As such, all
these modules need to be rebuilt from sources.
__FreeBSD_version was bumped to 1500053 for this.
20250710:
The shar(1) utility has been removed from base. The
sysutils/freebsd-shar port was created to maintain this version of
shar(1) past its removal from base.
20250704:
LinuxKPI device.h and acpi changes effecting drivers and drm-kmod.
Bump __FreeBSD_version 1500050 to be able to detect these changes.
20250630:
Commits 171f66b0c2ca and 8e2a90ac8089 changed the internal
api between nfscommon.ko and the other nfs modules.
Bump __FreeBSD_version to 1500049 for this.
All NFS related modules must be rebuilt from up-to-date
sources.
20250625:
"make delete-old" will now remove the Forth bootloader entirely
if the system is built with WITHOUT_FORTH.
20250614:
MIT KRB5 (MIT Kerberos5) has been imported into 15-CURRENT. To
and install MIT KRB5, add WITH_MITKRB5=yes to /etc/src.conf. This
will build and install MIT KRB5 1.21.3. And it will remove Heimdal
1.5.2 when delete-old and delete-old-libs are run. To revert back
simply buildworld/installworld again with delete-old-libs and
delete-old.
At the moment we only know of a couple of ports that might be
affected. Adjusting libmap.conf does not circumvent runtime issues.
The few affected ports must be rebuilt. A successful exp-run will be
run before MIT KRB5 becomes default.
Those using the KDC in FreeBSD base may wish to wait. The Heimdal
HDB is incompatible with the MIT KRB5 KDC. The migration procedure
is a little involved.
20250603:
LinuxKPI dma-mapping.h were pulled into the tree from drm-kmod.
Bump _FreeBSD_version to 1500045 to be able to detect this change.
20250527:
pf changed extension header handling. It now treats AH headers on IPv4 just
like AH headers on IPv6 and skips over them, allowing filtering on the inner
protocol.
20250527:
pf now blocks IPv6 packets with a hop-by-hop or destination options header by
default. Such packets can be passed by adding "allow-opts" to the rule. IPv6
options are now handled just like their IPv4 counterparts.
20250527:
The CAM target layer userland, i.e. ctld(8), ctladm(8) and ctlstat(8),
has moved to the new FreeBSD-ctl package. If you use pkgbase and you
need the CAM Target Layer, you should install the new package.
Development-related tools (e.g. ar and nm) have moved to the new
"FreeBSD-toolchain" package, which subsumes and obsoletes the
existing "FreeBSD-elftoolchain" package. If you use pkgbase and
need to compile software, you should install the new package and
ensure the old FreeBSD-elftoolchain* packages are completely removed.
20250521:
Commit e64fe5ad3a23 removed in6_maxmtu and its setter in6_setmaxmtu().
in6_maxmtu is used to store the max IPv6 MTU of all interfaces,
however it does not have any in-tree consumers since the introduction
from the KAME project. The removal should have little impact, and the
max IPv6 MTU can be easily retrieved by iterating over all the attached
interface if 3rd party modules need it.
20250515:
Commit 772258c89f28 changed the internal API between the nfscommon
and nfscl modules. Both need to be built from updated sources.
20250513:
The bridge(4) sysctl net.link.bridge.member_ifaddrs now defaults to 0,
meaning that interfaces added to a bridge may not have IP addresses
assigned. Refer to bridge(4) for more information.
20250507:
UMASS quirks and auto-quirk probing has been overhauled. CAM now won't
send SYNCHRONIZE CACHE unless MODE PAGE 8 is present and valid. This
should allow more devices to work (since the auto quirk code was updated
in 14 and broke several e-readers and the like). Please send imp@freebsd.org
any regression reports.
20250504:
Commit 9419e086e1a3 changed the internal API between the nfscommon
and nfscl modules. Both need to be built from updated sources.
20250412:
LinuxKPI alloc routines were changed to return physically contiguous
memory where expected. These changes may require out-of-tree drivers
to be recompiled.
Bump __FreeBSD_version to 1500037 to be able to detect this change.
20250409:
Intel iwlwifi firmware has been removed from the src repository.
Before updating their system, users of iwlwifi(4) or iwx(4) must
install the appropriate firmware for their chipset using fwget(8) or
building it from ports.
20250314:
We now use LLVM's binary utilities (nm, objcopy, etc.) by default.
The WITHOUT_LLVM_BINUTILS src.conf(5) knob can be used to revert to
ELF Tool Chain tools if desired.
20250303:
Commit 4a77657cbc01 changed the ABI between ipfw(8) and ipfw(4).
Please note that the old ipfw(8) binary will not work with the new
ipfw(4) module. Therefore, it is recommended to disable ipfw during
the upgrade, otherwise the host system may become inaccessible because
ipfw rules cannot be installed with the old binary.
20250214:
Commit 4517fbfd4251 modified the internal API between the
nfscommon and nfscl modules. As such, both of these modules
need to be rebuilt from sources.
20250201:
The NFS related daemons, that provide RPC services to the kernel:
gssd(8), rpcbind(8), rpc.tlsservd(8) and rpc.tlsclntd(8), now use a
different transport - netlink(4) socket instead of unix(4). Users of
NFS need to upgrade both kernel and world (binaries and libc) at once.
Also, any revision between 88cd1e17a7d8 and 99e5a70046da should be
avoided.
20250129:
Defer the January 19, 2038 date limit in UFS1 filesystems to
February 7, 2106. This affects only UFS1 format filesystems.
See commit message 1111a44301da for details.
20250127:
The Allwinner a10_timer driver has been renamed to aw_driver. If you
have a custom kernel configuration including the line 'device
a10_timer', it must be adjusted to 'device aw_timer'. The same applies
for device exclusions with 'nodevice'.
20250106:
A new SOC_ROCKCHIP options appeared, so if you have a custom kernel configuration
targetting Rockchip SoC you need to add it so shared and mandatory drivers for
this SoC familly will be selected.
Also a new rk8xx device was added, this select the base driver for Rockchip PMIC.
20241223:
The layout of NFS file handles for the tarfs, tmpfs, cd9660, and ext2fs
file systems has changed. An NFS server that exports any of these file
systems will need its clients to unmount and remount the exports.
20241216:
The iwm(4) firmwares are no longer compiled as kernel modules but instead
shipped as raw files. For pkgbase users if you use iwm(4) you will need
to install the FreeBSD-firmware-iwm package.
20241124:
The OpenBSD derived bc and dc implementations and the WITHOUT_GH_BC
option that allowed building them instead of the advanced version
imported more than 4 years ago have been removed.
20241107:
The ng_ubt(4) driver now requires firmwares to be loaded on Realtek
adaptors with rtlbtfw(8) utility. It no longer attaches to devices
standing in bootloader mode. Firmware files are available in the
comms/rtlbt-firmware port.
20241025:
The support for the rc_fast_and_loose variable has been removed from
rc.subr(8). Users setting rc_fast_and_loose on their systems are
advised to make sure their customizations to rc service scripts
do not depend on having a single shell environment shared across
all the rc service scripts during booting and shutdown.
20241013:
The ciss driver was updated to cope better with hotplug events that
caused it to panic before, and to support more than 48 drives attached
to the card. These changes were made w/o benefit of hardware for testing
and ciss(4) users should be on the lookout for regressions.
20240729:
The build now defaults to WITHOUT_CLEAN - i.e., no automatic clean
is performed at the beginning of buildworld or buildkernel. The
WITH_CLEAN src.conf(5) knob can be used to restore the previous
behaviour.
If you encounter incremental build issues, please report them to the
freebsd-current mailing list so that a special-case dependency can be
added, if necessary.
20240715:
We now lean more heavily on ACPI enumeration for some traditional
devices. uart has moved from isa to acpi so the hints act as wiring
instead of device enumeration. Hints for parallel port, floppy, etc
have been removed. Before upgrading, grep your dmesg for lines like:
uart1: non-PNP ISA device will be removed from GENERIC in FreeBSD 15.
to see if you need to start including hints for the device on isa
in your loader.conf or device.hints file. APU1 (but not APU2) boards
are known to be affected, but there may be others.
20240712:
Support for armv6 has been disconnected and is being removed.
20240617:
ifconfig now treats IPv4 addresses without a width or mask as an error.
Specify the desired mask or width along with the IP address on the
ifconfig command line and in rc.conf.
20240428:
OpenBSM auditing runtime (auditd, etc.) has been moved into the new
package FreeBSD-audit. If you use OpenBSM auditing and pkgbase, you
should install FreeBSD-audit.
20240424:
cron, lpr, and ntpd have been moved from FreeBSD-utilities into their
own packages. If you use pkgbase, you should install the relevant
packages: FreeBSD-cron, FreeBSD-lp, or FreeBSD-ntp.
20240406:
Clang, llvm, lld, lldb, compiler-rt, libc++, libunwind and openmp have
been upgraded to 18.1.6. It is important that you run `make delete-old`
as described in the COMMON ITEMS section, otherwise several libc++
headers that are obsolete and need to be removed can cause compilation
errors in C++ programs.
20240205:
For dynamically linked programs, system calls are now made from
libsys rather than libc. No change in linkage is required as
libsys is an auxiliary filter for libc. People building custom
images must ensure that libsys.so.7 is included.
20240202:
Loader now also read configuration files listed in local_loader_conf_files.
Files listed here are the last ones read. And /boot/loader.conf.local was
moved from loader_conf_files to local_loader_conf_files leaving only
loader.conf and device.hints in loader_conf_files by default.
The following sequencing is applied:
1. Bootstrap:
/boot/defaults/loader.conf
2. Read loader_conf_files files:
/boot/device.hints
/boot/loader.conf
3. Read loader_conf_dirs files:
/boot/loader.conf.d/*.conf
4. And finally, rread local_loader_conf_files files:
/boot/loader.conf.local
20240201:
sendmail 8.18.1 has been imported and merged. This version enforces
stricter RFC compliance by default, especially with respect to line
endings. This may cause issues with receiving messages from
non-compliant MTAs; please see the first 8.18.1 release note in
contrib/sendmail/RELEASE_NOTES for mitigations.
20240111:
Commit cc760de2183f changed the internal interface between
the nfscommon and nfscl modules. As such, both need to be
rebuilt from sources. Therefore, __FreeBSD_version was
bumped to 1500010.
20231120:
If you have an arm64 system that uses ACPI, you will need to update your
loader.efi in the ESP when you update past this point. Detection of ACPI
was moved earlier in the binary so the scripts could use it, but old
binaries don't have this, so we default to 'no ACPI' in this case. You can
undisable ACPI by doing
OK unset hint.acpi.0.disabled
This can also be used to recover any other system that was updated in the
small window where amd64 was also broken.
20231113:
The WITHOUT_LLD_IS_LD option has been removed. When LLD is enabled
it is always installed as /usr/bin/ld.
20231027:
Forward compatibility (running the new code on old kernels) for the
"ino64" project have been removed. The need for it has passed long ago.
20231018:
Commit 57ce37f9dcd0 changed the internal KAPI between the
nfscommon and nfscl modules. Both must be rebuilt from sources.
20231010:
dialog(1) has been replaced in base by bsddialog(1), while most of the
time replacing a dialog(1) call by a bsddialog(1) call works out of the
box, bsddialog(1) is not considered as a drop-in replacement for
dialog(1).
If you do depend on dialog(1) functionality, please install cdialog
from ports:
pkg install cdialog
20230927:
The EARLY_AP_STARTUP kernel option is mandatory on x86. The option
has been added to DEFAULTS, so it should automatically be included in
custom kernel configurations without any additional change.
20230922:
A new loader tunable net.pf.default_to_drop allows pf(4)’s default
behaviour to be changed from pass to drop. Previously this required
recompiling the kernel with the option PF_DEFAULT_TO_DROP.
20230914:
Enable splitting out pkgbase manpages into separate packages by
default. To disable this, set WITHOUT_MANSPLITPKG=yes in src.conf.
20230911:
Move standard include files to the clibs-dev package and move clang
internal libraries and headers to clang and clang-dev. Upgrading systems
installed using pkgbase past this change involves extra steps to allow
for these file moves:
pkg upgrade -y FreeBSD-utilities
pkg upgrade -y FreeBSD-utilities-dev
pkg upgrade -y
20230909:
Enable vnet sysctl variables to be loader tunable. SYSCTLs which
belongs to VNETs can be initialized during early boot or module
loading if they are marked with CTLFLAG_TUN and there are
corresponding kernel environment variables.
20230901:
The WITH_INIT_ALL_PATTERN and WITH_INIT_ALL_ZERO build options have
been replaced by INIT_ALL=pattern and INIT_ALL=zero respectively.
20230824:
FreeBSD 15.0-CURRENT.
20230817:
Serial communication (in boot loaders, kernel, and userland) has
been changed to default to 115200 bps, in line with common industry
practice and typcial firmware serial console redirection
configuration.
Note that the early x86 BIOS bootloader (i.e., boot0sio) does not
support rates above 9600 bps and is not changed. boot0sio users may
set BOOT_COMCONSOLE_SPEED=9600 to use 9600 for all of the boot
components, or use the standard boot0 and have the boot2 stage start
with the serial port at 115200.
20230807:
Following the general removal of MIPS support, the ath(4) AHB bus-
frontend has been removed, too, and building of the PCI support is
integrated with the ath(4) main module again. As a result, there's
no longer a need for if_ath_pci_load="YES" in /boot/loader.conf or
"device ath_pci" in the kernel configuration.
20230803:
MAXCPU has been increased to 1024 in the amd64 GENERIC kernel config.
Out-of-tree kernel modules will need to be rebuilt.
20230724:
CAM has been mechanically updated s/u_int(64|32|16|8)_t/uint\1_t/g
to move to the standard uintXX_t types from the old, traditional
BSD u_intXX_t types. This should be a NOP, but may cause problems
for out of tree changes. The SIMs were not updated since most of
the old u_intXX_t uses weren't due to CAM interfaces.
20230713:
stable/14 branch created.
20230629:
The heuristic for detecting old chromebooks with an EC bug that requires
atkbdc driver workarounds has changed. There should be no functional
change, but if your old chromebook's keyboard stops working, please
file a PR and assign it to imp.
20230623:
OpenSSL has been updated to version 3.0, including changes throughout
the base system. It is important to rebuild third-party software
after upgrading.
20230619:
To enable pf rdr rules for connections initiated from the host, pf
filter rules can be optionally enabled for packets delivered
locally. This can change the behavior of rules which match packets
delivered to lo0. To enable this feature:
sysctl net.pf.filter_local=1
service pf restart
When enabled, its best to ensure that packets delivered locally are not
filtered, e.g. by adding a 'skip on lo' rule.
20230613:
Improvements to libtacplus(8) mean that tacplus.conf(5) now
follows POSIX shell syntax rules. This may cause TACACS+
authentication to fail if the shared secret contains a single
quote, double quote, or backslash character which isn't
already properly quoted or escaped.
20230612:
Belatedly switch the default nvme block device on x86 from nvd to nda.
nda created nvd compatibility links by default, so this should be a
nop. If this causes problems for your application, set hw.nvme.use_nvd=1
in your loader.conf or add `options NVME_USE_NVD=1` to your kernel
config. To disable the nvd compatibility aliases, add
kern.cam.nda.nvd_compat=0 to loader.conf. The default has been nda on
all non-x86 platforms for some time now. If you need to fall back,
please email imp@freebsd.org about why.
Encrypted swap partitions need to be changed from nvd to nda if you
migrate, or you need to use the above to switch back to nvd.
20230422:
Remove portsnap(8). Users are encouraged to obtain the ports tree
using git instead.
20230420:
Add jobs.mk to save typing. Enables -j${JOB_MAX} and logging
eg.
make buildworld-jobs
runs
make -j${JOB_MAX} buildworld > ../buildworld.log 2>&1
where JOB_MAX is derrived from ncpus in local.sys.mk if not set in env.
20230316:
Video related devices for some arm devices have been renamed.
If you have a custom kernel config and want to use hdmi output on
IMX6 board you need to add "device dwc_hdmi" "device imx6_hdmi" and
"device imx6_ipu" to it.
If you have a custom kernel config and want to use hdmi output on
TI AM335X board you need to add "device tda19988" to it.
If you add "device hdmi" in it you need to remove it as it doesn't
exist anymore.
20230221:
Introduce new kernel options KBD_DELAY1 and KBD_DELAY2. See atkbdc(4)
for details.
20230206:
sshd now defaults to having X11Forwarding disabled, following upstream.
Administrators who wish to enable X11Forwarding should add
`X11Forwarding yes` to /etc/ssh/sshd_config.
20230204:
Since commit 75d41cb6967 Huawei 3G/4G LTE Mobile Devices do not default
to ECM, but NCM mode and need u3g and ucom modules loaded. See cdce(4).
20230130:
As of commit 7c40e2d5f685, the dependency on netlink(4) has been added
to the linux_common(4) module. Users relying on linux_common may need
to complile netlink(4) module if it is not present in their kernel.
20230126:
The WITHOUT_CXX option has been removed. C++ components in the base
system are now built unconditionally.
20230113:
LinuxKPI pci.h changes may require out-of-tree drivers to be recompiled.
Bump _FreeBSD_version to 1400078 to be able to detect this change.
20221212:
llvm-objump is now always installed as objdump. Previously there was
no /usr/bin/objdump unless the WITH_LLVM_BINUTILS knob was used.
Some LLVM objdump options have a different output format compared to
GNU objdump; readelf is available for inspecting ELF files, and GNU
objdump is available from the devel/binutils port or package.
20221205:
dma(8) has replaced sendmail(8) as the default mta. For people willing
to reenable sendmail(8):
$ cp /usr/share/examples/sendmail/mailer.conf /etc/mail/mailer.conf
and add sendmail_enable="YES" to rc.conf.
20221204:
hw.bus.disable_failed_devices has changed from 'false' to 'true' by
default. Now if newbus succeeds in probing a device, but fails to attach
the device, we'll disable the device. In the past, we'd keep retrying
the device on each new driver loaded. To get that behavior now, one
needs to use devctl to re-enable the device, and reprobe it (or set
the sysctl/tunable hw.bus.disable_failed_devices=false).
NOTE: This was reverted 20221205 due to unexpected compatibility issues
20221122:
pf no longer accepts 'scrub fragment crop' or 'scrub fragment drop-ovl'.
These configurations are no longer automatically reinterpreted as
'scrub fragment reassemble'.
20221121:
The WITHOUT_CLANG_IS_CC option has been removed. When Clang is enabled
it is always installed as /usr/bin/cc (and c++, cpp).
20221026:
Some programs have been moved into separate packages. It is recommended
for pkgbase users to do:
pkg install FreeBSD-dhclient FreeBSD-geom FreeBSD-resolvconf \
FreeBSD-devd FreeBSD-devmatch
after upgrading to restore all the component that were previously
installed.
20221002:
OPIE has been removed from the base system. If needed, it can
be installed from ports (security/opie) or packages (opie).
Otherwise, make sure that your PAM policies do not reference
pam_opie or pam_opieaccess.
20220610:
LinuxKPI pm.h changes require an update to the latest drm-kmod version
before re-compiling to avoid errors.
20211230:
The macros provided for the manipulation of CPU sets (e.g. CPU_AND)
have been modified to take 2 source arguments instead of only 1.
Externally maintained sources that use these macros will have to
be adapted. The FreeBSD version has been bumped to 1400046 to
reflect this change.
20211214:
A number of the kernel include files are able to be included by
themselves. A test has been added to buildworld to enforce this.
20211209:
Remove mips as a recognized target. This starts the decommissioning of
mips support in FreeBSD. mips related items will be removed wholesale in
the coming days and weeks.
This broke the NO_CLEAN build for some people. Either do a clean build
or touch
lib/clang/include/llvm/Config/Targets.def
lib/clang/include/llvm/Config/AsmParsers.def
lib/clang/include/llvm/Config/Disassemblers.def
lib/clang/include/llvm/Config/AsmPrinters.def
before the build to force everything to rebuild that needs to.
20211202:
Unbound support for RFC8375: The special-use domain 'home.arpa' is
by default blocked. To unblock it use a local-zone nodefault
statement in unbound.conf:
local-zone: "home.arpa." nodefault
Or use another type of local-zone to override with your choice.
The reason for this is discussed in Section 6.1 of RFC8375:
Because 'home.arpa.' is not globally scoped and cannot be secured
using DNSSEC based on the root domain's trust anchor, there is no way
to tell, using a standard DNS query, in which homenet scope an answer
belongs. Consequently, users may experience surprising results with
such names when roaming to different homenets.
20211110:
Commit b8d60729deef changed the TCP congestion control framework so
that any of the included congestion control modules could be
the single module built into the kernel. Previously newreno
was automatically built in through direct reference. As of
this commit you are required to declare at least one congestion
control module (e.g. 'options CC_NEWRENO') and to also declare a
default using the CC_DEFAULT option (e.g. options CC_DEFAULT="newreno\").
The GENERIC configuration includes CC_NEWRENO and defines newreno
as the default. If no congestion control option is built into the
kernel and you are including networking, the kernel compile will
fail. Also if no default is declared the kernel compile will fail.
20211118:
Mips has been removed from universe builds. It will be removed from the
tree shortly.
20211106:
Commit f0c9847a6c47 changed the arguments for VOP_ALLOCATE.
The NFS modules must be rebuilt from sources and any out
of tree file systems that implement their own VOP_ALLOCATE
may need to be modified.
20211022:
The synchronous PPP kernel driver sppp(4) has been removed.
The cp(4) and ce(4) drivers are now always compiled with netgraph(4)
support, formerly enabled by NETGRAPH_CRONYX option.
20211020:
sh(1) is now the default shell for the root user. To force root to use
the csh shell, please run the following command as root:
# chsh -s csh
20211004:
Ncurses distribution has been split between libtinfow and libncurses
with libncurses.so becoming a linker (ld) script to seamlessly link
to libtinfow as needed. Bump _FreeBSD_version to 1400035 to reflect
this change.
20210923:
As of commit 8160a0f62be6, the dummynet module no longer depends on the
ipfw module. Dummynet can now be used by pf as well as ipfw. As such
users who relied on this dependency may need to include ipfw in the
list of modules to load on their systems.
20210922:
As of commit 903873ce1560, the mixer(8) utility has got a slightly
new syntax. Please refer to the mixer(8) manual page for more
information. The old mixer utility can be installed from ports:
audio/freebsd-13-mixer
20210911:
As of commit 55089ef4f8bb, the global variable nfs_maxcopyrange has
been deleted from the nfscommon.ko. As such, nfsd.ko must be built
from up to date sources to avoid an undefined reference when
being loaded.
20210817:
As of commit 62ca9fc1ad56 OpenSSL no longer enables kernel TLS
by default. Users can enable kernel TLS via the "KTLS" SSL
option. This can be enabled globally by using a custom
OpenSSL config file via OPENSSL_CONF or via an
application-specific configuration option for applications
which permit setting SSL options via SSL_CONF_cmd(3).
20210811:
Commit 3ad1e1c1ce20 changed the internal KAPI between the NFS
modules. Therefore, all need to be rebuilt from sources.
20210730:
Commit b69019c14cd8 removes pf's DIOCGETSTATESNV ioctl.
As of be70c7a50d32 it is no longer used by userspace, but it does mean
users may not be able to enumerate pf states if they update the kernel
past b69019c14cd8 without first updating userspace past be70c7a50d32.
20210729:
As of commit 01ad0c007964 if_bridge member interfaces can no longer
change their MTU. Changing the MTU of the bridge itself will change the
MTU on all member interfaces instead.
20210716:
Commit ee29e6f31111 changed the internal KAPI between the nfscommon
and nfsd modules. Therefore, both need to be rebuilt from sources.
Bump __FreeBSD_version to 1400026 for this KAPI change.
20210715:
The 20210707 awk update brought in a change in behavior. This has
been corrected as of d4d252c49976. Between these dates, if you
installed a new awk binary, you may not be able to build a new
kernel because the change in behavior affected the genoffset
script used to build the kernel. If you did update, the fix is
to update your sources past the above hash and do
% cd usr.bin/awk
% make clean all
% sudo -E make install
to enable building kernels again.
20210708:
Commit 1e0a518d6548 changed the internal KAPI between the NFS
modules. They all need to be rebuilt from sources. I did not
bump __FreeBSD_version, since it was bumped recently.
20210707:
awk has been updated to the latest one-true-awk version 20210215.
This contains a number of minor bug fixes.
20210624:
The NFSv4 client now uses the highest minor version of NFSv4
supported by the NFSv4 server by default instead of minor version 0,
for NFSv4 mounts.
The "minorversion" mount option may be used to override this default.
20210618:
Bump __FreeBSD_version to 1400024 for LinuxKPI changes.
Most notably netdev.h can change now as the (last) dependencies
(mlx4/ofed) are now using struct ifnet directly, but also for PCI
additions and others.
20210618:
The directory "blacklisted" under /usr/share/certs/ has been
renamed to "untrusted".
20210611:
svnlite has been removed from base. Should you need svn for any reason
please install the svn package or port.
20210611:
Commit e1a907a25cfa changed the internal KAPI between the krpc
and nfsserver. As such, both modules must be rebuilt from
sources. Bump __FreeBSD_version to 1400022.
20210610:
The an(4) driver has been removed from FreeBSD.
20210608:
The vendor/openzfs branch was renamed to vendor/openzfs/legacy to
start tracking OpenZFS upstream more closely. Please see
https://lists.freebsd.org/archives/freebsd-current/2021-June/000153.html
for details on how to correct any errors that might result. The
short version is that you need to remove the old branch locally:
git update-ref -d refs/remotes/freebsd/vendor/openzfs
(assuming your upstream origin is named 'freebsd').
20210525:
Commits 17accc08ae15 and de102f870501 add new files to LinuxKPI
which break drm-kmod. In addition various other additions where
committed. Bump __FreeBSD_version to 1400015 to be able to
detect this.
20210513:
Commit ca179c4d74f2 changed the package in which the OpenSSL
libraries and utilities are packaged.
It is recommended for pkgbase user to do:
pkg install -f FreeBSD-openssl
before pkg upgrade otherwise some dependencies might not be met
and pkg will stop working as libssl will not be present anymore
on the system.
20210426:
Commit 875977314881 changed the internal KAPI between
the nfsd and nfscommon modules. As such these modules
need to be rebuilt from sources.
Without this patch in your NFSv4.1/4.2 server, enabling
delegations by setting vfs.nfsd.issue_delegations non-zero
is not recommended.
20210411:
Commit 7763814fc9c2 changed the internal KAPI between
the krpc and NFS. As such, the krpc, nfscommon and
nfscl modules must all be rebuilt from sources.
Without this patch, NFSv4.1/4.2 mounts should not
be done with the nfscbd(8) daemon running, to avoid
needing a working back channel for server->client RPCs.
20210330:
Commit 01ae8969a9ee fixed the NFSv4.1/4.2 server so that it
handles binding of the back channel as required by RFC5661.
Until this patch is in your server, avoid use of the "nconnects"
mount option for Linux NFSv4.1/4.2 mounts.
20210225:
For 64-bit architectures the base system is now built with Position
Independent Executable (PIE) support enabled by default. It may be
disabled using the WITHOUT_PIE knob. A clean build is required.
20210128:
Various LinuxKPI functionality was added which conflicts with DRM.
Please update your drm-kmod port to after the __FreeBSD_version 1400003
update.
20210121:
stable/13 branch created.
20210108:
PC Card attachments for all devices have been removed. In the case of
wi and cmx, the entire drivers were removed because they were only
PC Card devices. FreeBSD_version 1300134 should be used for this
since it was bumped so recently.
20210107:
Transport-independent parts of HID support have been split off the USB
code in to separate subsystem. Kernel configs which include one of
ums, ukbd, uhid, atp, wsp, wmt, uaudio, ugold or ucycom drivers should
be updated with adding of "device hid" line.
20210105:
ncurses installation has been modified to only keep the widechar
enabled version. Incremental build is broken for that change, so it
requires a clean build.
20201223:
The FreeBSD project has migrated from Subversion to Git. Temporary
instructions can be found at
https://github.com/bsdimp/freebsd-git-docs/blob/main/src-cvt.md
and other documents in that repo.
20201216:
The services database has been updated to cover more of the basic
services expected in a modern system. The database is big enough
that it will cause issues in mergemaster in Releases previous to
12.2 and 11.3, or in very old current systems from before r358154.
20201215:
Obsolete in-tree GDB 6.1.1 has been removed. GDB (including kgdb)
may be installed from ports or packages.
20201124:
ping6 has been merged into ping. It can now be called as "ping -6".
See ping(8) for details.
20201108:
Default value of net.add_addr_allfibs has been changed to 0.
If you have multi-fib configuration and rely on existence of all
interface routes in every fib, you need to set the above sysctl to 1.
20201030:
The internal pre-processor in the calendar(1) program has been
extended to support more C pre-processor commands (e.g. #ifdef, #else,
and #undef) and to detect unbalanced conditional statements.
Error messages have been extended to include the filename and line
number if processing stops to help fixing malformed data files.
20201026:
All the data files for the calendar(1) program, except calendar.freebsd,
have been moved to the deskutils/calendar-data port, much like the
jewish calendar entries were moved to deskutils/hebcal years ago. After
make delete-old-files, you need to install it to retain full
functionality. calendar(1) will issue a reminder for files it can't
find.
20200923:
LINT files are no longer generated. We now include the relevant NOTES
files. Note: This may cause conflicts with updating in some cases.
find sys -name LINT\* -delete
is suggested across this commit to remove the generated LINT files.
If you have tried to update with generated files there, the svn
command you want to un-auger the tree is
cd sys/amd64/conf
svn revert -R .
and then do the above find from the top level. Substitute 'amd64'
above with where the error message indicates a conflict.
20200824:
OpenZFS support has been integrated. Do not upgrade root pools until
the loader is updated to support zstd. Furthermore, we caution against
'zpool upgrade' for the next few weeks. The change should be transparent
unless you want to use new features.
Not all "NO_CLEAN" build scenarios work across these changes. Many
scenarios have been tested and fixed, but rebuilding kernels without
rebuilding world may fail.
The ZFS cache file has moved from /boot to /etc to match the OpenZFS
upstream default. A fallback to /boot has been added for mountroot.
Pool auto import behavior at boot has been moved from the kernel module
to an explicit "zpool import -a" in one of the rc scripts enabled by
zfs_enable=YES. This means your non-root zpools won't auto import until
you upgrade your /etc/rc.d files.
20200824:
The resume code now notifies devd with the 'kernel' system
rather than the old 'kern' subsystem to be consistent with
other use. The old notification will be created as well, but
will be removed prior to FreeBSD 14.0.
20200821:
r362275 changed the internal API between the kernel RPC and the
NFS modules. As such, all the modules must be recompiled from
sources.
20200817:
r364330 modified the internal API used between the NFS modules.
As such, all the NFS modules must be re-compiled from sources.
20200816:
Clang, llvm, lld, lldb, compiler-rt, libc++, libunwind and openmp have
been upgraded to 11.0.0. Please see the 20141231 entry below for