summaryrefslogtreecommitdiffstats
path: root/gnu
Commit message (Collapse)AuthorAgeFilesLines
* Fixed accesses to addresses between VM_MAXUSER_ADDRESS (normallybde1998-01-193-36/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | 0xefbfe000) and kernel_start (normally 0xf0100000). Things are unnecessarily (?) difficult because procfs is used to access user addresses in the live-kernel case although we must have access to /dev/mem to work at all, and whatever works for the dead-kernel case should work in all cases (modulo volatility of live kernel variables). We used the wrong range [0, kernel_start) for user addresses. Procfs should only work up to VM_MAXUSER_ADDRESS, but it bogusly works for reads up to the address 2 pages higher (the user area, including the kernel stack, is mapped to where the user area used to be (WTUAUTB)). Procfs can not work at all for addresses between WTUAUTB and kernel_start. Now we use procfs only to access addresses up to VM_MAXUSER_ADDRESS. Higher addresses are translated normally using kvtophys(), so the user ptd is used for addresses below the real kernel start (0xf0000000; see INKERNEL()) and nothing is found WTUAUTB. Strange accesses that cross the user-kernel boundary are now handled, but such ranges are currently always errors because they necessarily overlap the hole WTUAUTB. Short reads are still not handled.
* Removed `kstack' and associated mistranslations in kvtophys().bde1998-01-193-54/+3
| | | | | | | | | | | | | | | Correct translations would have been null. However, kstack was the top of the kernel stack instead of the base of the kernel stack like it was when the kernel exported it, so the area above the kernel stack was mistranslated and the kernel stack was not translated. This bug was depended on to compensate for the wrong value of kstack - to read the pcb, instead of just using the address of the pcb, we used the mistranslated address of kstack, which happened to be the same (curpcb = kstack - 0x2000). This area is simpler than it used to be now that the kernel stack address is per-process. The code still seems to be more complicated than necessary - the `found_pcb == 0' case seems to be unused.
* Fixed endless loop for `p/x *(int *)0xf0000000'. kvm_uread() inbde1998-01-183-21/+30
| | | | | | | | | | gdb was cloned from the buggy version of kvm_uread() in libkvm and had the same bugs. It looped endlessly on EOF and checked errno without setting it in the lseek() error check. The first bug caused gdb to loop endlessly for reads from addresses between the end of the user area and the start of the kernel text. kvm_uread() should not be used for addresses beyond the end of the user area, but is due to bugs elsewhere.
* Don't override FRAME_CHAIN(). If the current frame is valid, thenbde1998-01-185-144/+0
| | | | | | | | | | | | | | | | | | the previous frame is in the usual place even for traps, interrupts and syscalls in the kernel, because the assembly language stubs don't change the frame pointer. The previous frame is just not for the calling function. We may as well depend on this as on magic to determine the trap frame address. The magic is in FRAME_SAVED_PC() which elides the correct number of stubs (1) to go back to a pc that matches the previous frame. Removing fbsd_kern_frame_chain() fixes bugs in it. Xsyscall was misspelled as _Xsyscall (gdb removes one leading underscore), so the tf_syscall frame type was never found. This was harmless because tf_normal works in all cases in fbsd_kern_frame_chain() and Xsyscall is spelled correctly in fbsd_kern_frame_saved_pc() where it matters. There were style bugs on almost every line, starting with a primary indent of 7.
* Fixed sloppy definitions of SIGTRAMP_START and SIGTRAMP_END. The oldbde1998-01-182-8/+14
| | | | range was a little too large.
* Pass the system name to dmesg. Rev.1.7 only works when the symbols inbde1998-01-173-6/+27
| | | | /kernel aren't too different form those in the kernel being debugged.
* More i386 -> ${MACHINE} changes to make this Makefile machinejb1998-01-111-15/+15
| | | | | independent. It makes it look like you can get aout on alpha, but that's just your imagination. The makefile above gives you no choice.
* Replace i386 references with ${MACHINE} to make this makefile almostjb1998-01-111-7/+11
| | | | | | machine independent, with the only dependency being the binary format to build. We only expect to build ELF on alpha although we'll need ECOFF compatibility with Digital Unix.
* Avoid building x86 specific libraries on Alpha.jb1998-01-101-2/+8
|
* Make the ".set" directive copy the aux field when the expressionjdp1998-01-101-1/+2
| | | | | | | | reduces to a relocatable symbol plus an offset. This preserves the symbol type information (function vs. object). It is important for SVR4-style weak symbols, e.g., "#pragma weak foo=bar". Without this change, the linker complains that the jmpslot entry is not a function.
* PR: gnu/4385danny1998-01-053-27/+71
| | | | | | Submitted by: Robert Eckardt <roberte@MEP.Ruhr-Uni-Bochum.de> Sundry man page fixes; handle Central European Summer Time (CEST); usage fixes in line with man page fixes.
* Upgrade to 2.5 (contrib version)ache1998-01-0421-5808/+125
|
* Back out Index over +++/--- precedence.ache1998-01-031-5/+10
| | | | | | | It maybe right, if patch was FreeBSD-own program, but it break compatibility with pre-existent patches in other systems. The example is big ncurses patch which don't apply on FreeBSD due to "fixed" precedence.
* Removed /etc/ld.so.conf reference from FILES section (people getalex1998-01-011-3/+1
| | | | | | | confused when they can't find it), but leave the reference to it as being a standard filename (which doesn't imply that it exists). Discussed with: jkh
* Submitted by: Peter Hawkins <peter@clari.net.au>danny1997-12-306-13/+24
| | | | Actually implement --norecurse as documented in the man page.
* Check argument filename length before copying.wosch1997-12-271-1/+8
| | | | $ gzip `perl -e 'for(1..10240){ print "a"}'`
* Workaround to avoid a strange core dump.wosch1997-12-261-1/+3
| | | | gzip < /dev/null | perl -npe 's/\003\003/\003\225/' | gzip -d
* Do not install the z*grep man pages if grep was linked with -lz.wosch1997-12-261-3/+5
|
* Use consistent spelling,hoek1997-12-251-1/+1
| | | | | | | | writeable -> writable (recall prior debate over this? :-) initialise -> initialize recognise -> recognize Merry Christmas! :)
* When called as `zgrep', the -Z argument is assumed. Make awosch1997-12-214-10/+26
| | | | | | | link from zgrep to grep. Pointed out by: Tim Vanderhoek <hoek@hwcn.org> and Mike Smith <mike@smith.net.au>
* Added zgrep.libz. This version of zgrep(1) depend on awosch1997-12-202-2/+27
| | | | grep(1) linked with libz.
* Added a sparc category to the list.wosch1997-12-201-0/+1
|
* Added builtin decompression using zlib library, option -Z.wosch1997-12-203-67/+131
| | | | | | | | | | | | | | | | | | | | | | | Enabled this new feature with the makefile variable GREP_LIBZ. If you don't like it, compile with `make GREP_LIBZ='. grep + zlib has several advantages: - the shell script zgrep(1) will be basically a one line exec grep -Z "$@" - no shell script, no bugs. The current zgrep implementations have many bugs and some grep options are no supported. - no shell script, no security risks. - it is a magnitude faster than a shell script Also fixed: 0 -> STDIN_FILENO Close a file descriptor only if the open call was successfully. It does not hurt for the open(2) function, but the gzclose(3) function died in free() to free up (not) allocated memory.
* Exec dmesg and awk to print everything in the message bufferbde1997-12-193-3/+30
| | | | | | | | following "panic:" or "Fatal trap". `panicstr' is still printed, although it is redundant if there is a valid message buffer and incomplete if it contains `%'s. I think the awk command belongs here and not in a script since a standard format with complete messages is good for bug reports.
* Fixed missing dependency on version.c.bde1997-12-181-5/+6
| | | | Fixed some style bugs ($@ is not recommended ...).
* <bsd.prog.mk> has always included ../Makefile.inc, and there are nobde1997-12-171-3/+1
| | | | complications involving .PATH or dependencies, so don't include it here.
* <bsd.prog.mk> has included ../Makefile.inc for a long time, and therebde1997-12-171-2/+1
| | | | | are no complications involving .PATH or dependencies, so don't include it here.
* Don't use LDDESTDIR. Just put the -L arg in LDADD.bde1997-12-172-3/+2
|
* Use BINOWN, etc. instead of bin, etc. so that (this part of)bde1997-12-174-14/+14
| | | | `BINOWN=... make world' can be run by users other than root.
* Use getopts instead getopt(1). This should fix the problemwosch1997-12-071-27/+26
| | | | | with whitespaces in pattern. PR: 5211
* Make emacs work again. This is a workaround for the fact that thejdp1997-12-051-18/+33
| | | | | | | | | | | | | | | | | | | | emacs a.out file, self-generated by emacs's "unexec" function in "unexsunos4.c", is invalid. In particular, its "_end" symbol has the wrong value. The dynamic linker was using the value of that symbol to initialize its sbrk break level. The workaround is to peek at the executable's a.out header in memory, and calculate what "_end" should be based on the segment sizes. I will work out a fix for emacs and send it to the FSF. This dynamic linker workaround is still worthwhile, if only to avoid forcing all emacs users to build a new version. Note: xemacs gives a bogus warning at startup, for related reasons. The warning is harmless and can safely be ignored. I will send a patch to the xemacs maintainers to get rid of it, and meanwhile add a patch file to our port.
* Remove manpath.[ch] here and use the ones in ../manpath instead.steve1997-11-304-553/+2
|
* Resurrect manpath.c here.steve1997-11-301-0/+525
|
* Remove this copy of manpath.c and add the .PATH directive to get tosteve1997-11-302-520/+2
| | | | | | the same file in ${.CURDIR}/../man. Suggested by: Bruce Evans
* Always call gripe_reading_mp_config with the required arguments.steve1997-11-302-4/+4
| | | | | PR: 3894 Submitted by: Stephen Clawson <sclawson@marker.cs.utah.edu>
* Get rid of the dynamic linker's internal malloc package, and arrangejdp1997-11-294-863/+474
| | | | | | | | | | | | | | | | | | | | | | | | | | things so that it uses the same malloc as is used by the program being executed. This has several advantages, the big one being that you can now debug core dumps from dynamically linked programs and get useful information out of them. Until now, that didn't work. The internal malloc package placed the tables describing the loaded shared libraries in a mapped region of high memory that was not written to core files. Thus the debugger had no way of determining what was loaded where in memory. Now that the dynamic linker uses the application's malloc package (normally, but not necessarily, the system malloc), its tables end up in the regular heap area where they will be included in core dumps. The debugger now works very well indeed, thank you very much. Also ... Bring the program a little closer to conformance with style(9). There is still a long way to go. Add minimal const correctness changes to get rid of compiler warnings caused by the recent const changes in <dlfcn.h> and <link.h>. Improve performance by eliminating redundant calculations of symbols' hash values.
* In the "ldd -v" output, display the N_AUX information for eachjdp1997-11-281-3/+13
| | | | | symbol. It indicates whether the symbol refers to a function or a data object.
* Implemented "info float" for core files.bde1997-11-232-72/+130
| | | | | | | | | | | Implemented reading of %fs and %gs from core files. Print weird floating point values better. We have to convert long doubles to doubles here because of limitations and bugs in printf() and floatformat_to_double() (long doubles aren't really supported and naive converion to double causes exceptions). Conversion loses information about weird formats (everything becomes a quiet NaN), and printf() doesn't know about different types of NaNs anyway.
* Add missing argument detected by "-Wformat".jdp1997-11-181-1/+1
|
* Define PR_PROGRAM properlyache1997-10-291-0/+1
|
* Switch to contrib versionache1997-10-291-5/+12
|
* Switch to contrib versionache1997-10-291-4/+11
|
* Switch to contrib versionache1997-10-2927-14601/+11
|
* Remove yet another superfluous file.jraynard1997-10-261-2/+2
|
* Add -funsigned-char to CFLAGS (for ctype macros)ache1997-10-261-1/+4
|
* Add (unsigned char) cast to ctype macrosache1997-10-234-38/+82
|
* Add (unsigned char) cast to ctype macrosache1997-10-232-21/+21
|
* Add unsigned char cast to ctype macrosache1997-10-231-1/+1
|
* Add (unsigned char) casts to ctype macrosache1997-10-232-24/+24
|
* <gnuregex.h> is rather old and breaks AWK's regex matching. Use a newerjraynard1997-10-191-2/+14
| | | | version instead.
OpenPOWER on IntegriCloud