Commit Graph

73838 Commits

Author SHA1 Message Date
marcel
3819e4e170 Fix WAW dependency violation on r17 (line 198) that only exists for
the SMP case. While on the subject, remove unnecessary stops. I don't
know if this resolves the memory corruption I'm seeing, but it does
have the potential. We'll see...
2002-04-21 22:43:50 +00:00
marcel
b5b1ff6565 Implement elf_reloc(). The RT specification says that we can expect
both Elf_Rel and Elf_Rela types of relocation, so handle them both
even though we only have Rel_Rela ATM. We don't handle 32-bit and
big-endian variants yet. Support for that is not trivial enough to
implement it without any evidence that we ever need it in the near
future.

For the FPTR relocations, we currently use the fptr_storage used by
_reloc() is locore.s. This is in no way a real solution, but for now
provides the service we need to get the basics going.

A static recursive function lookup_fdesc() is used to find the address
of a function in a way that keeps track of the load module so that
we can get the correct GP value if we need to construct an OPD (ie
there's no OPD yet for the function.

For simplicity, we create an OPD for the IPLT relocations as well and
simply fill the user provided function descriptor from the OPD. Since
the the official descriptors are unique, this has no bad side effects.
Note that we ignore the addend for FPTR relocations, but use the
addend for IPLT relocations as an offset to the function address.

This commit allows us to load and relocate modules and modules appear
to work correctly, although we probably need to make sure that we set
GP correctly in all cases when we have inter-module calls. This
especially applies to assembly coded functions that have cross module
calls.
2002-04-21 21:27:57 +00:00
marcel
84ecc1bfc1 Add function link_elf_get_gp(), specific to ia64 for now, to get
the DT_PLTGOT value. On ia64 this is the value of GP. We need this
to construct function descriptors, but the elf file structure is
not exported to MD code.

Note that the name of the function is based on the meaning that
DT_PLTGOT has on ia64. This may differ on other architectures. As
such, link_elf_get_gp() has a high level of MD to it. Renaming the
function to describe what DT_* value is returned makes it generic,
but also makes the MD code less clear and if we only need this on
ia64, then a general name for a specific function doesn't help.

In short: I don't know what is "right" at this time, so I'll go
with what I have.
2002-04-21 21:08:30 +00:00
gshapiro
dc941e21d5 Non-sendmail users use the FreeBSD sendmail startup functionality to start
alternative MTAs.  Therefore, always install rc.sendmail, regardless of
NO_SENDMAIL make.conf setting.  Users can still set mta_start_script to a
different script.

This commit is after a repo-copy of src/etc/sendmail/rc.sendmail to
src/etc/rc.sendmail.

Noticed by:	Calvin NG <calvinng@brel.com>
MFC after:	3 days
2002-04-21 20:32:28 +00:00
dwmalone
4c92f1efea Use fseeko and uintptr_t to make sure that we get a sensible offset
when trying to read from the stack.

PR:		37104
Submitted by:	Thomas Quinot <thomas@cuivre.fr.eu.org>
MFC after:	3 weeks
2002-04-21 19:04:26 +00:00
ue
b30303358f MFbed: translation updates 2002-04-21 18:45:07 +00:00
fenner
396443e180 Turn blank lines into .Pp . This does not significantly change the
rendering of the man pages (turns some sequences of two blank lines
into a single blank line), and eliminates 306 errors generated while
formatting named.conf.5 .
2002-04-21 18:41:29 +00:00
fenner
6641331335 mdoc police: Use Em ("emphasis") to get italics/underlining, instead of
Sm Pa (a syntax error, and an assertion that the arguments are path
 names, which is a little far from true).
2002-04-21 18:33:57 +00:00
ue
7baa2e20d4 MFen 1.318-1.327 2002-04-21 18:28:49 +00:00
dwmalone
c9028e7486 Add mount_udf and mount_smbfs to crossrefs.
PR:		37200
Submitted by:	Cyrille Lefevre <cyrille.lefevre@laposte.net>
2002-04-21 18:23:58 +00:00
markm
bdf3249fdc Style. Fix long lines and a <tab> indent that should be 4 spaces. 2002-04-21 17:26:16 +00:00
iedowse
cb60904294 Limit to the maximum allowed reply size the amount of data that
nfsrv_readdir and nfsrv_readdirplus can return. A client request
containing an over-large `count' field could trigger the "Bad nfs
svc reply" panic in nfs_syscalls.c.

Spotted while trying to reproduce kern/37304, which turned out to
be fixed in FreeBSD a long time ago.

MFC after:	1 week
2002-04-21 16:14:54 +00:00
luigi
1cb1010bd7 Add 'rl' to the list of supported drivers. 2002-04-21 15:47:59 +00:00
bde
b4c173f82f Don't attempt to decvlare M_DEVFS whern MALLOC_DECLARE is not defined.
This fixes warnings that should be errors in fstat.

Reminded by:	alpha tinderbox

Fixed some style bugs (ones near BOF and EOF; there are many more).
2002-04-21 15:47:03 +00:00
bde
2deaae67fa Include <sys/systm.h> for (at least) the definition of atomic functions
which are sometimes used by the macros in <sys/mutex.h>; don't depend
on not-quite-necessary namespace pollution in <sys/mutex.h>.
2002-04-21 15:35:54 +00:00
bmah
20c79cca8d Use newly-added USB manpage entity references where appropriate. 2002-04-21 15:35:52 +00:00
keramida
f4dad30bfd Remove duplicated text.
PR:		docs/37287
Submitted by:	Tony Finch <dot@dotat.at>
MFC after:	3 days
2002-04-21 14:48:47 +00:00
ache
ac2b640032 Move LOGIN_CAP calls before all file descriptors are closed hard, since some
descriptors may be used by LOGIN_CAP internally, add login_close().

Use "nocheckmail" LOGIN_CAP capability too like our login does.
2002-04-21 13:31:56 +00:00
charnier
751aa370d4 Dot terminate a sentence. Rearrange to not use .Nm at the beginning
of a sentence.
2002-04-21 13:02:20 +00:00
charnier
0865462d56 Use `The .Nm utility' 2002-04-21 12:53:08 +00:00
bde
037c78ccfc Fixed some style bugs ("From:" in vendor id line, disordered MAN line, and
blank lines).

Not unapproved of by:	markm
2002-04-21 12:43:14 +00:00
dfr
70f62993d0 Setup the child's return values correctly when forking an IA-32 process. 2002-04-21 12:34:58 +00:00
markm
b0c0526342 Use protected names (_foo) to cutdown on boatloads of lint warnings. 2002-04-21 11:16:10 +00:00
markm
7fdd1bc0e3 Wrap GCC-specific stuff and provide alternative for lint. 2002-04-21 11:11:02 +00:00
markm
578e65f142 Parenthesise macro arguments to reduce lint warnings. 2002-04-21 11:08:52 +00:00
markm
6417a5c4b6 Fix really dumb braino of mine; cast a sizeof() to an int, which it is
being compared to, not size_t, which it already is.
2002-04-21 11:02:36 +00:00
markm
7dbe80a5b9 Used protected names (_foo) for parameter names. This helps clean up
a boatload of lint warnings.
2002-04-21 10:57:43 +00:00
markm
8801cf491a Stylify (mainly line up macro EOL-continuation \'s), and add a dummy
alternative for lint.
2002-04-21 10:49:00 +00:00
markm
c723880f8e Parenthesise macro arguments to reduce lint warnings. 2002-04-21 10:43:24 +00:00
markm
99d7df8a63 Stylify, fix tabs.
Liked by:	bde (a couple of months back)
2002-04-21 10:38:35 +00:00
markm
b8f437cc0b Remove macros that are defined elsewhere. 2002-04-21 10:32:48 +00:00
marcel
47b353eb34 Improve self-relocation and fix ABI misinterpretation. The changes
here mostly mirror the changes made in
	boot/efi/libefi/arch/ia64/start.S rev 1.5

Significant difference: We don't handle the IPLT relocation here.
For barebones KLD support, we make the fptr_storage global.
2002-04-21 08:56:17 +00:00
marcel
1f2cc7b30c Improve self-relocation:
o  We don't expect the PLT relocations to follow the .rela section
   anymore. We still assume that PLT relocations are long formed,
o  Document register usage,
o  Improve ILP,
o  Fix the FPTR relocation by creating unique OPDs per function.
   Comparing functions is valid now,
o  The IPLT relocation naturally handles the addend. Deal with it.
   We ignore the addend for FPTR relocations for now. It's not at
   all clear what it means anyway.

Fix ABI misinterpretation:
o  For Elf_Rela relocations, the addend is explicit and should not
   be loaded from the memory address we're relocating. Only do that
   for Elf_Rel relocations (ie the short form).
o  DIR64LSB is not the same as REL64LSB. DIR64LSB applies to a
   symbol (S+A), whereas REL64LSB applies to the base address (BD+A),
2002-04-21 08:49:47 +00:00
cjc
129b6e1381 Consistently use full pathnames for files, especially executables.
PR:		conf/37292
Submitted by:	Helge Oldach <send-pr@oldach.net>
MFC after:	3 days
2002-04-21 08:32:35 +00:00
markm
4cae6668ff Remove my MAINTAINER= from here, as it is in src/MAINTAINER 2002-04-21 08:03:25 +00:00
markm
1d46312627 Tidy up some of the configs; s/gcc/cc/ to make the choice of C compiler
more generic. Fix paths for things like scripts (fix perldoc). Tweak
externally passed macros.
2002-04-21 08:01:31 +00:00
charnier
a29582a1b7 Add FBSDID. Start errx(3) messages with lowercase. Remove a ')' with no '('.
In usage(), use fprintf(3) instead of errx(3), to make the printed string really
start with `usage: ...'.
Reviewed by:	 marcel
2002-04-21 07:18:16 +00:00
bmah
4e1d1a5400 Un-do note of MFC of inetd change. 2002-04-21 06:33:20 +00:00
bmah
a39ea225ca New release note: mergemaster(8) -p/-C.
MFC noted:  inetd(8) off by default.
2002-04-21 04:58:24 +00:00
obrien
76b7ec65d9 o Use our own elf2aout now.
o Generalize a little.
2002-04-21 02:37:55 +00:00
brian
734c0c9c89 Don't load the netgraph line discipline. When it's in use, TIOCMGET
fails and on loss of carrier, the device doesn't become selectable with
0 bytes to read.

Problem reported by: ache
2002-04-21 02:00:29 +00:00
arr
ab6fdd245b - Nuke some more not needed #ifdef cruft. 2002-04-21 01:41:05 +00:00
jmallett
3881ce8d9c For the P function, the newline must be considered a part of the pattern
space, so when printing it, don't let the pattern space and the output run
into eachother by omitting the \n when printing.
2002-04-21 01:27:05 +00:00
jmallett
2ef068fe8d Add sed(1) tests for proper behaviour of the G option as fixed in PR 26152,
and for proper behaviour of some sed functions given a nil pattern space,
as fixed in PR 34813.

The test for G was based on the test in the PR.  The nil pattern space test
is slightly different as we need to get *some* output, as the core dump will
also produce no output (old behaviour) and turn up falsely that the utility
is working fine.
2002-04-21 01:04:03 +00:00
jmallett
a1b2db8692 Check to see if make(1)'s handling of doubly-defined targets is busted or
not.  A lot relies on this.
2002-04-21 00:41:37 +00:00
jmallett
4ccd5a9073 Only exit at the end of a test, exit with the last value of $? that was not 0.
This way the entire regression test is looked at as a pass/fail, not just one
sub-test.
2002-04-21 00:18:29 +00:00
marcel
5de2c9fb38 GCC 3.x WARNS: Add a break to the default case. 2002-04-20 21:56:42 +00:00
jmallett
57eb4121a5 Use %zu to print a size_t, not %u and definitely not %d.
Remove WARNS?=2, as GCC will usually throw a fit right now, and I'm not going
to mix WARNS and NO_WERROR.

Submitted by:	fenner
2002-04-20 21:37:26 +00:00
charnier
6e73b69f34 .Nm is not required at the begining of this sentence. 2002-04-20 21:33:10 +00:00
charnier
ba8eff66db Use `The .Nm utility'. Add section number to .Xr. 2002-04-20 21:28:47 +00:00