101770 Commits

Author SHA1 Message Date
gehenna
ab093bca65 Add the description of device switch and naming convention. 2002-09-06 14:16:54 +00:00
gehenna
3fd2dc7121 Document the `device-major'' statement and remove the `major'' statement. 2002-09-06 14:13:48 +00:00
gehenna
5747ad0039 The device switch ``ipl_cdevsw'' is defined after 1.6H. 2002-09-06 14:00:00 +00:00
junyoung
b255e80b6f Make this compile. 2002-09-06 13:59:09 +00:00
gehenna
eb1cdba2fd Bump version for the merge of gehenna-devsw. 2002-09-06 13:58:36 +00:00
gehenna
8b2e83ab0e Merge the gehenna-devsw branch into the trunk. 2002-09-06 13:55:43 +00:00
junyoung
3ffe941c3a Remove typedef which was never used. Meaningless comment as well. 2002-09-06 13:27:48 +00:00
mycroft
0df8d18100 Introduce a new flag, `isdynamic', which is used to remember whether the
executable was of type ET_DYN.  Use this instead of `mainprog' to determine
whether we need to do base-relative fixups of the PLT.  (This allows loading
non-relocatable objects, should we desire to do that at some point...)
2002-09-06 13:20:29 +00:00
gehenna
77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
mycroft
69b9a24021 More const poisoning. Now the entire _rtld_bind() path useds a const Obj_Entry. 2002-09-06 12:00:40 +00:00
agc
2f14b22182 Describe what this utility does a bit better. Pointed out by Curt Sampson. 2002-09-06 08:59:25 +00:00
lukem
c788921e6a In compare_dir(), when files don't match print:
src != dest
instead of:
	dest != src
I think that's less confusing and more consistent.

In do_postfix(), if ${SRC_DIR}/gnu/dist/postfix/conf doesn't exist and
${DEST_DIR}/usr/share/examples/postfix does, use the latter for the
${DEST_DIR}/etc/postfix checks.  This means that postinstall can be
run in a temporary directory which has etc.tgz extracted into it
with -s `pwd`, (versus against a source tree), and the postfix upgrade
works correctly.

Remove some unnecessary goop.
2002-09-06 08:58:48 +00:00
lukem
e8487071c4 some consistency, please... 2002-09-06 06:41:32 +00:00
jdolecek
8b77a9070a put an explicit .MAIN target before the .if make() condition; apparently
.MAIN must be defined for the implicit target rule to kick in
this fixes compilation with call like 'make', i.e. without specified target

another option would be to move the .if make() condition after config(8)
generated goo, since config(8) implicitly generates a .MAIN: directive too,
but the MD .if make() really belongs into (7) misc settings section IMHO
2002-09-06 06:16:57 +00:00
lukem
5d2cdf0811 Add missing "echo", as pointed out by Havard Eidnes <he@netbsd.org>
in PR [bin/18155].  (Whilst this fix needs to be fed back to Wietse Venema,
there's no reason not to fix it locally...)
2002-09-06 05:36:14 +00:00
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