Commit Graph

101705 Commits

Author SHA1 Message Date
itojun
73c2dd3286 fix dig -x ip6addr. PR 18193. 2002-09-06 04:50:02 +00:00
mycroft
b97e4047b7 Re-poison a lot of consts, now that the mark shite is gone. 2002-09-06 03:12:04 +00:00
mycroft
a04012e731 Split _rtld_relocate_plt_object() into two MD functions:
* _rtld_relocate_plt_lazy() fixes up all the relocs pointing to the PLT.  (On
  most platforms it just does a simple base-relative fixup; on SPARC it does
  nothing.)
* _rtld_relocate_plt_object() does immediate binding for a PLT entry.
The basic gist is that this saves a bit of time on SPARC (where the iteration
through the pltrela table was gratuitous), and a little less time on all other
platforms.  A whole lot of #ifdef'ed crap is moved out of reloc.c, too.

NOT tested on: hppa sh x86_64
2002-09-06 03:05:35 +00:00
thorpej
d0f5785ccd Add pci*. 2002-09-06 02:40:56 +00:00
mycroft
5f016a11ef Repair a slight biff I made earlier -- do not exit the loop in
_rtld_relocate_nonplt_objects() early.
2002-09-06 02:01:39 +00:00
itojun
530771e5ef always consult SS_CANTRCVMORE. PR 18185 2002-09-05 23:02:18 +00:00
christos
fad54bde7f Make this match reality [not used yet] 2002-09-05 22:28:10 +00:00
christos
2043e8b0c4 remove XXX: 2002-09-05 22:27:36 +00:00
mycroft
c59ffb0cc4 Remove all of the mark' code. This is responsible for the undefined PLT
symbol' errors, probably because the increment gets interrupted occasionally by
a signal.  In general, _rtld_bind() should not modify ANY internal state.
2002-09-05 21:57:09 +00:00
mycroft
ac191986f3 Partially fix up some debug printf()s that don't need to use defobj. 2002-09-05 21:31:30 +00:00
mycroft
bdc2ac1520 A few things:
* Pass a symbol number to _rtld_find_symdef(), not a r_info.
* Don't try to do a symbol lookup when we find an unsupported relocation;
  instead get the symbol name from the referencing object's strtab.
* Add preliminary support for `-z combreloc'-style startup optimization on
  i386, `#ifdef COMBRELOC'.
2002-09-05 21:21:06 +00:00
mycroft
1fa950d044 Fix one indentation error. 2002-09-05 20:12:43 +00:00
mycroft
74444a2ddb Rename _rtld_relocate_nonplt_object() to _rtld_relocate_nonplt_objects(),
and push the outer loop into it.  This actually shaves a couple % off startup
time at least on PCs.
2002-09-05 20:08:14 +00:00
nathanw
48a1b3aab1 Pull in a newer list of mii/phy drivers. 2002-09-05 19:53:15 +00:00
jdolecek
b7632e6c3f actually define sti device, to make 'config GENERIC' at least finish 2002-09-05 19:39:46 +00:00
jdolecek
7403e3d736 put back NetBSD RCS Id removed in rev 1.6 2002-09-05 19:23:11 +00:00
jdolecek
8839507f5b whitespace fix past __KERNEL_RCSID() 2002-09-05 18:34:00 +00:00
mycroft
00c3ad1f56 Split _rtld_relocate_nonplt_object() into separate MD files. 2002-09-05 18:25:45 +00:00
mycroft
b4a8cd2dbf Split MIPS relocation goo into mips_reloc.c. 2002-09-05 17:58:02 +00:00
mycroft
ae16986458 Simplify a couple of tests to !__mips__. 2002-09-05 17:06:11 +00:00
mycroft
9e3442dc47 Combine the code that skips COPY relocs on most platforms (other than MIPS).
Remove the code that skips JMP_SLOT relocs (thus making ld.elf_so bomb if it
hits one in the non-PLT relocation table).
2002-09-05 17:01:13 +00:00
mycroft
cf2d41da85 If REL(A)SZ extends into .rel(a).plt, trim rel(a)lim. This is actually due to
what is arguably a bug in BFD on some platforms (at least PPC and SPARC), but
I can't fix old binaries.
2002-09-05 16:58:16 +00:00
junyoung
515622e6db Remove unused arguments of _rtld_find_symdef(). 2002-09-05 16:33:57 +00:00
jwise
16ee61e627 Add COB, EOB. 2002-09-05 15:54:44 +00:00
mycroft
1ea7e8253b Remove support for PowerPC static relocations, which are not present in shared
objects, and in any case are implemented WRONG.  (They're symbol-relative, not
base-relative.)
2002-09-05 15:47:52 +00:00
mycroft
f4cbd3d6e2 Remove unused prototypes (including one for a non-existant function!). 2002-09-05 15:45:54 +00:00
mycroft
2635aa544a Make _rtld_setup_pltgot() a consistent interface on all platforms. 2002-09-05 15:38:22 +00:00
christos
6cc149625b check out EI_OSABI and EI_ABIVERSION for linux signatures. This is what
http://upx.sourceforge.net/ binaries are like.
2002-09-05 14:32:49 +00:00
scw
45eb1758c0 Clean this up somewhat, and correct some bad offsets. 2002-09-05 09:53:17 +00:00
msaitoh
a991dcef11 Add __movstr_i4_{odd,even} for -m4.
Written by SHIMIZU Ryo.
2002-09-05 08:35:15 +00:00
petrov
3962bed888 compiler warning. 2002-09-05 08:02:29 +00:00
erh
5a02e1abe2 Adjust the check for what segments should go on the low priority free list.
If a segment starts exactly at 16M don't try to split it because that causes
the code to try to call uvm_page_physload with a zero length segment.
(kern/17199)
2002-09-05 02:43:00 +00:00
gendalia
18a1b84074 GIGO: garbage in, garbage out
SOP: standard operating procedure
TWIAVBP: the world is a very big place
2002-09-04 23:51:55 +00:00
tron
3237921cc3 Add new files installed by XFree86 4.2.1. 2002-09-04 22:56:21 +00:00
scw
fd955ca5d6 Make it plain to the compiler that __sigtramp_sigcontext_1() really is
an external function, instead of an array. Otherwise, it won't set
bit 0 of the trampoline's address to indicate SHmedia mode.
2002-09-04 21:44:07 +00:00
scw
891c86cef4 Use r4 to preserve the filedes pointer across the syscall instead of r3. 2002-09-04 19:19:07 +00:00
mycroft
1e06edb63b There is no need to do an imb after each call to the binder, because we only
patch the GOT, not the PLT.  However, do an imb when setting up the PLT thunk,
just in case.
2002-09-04 19:13:00 +00:00
junyoung
937e5f4f83 Previous commit broke the normal build; this should really fix the
problem, toolchain/18020. From Frederick Bruckman <fredb@immanent.net>.
2002-09-04 16:57:47 +00:00
martin
a9cd647f4d Adapt to recent sbusvar.h changes.
Use a slightly less conservative timing configuration.
2002-09-04 16:17:52 +00:00
martin
e7856d0f2a Adapt to sbusvar.h changes. 2002-09-04 16:12:23 +00:00
scw
570420748b Need opt_kernel_ipt.h here. 2002-09-04 15:31:06 +00:00
scw
dd3511071d Mondo pmap fixes, including a bunch of DEBUG stuff.
This still needs a bunch of work, but is good enough to get
us to single-user mode.

To paraphrase a quote from Short Circuit: "NetBSD/sh5 is alive!".
2002-09-04 15:30:12 +00:00
scw
94d1813039 Don't inlcude "opt_kernel_ipt.h" here.
Move KERNEL_IPT_SIZE inside _KERNEL check.
2002-09-04 15:26:29 +00:00
scw
ad5e71606f Don't claim we can support a stat clock at this time; I still need to
sort out some clocking issues.
2002-09-04 15:18:14 +00:00
scw
4b8905020d - #define the physical start of RAM.
- Set up a Panic Stack,
 - Don't pre-map the sysfpga at this time.
 - Calculate the CPU speed only if SH5_CPU_SPEED isn't defined.
 - On a related note, make the CPU speed probing code more accurate.
 - Print the CPU speed at startup.
 - Force RB_SINGLE for now, at least until I get a bootloader written.
2002-09-04 15:14:46 +00:00
scw
e94347123e Set SMC_FLAGS_32BIT_READ flag before calling the MI code. 2002-09-04 14:55:42 +00:00
scw
0dbf19c561 Add a flag, SMC_FLAGS_32BIT_READ, which is settable by the bus-specific
back-end to indicate that the device always sees reads as 32-bit
transactions, even if the host does 8 or 16-bit reads.

This is necessary for the SH-5 "Cayman" on-board ethernet. The SMsC part
is behind an FPGA which maps all cpu reads to 32-bits transactions.
2002-09-04 14:54:37 +00:00
scw
c5c693afff Oops, free bus space via uvm_km_free() instead of pmap_kremove(). 2002-09-04 14:39:56 +00:00
scw
7f0cd9b561 Some bug fixes:
- in _EXCEPTION_EXIT, copy the current ASID to the pre-exception
    context before we switch.
  - fix the pteg hash generation code and EPN masking in the tlb
    miss handler.

Sprinkle some DIAGNOSTIC checks.
2002-09-04 14:37:53 +00:00
scw
8f18047310 Fix a couple of bugs:
- a && which should have been a &
 - advance the PC to the next insn before dealing with a syscall (trapa)

Sprinkle some DEBUG/DIAGNOSTIC code.
2002-09-04 14:34:01 +00:00