Module Name: src Committed By: mrg Date: Mon May 17 08:50:36 UTC 2021
Modified Files: src/sys/kern: files.kern subr_disk.c subr_disk_mbr.c src/sys/lib/libkern: Makefile.libkern libkern.h src/sys/lib/libsa: Makefile disklabel.c stand.h src/sys/sys: disklabel.h Added Files: src/sys/lib/libkern: disklabel_swap.c dkcksum.c Removed Files: src/sys/lib/libsa: dkcksum.c Log Message: move bi-endian disklabel support from the kernel and libsa into libkern. - dkcksum() and dkcksum_sized() move from subr_disk.c and from libsa into libkern/dkcksum.c (which is missing _sized() version), using the version from usr.sbin/disklabel. - swap_disklabel() moves from subr_disk_mbr.c into libkern, now called disklabel_swap(). (the sh3 version should be updated to use this.) - DISKLABEL_EI becomes a first-class option with opt_disklabel.h. - add libkern.h to libsa/disklabel.c. this enables future work for bi-endian libsa/ufs.c (relevant for ffsv1, ffsv2, lfsv1, and lfsv2), as well as making it possible for ports not using subr_disk_mbr.c to include bi-endian disklabel support (which, afaict, includes any disk on mbr-supporting platforms that do not have an mbr as well as disklabel.) builds successsfully on: alpha, i386, amd64, sun2, sun3, evbarm64, evbarm64-eb, sparc, and sparc64. tested in anita on i386 and sparc, testing in hardware on evbarm64*. To generate a diff of this commit: cvs rdiff -u -r1.54 -r1.55 src/sys/kern/files.kern cvs rdiff -u -r1.132 -r1.133 src/sys/kern/subr_disk.c cvs rdiff -u -r1.56 -r1.57 src/sys/kern/subr_disk_mbr.c cvs rdiff -u -r1.50 -r1.51 src/sys/lib/libkern/Makefile.libkern cvs rdiff -u -r0 -r1.1 src/sys/lib/libkern/disklabel_swap.c \ src/sys/lib/libkern/dkcksum.c cvs rdiff -u -r1.142 -r1.143 src/sys/lib/libkern/libkern.h cvs rdiff -u -r1.93 -r1.94 src/sys/lib/libsa/Makefile cvs rdiff -u -r1.10 -r1.11 src/sys/lib/libsa/disklabel.c cvs rdiff -u -r1.5 -r0 src/sys/lib/libsa/dkcksum.c cvs rdiff -u -r1.82 -r1.83 src/sys/lib/libsa/stand.h cvs rdiff -u -r1.124 -r1.125 src/sys/sys/disklabel.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.