359754 |
09-Apr-2020 |
kevans |
MFC -fno-common fixes: r359389, r359394, r359397-r359399, r359403-r359404, r359406, r359413-r359416, r359425, r359427, r359432-r359433, r359443, r359675-r359677
Note: this is not necessarily a complete fix to get these programs to build with -fno-common applied.
r359389: config(8): fixes for -fno-common
Move this handful of definitions into main.c, properly declare these as extern in config.h. This fixes the config(8) build with -fno-common.
Unexplained in my previous commit to gas, -fno-common will become the default in GCC10 and LLVM11, so it's worth addressing these in advance.
r359394: MFV r359393: tcsh: import 6974bc35a5cd
This removes an extra variable definition that causes the -fno-common build to fail, which will be a new default in GCC10/LLVM11.
r359397: zfs: fix -fno-common issues
A similar (or identical?) fix has already landed in OpenZFS.
-fno-common will become the default in GCC10/LLVM11.
r359398: sh: remove duplicate el definition
el is declared extern in myhistedit.h and defined in histedit.c. Remove the duplicate definition in input.c to appease the -fno-common build.
-fno-common will become the default in GCC10/LLVM11.
r359399: telnet: remove some duplicate definitions, mark terminaltype extern
Most of these were already properly declared and defined elsewhere, this is effectively just a minor cleanup that fixes the -fno-common build.
-fno-common will become the default in GCC10/LLVM11.
r359403: Revert 359399: telnet -fno-common bits
There was a large misfire from my local diff that I need to investigate, and this version committed did not build.
r359404: Re-apply r359399: telnet -fno-common fix
line and auth_level's redefinitions are just extraneous
telnetd will #define extern and then include ext.h to allocate storage for all of these extern'd vars; however, two of them are actually defined in libtelnet instead. Instead of doing an #ifdef extern dance around those function pointers, just add an EXTERN macro to make it easier to differentiate by sight which ones will get allocated in globals.c and which ones are defined elsewhere.
r359406: telnet: kill off remaining duplicate definition
r359413: ipfilter: remove duplicate definition of 'thishost'
thishost is already defined in lib/initparse.c; no need for this one. This fixes the ipfilter build with -fno-common.
-fno-common will become the default in GCC10/LLVM11.
r359414: iscontrol: move definition of vflag/iscsidev to iscontrol.c
Mark the declaration extern as these are used elsewhere; this fixes the build with -fno-common.
r359415: userboot: mark host_fsops as extern
This is already defined elsewhere; mark this declaration extern to the fix the -fno-common build.
r359416: systat: remove redundant definition of kd
kd is already properly declared in extern.h and defined in main.c, rendering this definition useless. This fixes the -fno-common build.
r359425: locate: fix -fno-common build
Just a single variable declaration to extern and define elsewhere here, myctype.
-fno-common will become a default in GCC10/LLVM11.
r359427: fsck_ffs/fsdb: fix -fno-common build
This one is also a small list:
- 3x duplicate definition (ufs2_zino, returntosingle, nflag) - 5x 'needs extern', 3/5 of which are referenced in fsdb
-fno-common will become the default in GCC10/LLVM11.
r359432: gdb: compile with -fcommon explicitly
As described in the comment, gdb relies on some of the linker magic that happens with -fcommon. I suspect the life expectancy of gdb-in-base is low enough that this isn't worth spending much time addressing, especially given the vintage. Hit it with the -fcommon hammer so that it continues to just work.
r359433: bmake: fix -fno-common build
debug was declared extern, but debug_file was not; correct this and define debug_file in main.c (as debug is) to fix the -fno-common build.
-fno-common will become the default with GCC10/LLVM11.
r359443: MFV r359442: bmake: import -fno-common fix build back from upstream
sjg@ committed the local patch previously committed upstream; pull it in to vendor/ to ease any potential stress of future imports.
r359675: kqueue tests: fix -fno-common build
vnode_fd and kqfd are both shared among multiple CU; define them exactly once.
In the case of vnode_fd, it was simply the declaration that needed correction.
-fno-common will become the default in GCC10/LLVM11.
r359676: ntpd: fix build with -fno-common
Only a small nit here: psl should be declared extern and defined exactly once.
-fno-common will become the default in GCC10/LLVM11.
r359677: yp*: fix -fno-common build
This is mostly two problems spread out far and wide: - ypldap_process should be declared properly - debug is defined differently in many programs
For the latter, just extern it and define it everywhere that actually needs it. This mostly works out nicely for ^/libexec/ypxfr, which can remove the assignment at the beginning of main in favor of defining it properly.
-fno-common will become the default in GCC10/LLVM11. |
354195 |
30-Oct-2019 |
brooks |
MFC r353325, r353875
r353325: Update tcsh to 6.21.00.
This is a bugfix release with no new features. A number of these fixes were previously merged into our tree.
Sponsored by: DARPA, AFRL
r353875: Update tcsh to git revision 83c5be0 bringing in a number of bug fixes.
Reported by: sobomax Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D22099
Record prior MFC of r315948, r315952 |
316957 |
15-Apr-2017 |
dchagin |
MFC r315948:
Update tcsh to 6.20.00
MFC r315952:
Update tcsh to vendor git b605cb561d
Vendor changes:
1. PR/471: Daiki Ueno: Delay interpreting arginp until we've processed our startup files (which can change the NLS environment).
2. Fix type of read in prompt confirmation (eg. rmstar) (David Kaspar).
3. Fix out of bounds read (Brooks Davis) (reproduce by starting tcsh and hitting tab at the prompt).
4. Don't play pointer tricks that are undefined in modern c (Brooks Davis). |
304276 |
17-Aug-2016 |
ache |
MFC r302831
To mimic system glob, we definitely don't need manual upper/lower hack. The author clearly disagree in the comment, so this patch will be not submitted upstream. |
302408 |
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
276479 |
31-Dec-2014 |
dim |
Upgrade our copy of clang, llvm and lldb to 3.5.0 release.
Please note that this version now requires C++11 support to build; see UPDATING for more information.
Release notes for llvm and clang can be found here: <http://llvm.org/releases/3.5.0/docs/ReleaseNotes.html> <http://llvm.org/releases/3.5.0/tools/clang/docs/ReleaseNotes.html>
Thanks to Ed Maste, Roman Divacky, Andrew Turner, Justin Hibbits and Antoine Brodin for their invaluable help with this import.
Approved by: portmgr (antoine) MFC after: 1 month
|
231990 |
22-Feb-2012 |
mp |
Update to tcsh 6.18.01.
|
223758 |
04-Jul-2011 |
attilio |
With retirement of cpumask_t and usage of cpuset_t for representing a mask of CPUs, pc_other_cpus and pc_cpumask become highly inefficient.
Remove them and replace their usage with custom pc_cpuid magic (as, atm, pc_cpumask can be easilly represented by (1 << pc_cpuid) and pc_other_cpus by (all_cpus & ~(1 << pc_cpuid))).
This change is not targeted for MFC because of struct pcpu members removal and dependency by cpumask_t retirement.
MD review by: marcel, marius, alc Tested by: pluknet MD testing by: marcel, marius, gonzo, andreast
|
222813 |
07-Jun-2011 |
attilio |
etire the cpumask_t type and replace it with cpuset_t usage.
This is intended to fix the bug where cpu mask objects are capped to 32. MAXCPU, then, can now arbitrarely bumped to whatever value. Anyway, as long as several structures in the kernel are statically allocated and sized as MAXCPU, it is suggested to keep it as low as possible for the time being.
Technical notes on this commit itself: - More functions to handle with cpuset_t objects are introduced. The most notable are cpusetobj_ffs() (which calculates a ffs(3) for a cpuset_t object), cpusetobj_strprint() (which prepares a string representing a cpuset_t object) and cpusetobj_strscan() (which creates a valid cpuset_t starting from a string representation). - pc_cpumask and pc_other_cpus are target to be removed soon. With the moving from cpumask_t to cpuset_t they are now inefficient and not really useful. Anyway, for the time being, please note that access to pcpu datas is protected by sched_pin() in order to avoid migrating the CPU while reading more than one (possible) word - Please note that size of cpuset_t objects may differ between kernel and userland. While this is not directly related to the patch itself, it is good to understand that concept and possibly use the patch as a reference on how to deal with cpuset_t objects in userland, when accessing kernland members. - KTR_CPUMASK is changed and now is represented through a string, to be set as the example reported in NOTES.
Please additively note that no MAXCPU is bumped in this patch, but private testing has been done until to MAXCPU=128 on a real 8x8x2(htt) machine (amd64).
Please note that the FreeBSD version is not yet bumped because of the upcoming pcpu changes. However, note that this patch is not targeted for MFC.
People to thank for the time spent on this patch: - sbruno, pluknet and Nicholas Esborn (nick AT desert DOT net) tested several revision of the patches and really helped in improving stability of this work. - marius fixed several bugs in the sparc64 implementation and reviewed patches related to ktr. - jeff and jhb discussed the basic approach followed. - kib and marcel made targeted review on some specific part of the patch. - marius, art, nwhitehorn and andreast reviewed MD specific part of the patch. - marius, andreast, gonzo, nwhitehorn and jceel tested MD specific implementations of the patch. - Other people have made contributions on other patches that have been already committed and have been listed separately.
Companies that should be mentioned for having participated at several degrees: - Yahoo! for having offered the machines used for testing on big count of CPUs. - The FreeBSD Foundation for having sponsored my devsummit attendance, which has been instrumental. - Sandvine for having offered offices and infrastructure during development.
(I really hope I didn't forget anyone, if it happened I apologize in advance).
|
221170 |
28-Apr-2011 |
obrien |
Remove unused GPL files from tcsh.
|
207736 |
07-May-2010 |
mckusick |
Merger of the quota64 project into head.
This joint work of Dag-Erling Smørgrav and myself updates the FFS quota system to support both traditional 32-bit and new 64-bit quotas (for those of you who want to put 2+Tb quotas on your users).
By default quotas are not compiled into the kernel. To include them in your kernel configuration you need to specify:
options QUOTA # Enable FFS quotas
If you are already running with the current 32-bit quotas, they should continue to work just as they have in the past. If you wish to convert to using 64-bit quotas, use `quotacheck -c 64'; if you wish to revert from 64-bit quotas back to 32-bit quotas, use `quotacheck -c 32'.
There is a new library of functions to simplify the use of the quota system, do `man quotafile' for details. If your application is currently using the quotactl(2), it is highly recommended that you convert your application to use the quotafile interface. Note that existing binaries will continue to work.
Special thanks to John Kozubik of rsync.net for getting me interested in pursuing 64-bit quota support and for funding part of my development time on this project.
|
197812 |
06-Oct-2009 |
rdivacky |
Fix tcsh losing history when tcsh terminates because the pty beneath it is closed.
Diagnosed by Ted Anderson:
New signal queuing logic was introduced in 6.15 and allows the signal handlers to be run explicitly by calling handle_pending_signals, instead of immediately when the signal is delivered. This function is called at various places, typically when receiving a EINTR from a slow system call such as read or write. In the pty exit case, it was called from xwrite, called from flush, while printing the "exit" message after receiving EOF when reading from the pty (note that the read did not return EINTR but zero bytes, indicating EOF). The SIGHUP handler, phup(), called rechist, which opened the history file and began writing the merged history to it. This process invoked flush recursively to actually write the data. In this case, however, the flush noticed it was being called recursively and decided fail by calling stderror.
My conclusion was that the signal was being handled at a bad time. But whether to fix flush not to care about the recursive call, or to handle the signal some other time and when to handle it, was unclear to me. However, by adding an extra call to handle_pending_signals, just after process() returns to main(), I was able to avoid the truncated history after network outages and similar failures. I verified this fix in version 6.17.
Approved by: ed (mentor) MFC after: 1 week
|
195609 |
11-Jul-2009 |
mp |
Update to tcsh 6.17.00.
Approved by: re (kensmith)
|
195588 |
10-Jul-2009 |
mp |
Bootstrap merge history.
Approved by: re
|
194767 |
23-Jun-2009 |
kib |
Usermode portion of the support for swap allocation accounting: - update for getrlimit(2) manpage; - support for setting RLIMIT_SWAP in login class; - addition to the limits(1) and sh and csh limit-setting builtins; - tuning(7) documentation on the sysctls controlling overcommit.
In collaboration with: pho Reviewed by: alc Approved by: re (kensmith)
|
184072 |
20-Oct-2008 |
ru |
Actually fix pty detection for autologout setting. (The fix has been submitted upstream.)
|
180637 |
20-Jul-2008 |
keramida |
tcsh: fix abort in cleanup_until(), caused by internal xgetpass()
The xgetpass() function pushes a cleanup entry for &osa, but then attempts to flush the stack until an entry matching &sa. The two object pointers do not match, so the stack is popped too much, and then cleanup_until calls abort() when it unexpectedly hits the bottom of the cleanup stack.
Reported by: Paul B. Mahol, onemda at gmail.com, Pietro Cerutti, gahr at gahr.ch PR: bin/124191 Reviewed by: mp, kris MFC after: 2 days
|
177129 |
12-Mar-2008 |
delphij |
This commit was generated by cvs2svn to compensate for changes in r177128, which included commits to RCS files with non-trunk default branches.
|
172669 |
15-Oct-2007 |
mp |
This commit was generated by cvs2svn to compensate for changes in r172668, which included commits to RCS files with non-trunk default branches.
|
172666 |
15-Oct-2007 |
mp |
This commit was generated by cvs2svn to compensate for changes in r172665, which included commits to RCS files with non-trunk default branches.
|
168306 |
03-Apr-2007 |
mp |
This commit was generated by cvs2svn to compensate for changes in r168305, which included commits to RCS files with non-trunk default branches.
|
167469 |
11-Mar-2007 |
mp |
Build updates for tcsh-6.15.00 import.
Reviewed by: ume Reminded by: Divacky Roman MFC after: 1 week
|
167466 |
11-Mar-2007 |
mp |
This commit was generated by cvs2svn to compensate for changes in r167465, which included commits to RCS files with non-trunk default branches.
|
156761 |
16-Mar-2006 |
ume |
Remove the nls/*/charset files to the exclude list. These files are required for NLS catalog support.
|
155833 |
19-Feb-2006 |
ume |
This commit was generated by cvs2svn to compensate for changes in r155832, which included commits to RCS files with non-trunk default branches.
|
145480 |
24-Apr-2005 |
mp |
This commit was generated by cvs2svn to compensate for changes in r145479, which included commits to RCS files with non-trunk default branches.
|
131965 |
11-Jul-2004 |
mp |
Add the nls/*/charset files to the exclude list. These files are not needed and only provide comments in the text NLS files.
|
131963 |
11-Jul-2004 |
mp |
This commit was generated by cvs2svn to compensate for changes in r131962, which included commits to RCS files with non-trunk default branches.
|
100619 |
24-Jul-2002 |
mp |
Document upgrade procedure.
|
100617 |
24-Jul-2002 |
mp |
This commit was generated by cvs2svn to compensate for changes in r100616, which included commits to RCS files with non-trunk default branches.
|
90447 |
10-Feb-2002 |
mp |
This commit was generated by cvs2svn to compensate for changes in r90446, which included commits to RCS files with non-trunk default branches.
|
83099 |
05-Sep-2001 |
mp |
This commit was generated by cvs2svn to compensate for changes in r83098, which included commits to RCS files with non-trunk default branches.
|
73394 |
03-Mar-2001 |
kris |
This commit was generated by cvs2svn to compensate for changes in r73393, which included commits to RCS files with non-trunk default branches.
|
69412 |
30-Nov-2000 |
ache |
This file not present in 6.10
|
69409 |
30-Nov-2000 |
ache |
This commit was generated by cvs2svn to compensate for changes in r69408, which included commits to RCS files with non-trunk default branches.
|
68333 |
04-Nov-2000 |
kris |
This commit was generated by cvs2svn to compensate for changes in r68332, which included commits to RCS files with non-trunk default branches.
|
61525 |
10-Jun-2000 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r61524, which included commits to RCS files with non-trunk default branches.
|
61522 |
10-Jun-2000 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r61521, which included commits to RCS files with non-trunk default branches.
|
61520 |
10-Jun-2000 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r61519, which included commits to RCS files with non-trunk default branches.
|
61516 |
10-Jun-2000 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r61515, which included commits to RCS files with non-trunk default branches.
|
59902 |
02-May-2000 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r59901, which included commits to RCS files with non-trunk default branches.
|
59420 |
20-Apr-2000 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r59419, which included commits to RCS files with non-trunk default branches.
|
59416 |
20-Apr-2000 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r59415, which included commits to RCS files with non-trunk default branches.
|
59244 |
15-Apr-2000 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r59243, which included commits to RCS files with non-trunk default branches.
|