Skip to content

Commit e8eb440

Browse files
authored
Merge pull request #350 from ghostbsd/25.01.1
Sync with FreeBSD stable/14 for 25.01.1
2 parents 2ff0590 + c3b1aa7 commit e8eb440

File tree

9,031 files changed

+1525623
-317579
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

9,031 files changed

+1525623
-317579
lines changed

.cirrus.yml

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ compute_engine_instance:
1010
# gcloud compute images list --project freebsd-org-cloud-dev --no-standard-images
1111
platform: freebsd
1212
image_project: freebsd-org-cloud-dev
13-
image: freebsd-13-2-release-amd64
13+
image: freebsd-13-3-release-amd64
1414
cpu: 8
1515
memory: 8G
1616
disk: 40
@@ -37,12 +37,20 @@ task:
3737
TOOLCHAIN: llvm17
3838
TOOLCHAIN_PKG: ${TOOLCHAIN}-lite
3939
- name: amd64-llvm18 World and kernel build and boot smoke test
40-
only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' || $CIRRUS_BRANCH =~ 'pull/.*'
40+
only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src'
41+
trigger_type: manual
4142
env:
4243
TARGET: amd64
4344
TARGET_ARCH: amd64
4445
TOOLCHAIN: llvm18
4546
TOOLCHAIN_PKG: ${TOOLCHAIN}-lite
47+
- name: amd64-llvm19 World and kernel build and boot smoke test
48+
only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' || $CIRRUS_BRANCH =~ 'pull/.*'
49+
env:
50+
TARGET: amd64
51+
TARGET_ARCH: amd64
52+
TOOLCHAIN: llvm19
53+
TOOLCHAIN_PKG: ${TOOLCHAIN}-lite
4654
- name: arm64-llvm16 World and kernel build and boot smoke test
4755
only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src'
4856
trigger_type: manual
@@ -67,6 +75,14 @@ task:
6775
TARGET_ARCH: aarch64
6876
TOOLCHAIN: llvm18
6977
TOOLCHAIN_PKG: ${TOOLCHAIN}
78+
- name: arm64-llvm19 World and kernel build and boot smoke test
79+
only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src'
80+
trigger_type: manual
81+
env:
82+
TARGET: arm64
83+
TARGET_ARCH: aarch64
84+
TOOLCHAIN: llvm19
85+
TOOLCHAIN_PKG: ${TOOLCHAIN}
7086
- name: amd64-gcc12 World and kernel build and boot smoke test (manual)
7187
only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src'
7288
trigger_type: manual

Makefile.inc1

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -979,6 +979,9 @@ IMAKE_INSTALL= INSTALL="${INSTALL_CMD} ${INSTALLFLAGS}"
979979
IMAKE_MTREE= MTREE_CMD="${MTREE_CMD} ${MTREEFLAGS}"
980980
.endif
981981
.if make(distributeworld)
982+
.if ${DISTDIR:U/} == /
983+
.error DISTDIR must be set for make distributeworld and may not be the root directory.
984+
.endif
982985
CERTCTLDESTDIR= ${DESTDIR}/${DISTDIR}
983986
CERTCTLFLAGS+= -d /base
984987
.else
@@ -2280,14 +2283,13 @@ real-sign-packages: _pkgbootstrap .PHONY
22802283
.if ${PKG_BIN_VERSION} < 11700
22812284
printf "packing_format = \"${PKG_FORMAT}\";\n" >> ${WSTAGEDIR}/meta
22822285
.endif
2283-
@[ -L "${REPODIR}/${PKG_ABI}/latest" ] && unlink ${REPODIR}/${PKG_ABI}/latest; \
2284-
${PKG_CMD} -o ABI=${PKG_ABI} repo -o OSVERSION="${SRCRELDATE}" \
2286+
@${PKG_CMD} -o ABI=${PKG_ABI} repo -o OSVERSION="${SRCRELDATE}" \
22852287
-m ${WSTAGEDIR}/meta \
22862288
-o ${REPODIR}/${PKG_ABI}/${PKG_VERSION} \
22872289
${REPODIR}/${PKG_ABI}/${PKG_VERSION} \
22882290
${PKG_REPO_SIGNING_KEY} ; \
22892291
cd ${REPODIR}/${PKG_ABI}; \
2290-
ln -s ${PKG_OUTPUT_DIR} latest
2292+
ln -hfs ${PKG_OUTPUT_DIR} latest
22912293

22922294
#
22932295
#

ObsoleteFiles.inc

Lines changed: 485 additions & 9 deletions
Large diffs are not rendered by default.

RELNOTES

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,22 @@ newline. Entries should be separated by a newline.
1010

1111
Changes to this file should not be MFCed.
1212

13+
ead3cd3ef628:
14+
Add a new -a command line option to mountd(8).
15+
If this command line option is specified, when
16+
a line in exports(5) has the -alldirs export option,
17+
the directory must be a server file system mount point.
18+
19+
54974e731f27, 155987e20190, 4634282f8908, 7a3a0402aeb6, 6b1a5d3535d9:
20+
The layout of NFS file handles for the tarfs, cd9660, and ext2fs
21+
file systems has changed. An NFS server that exports any of these file
22+
systems will need its clients to unmount and remount the exports.
23+
24+
83f1b98d8227:
25+
grep(1) no longer follows symbolic links by default for
26+
recursive searches. This matches the documented behavior in
27+
the manual page.
28+
1329
c333758fca3e:
1430
new MAC/do policy and mdo(1) utility which enables a user to
1531
become another user without the requirement of setuid root.

UPDATING

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ Items affecting the ports and packages system can be found in
1212
/usr/ports/UPDATING. Please read that file before updating system packages
1313
and/or ports.
1414

15+
20250117:
16+
The layout of NFS file handles for the tarfs, cd9660, and ext2fs
17+
file systems has changed. An NFS server that exports any of these file
18+
systems will need its clients to unmount and remount the exports.
19+
1520
20240419:
1621
Clang, llvm, lld, lldb, compiler-rt, libc++, libunwind and openmp have
1722
been upgraded to 18.1.6. It is important that you run `make delete-old`

bin/kill/kill.1

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,15 @@ of the default
8181
.Pp
8282
The following PIDs have special meanings:
8383
.Bl -tag -width indent
84+
.It 0
85+
The signal is sent to all processes whose group ID is equal to the process
86+
group ID of the sender, and for which the process has permission.
8487
.It -1
8588
If superuser, broadcast the signal to all processes; otherwise broadcast
8689
to all processes belonging to the user.
90+
.It - Ns Ar PGID
91+
The signal is sent to all processes that belong to the specified
92+
process group ID (PGID).
8793
.El
8894
.Pp
8995
Some of the more commonly used signals:

bin/ps/ps.1

Lines changed: 45 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -333,33 +333,33 @@ The flags associated with the process as in
333333
the include file
334334
.In sys/proc.h :
335335
.Bl -column P_SINGLE_BOUNDARY 0x40000000
336-
.It Dv "P_ADVLOCK" Ta No "0x00001" Ta "Process may hold a POSIX advisory lock"
337-
.It Dv "P_CONTROLT" Ta No "0x00002" Ta "Has a controlling terminal"
338-
.It Dv "P_KPROC" Ta No "0x00004" Ta "Kernel process"
339-
.It Dv "P_PPWAIT" Ta No "0x00010" Ta "Parent is waiting for child to exec/exit"
340-
.It Dv "P_PROFIL" Ta No "0x00020" Ta "Has started profiling"
341-
.It Dv "P_STOPPROF" Ta No "0x00040" Ta "Has thread in requesting to stop prof"
342-
.It Dv "P_HADTHREADS" Ta No "0x00080" Ta "Has had threads (no cleanup shortcuts)"
343-
.It Dv "P_SUGID" Ta No "0x00100" Ta "Had set id privileges since last exec"
344-
.It Dv "P_SYSTEM" Ta No "0x00200" Ta "System proc: no sigs, stats or swapping"
345-
.It Dv "P_SINGLE_EXIT" Ta No "0x00400" Ta "Threads suspending should exit, not wait"
346-
.It Dv "P_TRACED" Ta No "0x00800" Ta "Debugged process being traced"
347-
.It Dv "P_WAITED" Ta No "0x01000" Ta "Someone is waiting for us"
348-
.It Dv "P_WEXIT" Ta No "0x02000" Ta "Working on exiting"
349-
.It Dv "P_EXEC" Ta No "0x04000" Ta "Process called exec"
350-
.It Dv "P_WKILLED" Ta No "0x08000" Ta "Killed, shall go to kernel/user boundary ASAP"
351-
.It Dv "P_CONTINUED" Ta No "0x10000" Ta "Proc has continued from a stopped state"
352-
.It Dv "P_STOPPED_SIG" Ta No "0x20000" Ta "Stopped due to SIGSTOP/SIGTSTP"
353-
.It Dv "P_STOPPED_TRACE" Ta No "0x40000" Ta "Stopped because of tracing"
354-
.It Dv "P_STOPPED_SINGLE" Ta No "0x80000" Ta "Only one thread can continue"
355-
.It Dv "P_PROTECTED" Ta No "0x100000" Ta "Do not kill on memory overcommit"
356-
.It Dv "P_SIGEVENT" Ta No "0x200000" Ta "Process pending signals changed"
357-
.It Dv "P_SINGLE_BOUNDARY" Ta No "0x400000" Ta "Threads should suspend at user boundary"
358-
.It Dv "P_HWPMC" Ta No "0x800000" Ta "Process is using HWPMCs"
359-
.It Dv "P_JAILED" Ta No "0x1000000" Ta "Process is in jail"
360-
.It Dv "P_TOTAL_STOP" Ta No "0x2000000" Ta "Stopped for system suspend"
361-
.It Dv "P_INEXEC" Ta No "0x4000000" Ta Process is in Xr execve 2
362-
.It Dv "P_STATCHILD" Ta No "0x8000000" Ta "Child process stopped or exited"
336+
.It Dv "P_ADVLOCK" Ta No "0x00000001" Ta "Process may hold a POSIX advisory lock"
337+
.It Dv "P_CONTROLT" Ta No "0x00000002" Ta "Has a controlling terminal"
338+
.It Dv "P_KPROC" Ta No "0x00000004" Ta "Kernel process"
339+
.It Dv "P_PPWAIT" Ta No "0x00000010" Ta "Parent is waiting for child to exec/exit"
340+
.It Dv "P_PROFIL" Ta No "0x00000020" Ta "Has started profiling"
341+
.It Dv "P_STOPPROF" Ta No "0x00000040" Ta "Has thread in requesting to stop prof"
342+
.It Dv "P_HADTHREADS" Ta No "0x00000080" Ta "Has had threads (no cleanup shortcuts)"
343+
.It Dv "P_SUGID" Ta No "0x00000100" Ta "Had set id privileges since last exec"
344+
.It Dv "P_SYSTEM" Ta No "0x00000200" Ta "System proc: no sigs, stats or swapping"
345+
.It Dv "P_SINGLE_EXIT" Ta No "0x00000400" Ta "Threads suspending should exit, not wait"
346+
.It Dv "P_TRACED" Ta No "0x00000800" Ta "Debugged process being traced"
347+
.It Dv "P_WAITED" Ta No "0x00001000" Ta "Someone is waiting for us"
348+
.It Dv "P_WEXIT" Ta No "0x00002000" Ta "Working on exiting"
349+
.It Dv "P_EXEC" Ta No "0x00004000" Ta "Process called exec"
350+
.It Dv "P_WKILLED" Ta No "0x00008000" Ta "Killed, shall go to kernel/user boundary ASAP"
351+
.It Dv "P_CONTINUED" Ta No "0x00010000" Ta "Proc has continued from a stopped state"
352+
.It Dv "P_STOPPED_SIG" Ta No "0x00020000" Ta "Stopped due to SIGSTOP/SIGTSTP"
353+
.It Dv "P_STOPPED_TRACE" Ta No "0x00040000" Ta "Stopped because of tracing"
354+
.It Dv "P_STOPPED_SINGLE" Ta No "0x00080000" Ta "Only one thread can continue"
355+
.It Dv "P_PROTECTED" Ta No "0x00100000" Ta "Do not kill on memory overcommit"
356+
.It Dv "P_SIGEVENT" Ta No "0x00200000" Ta "Process pending signals changed"
357+
.It Dv "P_SINGLE_BOUNDARY" Ta No "0x00400000" Ta "Threads should suspend at user boundary"
358+
.It Dv "P_HWPMC" Ta No "0x00800000" Ta "Process is using HWPMCs"
359+
.It Dv "P_JAILED" Ta No "0x01000000" Ta "Process is in jail"
360+
.It Dv "P_TOTAL_STOP" Ta No "0x02000000" Ta "Stopped for system suspend"
361+
.It Dv "P_INEXEC" Ta No "0x04000000" Ta Process is in Xr execve 2
362+
.It Dv "P_STATCHILD" Ta No "0x08000000" Ta "Child process stopped or exited"
363363
.It Dv "P_INMEM" Ta No "0x10000000" Ta "Loaded into memory"
364364
.It Dv "P_SWAPPINGOUT" Ta No "0x20000000" Ta "Process is being swapped out"
365365
.It Dv "P_SWAPPINGIN" Ta No "0x40000000" Ta "Process is being swapped in"
@@ -377,6 +377,24 @@ the include file
377377
.It Dv "P2_NOTRACE_EXEC" Ta No "0x00000004" Ta Keep P2_NOPTRACE on Xr execve 2
378378
.It Dv "P2_AST_SU" Ta No "0x00000008" Ta "Handles SU ast for kthreads"
379379
.It Dv "P2_PTRACE_FSTP" Ta No "0x00000010" Ta "SIGSTOP from PT_ATTACH not yet handled"
380+
.It Dv "P2_TRAPCAP" Ta No "0x00000020" Ta "SIGTRAP on ENOTCAPABLE"
381+
.It Dv "P2_ASLR_ENABLE" Ta No "0x00000040" Ta "Force enable ASLR"
382+
.It Dv "P2_ASLR_DISABLE" Ta No "0x00000080" Ta "Force disable ASLR"
383+
.It Dv "P2_ASLR_IGNSTART" Ta No "0x00000100" Ta "Enable ASLR to consume sbrk area"
384+
.It Dv "P2_PROTMAX_ENABLE" Ta No "0x00000200" Ta "Force enable implied PROT_MAX"
385+
.It Dv "P2_PROTMAX_DISABLE" Ta No "0x00000400" Ta "Force disable implied PROT_MAX"
386+
.It Dv "P2_STKGAP_DISABLE" Ta No "0x00000800" Ta "Disable stack gap for MAP_STACK"
387+
.It Dv "P2_STKGAP_DISABLE_EXEC" Ta No "0x00001000" Ta "Stack gap disabled after exec"
388+
.It Dv "P2_ITSTOPPED" Ta No "0x00002000" Ta "itimers stopped (as part of process stop)"
389+
.It Dv "P2_PTRACEREQ" Ta No "0x00004000" Ta "Active ptrace req"
390+
.It Dv "P2_NO_NEW_PRIVS" Ta No "0x00008000" Ta "Ignore setuid on exec"
391+
.It Dv "P2_WXORX_DISABLE" Ta No "0x00010000" Ta "WX mappings enabled"
392+
.It Dv "P2_WXORX_ENABLE_EXEC" Ta No "0x00020000" Ta "WxorX enabled after exec"
393+
.It Dv "P2_WEXIT" Ta No "0x00040000" Ta "Internal exit early state"
394+
.It Dv "P2_REAPKILLED" Ta No "0x00080000" Ta "REAP_KILL pass handled the process"
395+
.It Dv "P2_MEMBAR_PRIVE" Ta No "0x00100000" Ta "membarrier private expedited registered"
396+
.It Dv "P2_MEMBAR_PRIVE_SYNCORE" Ta No "0x00200000" Ta "membarrier private expedited sync core registered"
397+
.It Dv "P2_MEMBAR_GLOBE" Ta No "0x00400000" Ta "membar global expedited registered"
380398
.El
381399
.It Cm label
382400
The MAC label of the process.

bin/sh/main.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ main(int argc, char *argv[])
107107
static struct stackmark smark, smark2;
108108
volatile int state;
109109
char *shinit;
110+
int login;
110111

111112
(void) setlocale(LC_ALL, "");
112113
initcharset();
@@ -140,13 +141,13 @@ main(int argc, char *argv[])
140141
initvar();
141142
setstackmark(&smark);
142143
setstackmark(&smark2);
143-
procargs(argc, argv);
144+
login = procargs(argc, argv);
144145
trap_init();
145146
pwd_init(iflag);
146147
INTON;
147148
if (iflag)
148149
chkmail(1);
149-
if (argv[0] && argv[0][0] == '-') {
150+
if (login) {
150151
state = 1;
151152
read_profile("/etc/profile");
152153
state1:

bin/sh/options.c

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ char *nextopt_optptr; /* used by nextopt */
7070
char *minusc; /* argument to -c option */
7171

7272

73-
static void options(int);
73+
static int options(int);
7474
static void minus_o(char *, int);
7575
static void setoption(int, int);
7676
static void setoptionbyindex(int, int);
@@ -82,19 +82,20 @@ static int getopts(char *, char *, char **, char ***, char **);
8282
* Process the shell command line arguments.
8383
*/
8484

85-
void
85+
int
8686
procargs(int argc, char **argv)
8787
{
88-
int i;
88+
int i, login;
8989
char *scriptname;
9090

9191
argptr = argv;
92+
login = argptr[0] != NULL && argptr[0][0] == '-';
9293
if (argc > 0)
9394
argptr++;
9495
for (i = 0; i < NOPTS; i++)
9596
optval[i] = 2;
9697
privileged = (getuid() != geteuid() || getgid() != getegid());
97-
options(1);
98+
login |= options(1);
9899
if (*argptr == NULL && minusc == NULL)
99100
sflag = 1;
100101
if (iflag != 0 && sflag == 1 && isatty(0) && isatty(1)) {
@@ -125,6 +126,8 @@ procargs(int argc, char **argv)
125126
argptr++;
126127
}
127128
optschanged();
129+
130+
return (login);
128131
}
129132

130133

@@ -145,12 +148,13 @@ optschanged(void)
145148
* to the set special builtin.
146149
*/
147150

148-
static void
151+
static int
149152
options(int cmdline)
150153
{
151154
char *kp, *p;
152155
int val;
153156
int c;
157+
int login = 0;
154158

155159
if (cmdline)
156160
minusc = NULL;
@@ -196,6 +200,8 @@ options(int cmdline)
196200
if (q == NULL || minusc != NULL)
197201
error("Bad -c option");
198202
minusc = q;
203+
} else if (c == 'l' && cmdline) {
204+
login = 1;
199205
} else if (c == 'o') {
200206
minus_o(*argptr, val);
201207
if (*argptr)
@@ -204,13 +210,13 @@ options(int cmdline)
204210
setoption(c, val);
205211
}
206212
}
207-
return;
213+
return (login);
208214

209215
/* When processing `set', a single "-" means turn off -x and -v */
210216
end_options1:
211217
if (!cmdline) {
212218
xflag = vflag = 0;
213-
return;
219+
return (login);
214220
}
215221

216222
/*
@@ -223,7 +229,7 @@ options(int cmdline)
223229
if (!cmdline) {
224230
if (*argptr == NULL)
225231
setparam(0, argptr);
226-
return;
232+
return (login);
227233
}
228234

229235
/*
@@ -242,6 +248,8 @@ options(int cmdline)
242248
/* We need to keep the final argument */
243249
argptr--;
244250
}
251+
252+
return (login);
245253
}
246254

247255
static void

bin/sh/options.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ extern char **argptr; /* argument list for builtin commands */
111111
extern char *shoptarg; /* set by nextopt */
112112
extern char *nextopt_optptr; /* used by nextopt */
113113

114-
void procargs(int, char **);
114+
int procargs(int, char **);
115115
void optschanged(void);
116116
void freeparam(struct shparam *);
117117
int nextopt(const char *);

0 commit comments

Comments
 (0)