Commit Graph

89465 Commits

Author SHA1 Message Date
gmcgarry
bdd225baa1 Add a blurb to the top of all GENERIC files. This serves three purposes:
- to clarify some terminology
- to clarify the intention of the GENERIC file
- to cross-reference some useful man pages
2001-12-14 05:34:45 +00:00
chs
4923ddfdda in sys_mincore(), check the return value of uvm_vslock() to determine
if the vec pointer is valid rather than using uvm_useracc().
uvm_useracc() just tells you if the permissions of a user mapping allow
the desired access, not whether faulting on that mapping will succeed.
2001-12-14 04:21:22 +00:00
thorpej
6464462736 Remove the code that supports the old PLT format (the code for that
is not present in the master FSF version of this file).
2001-12-14 01:15:08 +00:00
thorpej
5ddefb1229 Garbage-collect the code that created old-format PLT entires.
The NetBSD/alpha ld.elf_so understands both formats, now.
2001-12-14 01:12:24 +00:00
thorpej
6e94624a62 Add code to peek into the PLT and determine which PLT entry format
is being used.
2001-12-14 00:53:06 +00:00
lukem
0ab8000335 as this installs in /sbin, set LDSTATIC?=-static. fixes PR [bin/14886] 2001-12-14 00:52:34 +00:00
mjacob
219d22404b Major restructuring for swizzling to the request queue and unswizzling from
the response queue. Instead of the ad hoc ISP_SWIZZLE_REQUEST, we now have
a complete set of inline functions in isp_inline.h. Each platform is
responsible for providing just one of a set of ISP_IOX_{GET,PUT}{8,16,32}
macros.

The reason this needs to be done is that we need to have a single set of
functions that will work correctly on multiple architectures for both little
and big endian machines. It also needs to work correctly in the case that
we have the request or response queues in memory that has to be treated
specially (e.g., have ddi_dma_sync called on it for Solaris after we update
it or before we read from it).

One thing that falls out of this is that we no longer build requests in the
request queue itself. Instead, we build the request locally (e.g., on the
stack) and then as part of the swizzling operation, copy it to the request
queue entry we've allocated. I thought long and hard about whether this was
too expensive a change to make as it in a lot of cases requires an extra
copy. On balance, the flexbility is worth it. With any luck, the entry that
we build locally stays in a processor writeback cache (after all, it's only
64 bytes) so that the cost of actually flushing it to the memory area that is
the shared queue with the PCI device is not all that expensive. We may examine
this again and try to get clever in the future to try and avoid copies.

Another change that falls out of this is that MEMORYBARRIER should be taken
a lot more seriously. The macro ISP_ADD_REQUEST does a MEMORYBARRIER on the
entry being added. But there had been many other places this had been missing.
It's now very important that it be done.

For NetBSD, it does a ddi_dmamap_sync as appropriate. This gets us out of
the explicit ddi_dmamap_sync on the whole response queue that we did for SBus
cards at each interrupt.

Set things up so that platforms that cannot have an SBus don't get a lot of
the SBus code checks (dead coded out).

Additional changes:

Fix a longstanding buglet of sorts. When we get an entry via isp_getrqentry,
the iptr value that gets returned is the value we intend to eventually plug
into the ISP registers as the entry *one past* the last one we've written-
*not* the current entry we're updating. All along we've been calling sync
functions on the wrong index value. Argh. The 'fix' here is to rename all
'iptr' variables as 'nxti' to remember that this is the 'next' pointer-
not the current pointer.

Devote a single bit to mboxbsy- and set aside bits for output mbox registers
that we need to pick up- we can have at least one command which does not
have any defined output registers (MBOX_EXECUTE_FIRMWARE).

Explicitly decode GetAllNext SNS Response back *as* a GetAllNext response.
Otherwise, we won't unswizzle it correctly.

Nuke some additional __P macros.
2001-12-14 00:13:44 +00:00
mjacob
acbfdd822a Roll f/w to latest level, correcting several, ah, interesting bugs. 2001-12-14 00:07:55 +00:00
augustss
a30c07720a Don't use fd_set to keep track of errors to ignore. Doing so relies on
overriding FD_SETSIZE.  Not overriding it makes it stomp all over memory
(which caused the debug outputs we've seen lately).
It used to work, but toolification of lint broke it.
2001-12-13 23:56:00 +00:00
thorpej
67925dcb0d Supply two lazy binding routines for Alpha: one that works with the
old PLT format, and one that works with the new.

XXX We currently always use _rtld_bind_start_old() in
_rtld_setup_alpha_pltgot().  We need to add code to peek
into one of the PLT entries to see which format it's in
and pick the correct binding routine.
2001-12-13 22:34:51 +00:00
tv
816077b47e Fix problem introduced with the MKMAN->NOMAN conversion. 2001-12-13 22:33:20 +00:00
kleink
327f6e3bc2 Document %z. 2001-12-13 22:11:27 +00:00
rafal
b8f0be7074 Check in workaround for BFD ABI change on MIPS: the new MIPS BFD generates
relocs for local symbols as section-relative REL32 relocs with values based
at 0, whereas previously BFD generated those relocs with values based at the
start address of the section.

This code adjusts all STT_SECTION REL32 relocs which have values less than
the start of the section by adding in the base address of the section.  This
may limit section sizes to 2GB, but that shouldn't be a problem for now.

XXX: Needs to be followed-up with binutils list to get closure on which
interpretation is correct (the new ABI or the old one), I just haven't
yet had the time to chase that.
2001-12-13 21:41:58 +00:00
thorpej
cbadc6e3d3 Use numeric labels. 2001-12-13 21:34:04 +00:00
bouyer
71e063c830 pdc202xx_setup_channel: remove a duplicate line. 2001-12-13 20:57:22 +00:00
aymeric
8547d02861 FreeBSD PR#23912 fixed by applying a patch from nvi 1.81.x
"underflow of cnt in vs_paint() by O_NUMBER_LENGTH when both leftright and
 number options in use"
2001-12-13 20:53:47 +00:00
aymeric
b9d2b65ffd Finally apply a fix from nvi 1.81.x to replace a fix committed by
Simon Burge which came from the Debian project.
This is still not TRT, but it's correct, and it gets us closer to future
versions of nvi.
I'll do ART (A Right Thing) when I have time... That's why I'm committing
this now. :-/
This fixes FreeBSD PR#23912
2001-12-13 20:51:36 +00:00
bouyer
ca9f8b13da Regen: Add some promise controllers, from FreeBSD 2001-12-13 20:41:05 +00:00
bouyer
b981b05472 Add some promise controllers, from FreeBSD 2001-12-13 20:40:28 +00:00
thorpej
23abd45cd4 Add RCS ID. 2001-12-13 20:31:31 +00:00
thorpej
bbb7ad0534 * Add a linker script which provides a _GOT_END_ symbol that we can
use to find the end of the GOT, rather than relying on _DYNAMIC
  to immediately follow the GOT.  (A change in current binutils
  moved _DYNAMIC, and thus would have broken our Alpha ld.elf_so).
* Add #ifdef'd out code to deal with the new PLT format.
2001-12-13 20:30:48 +00:00
gmcgarry
367be6a153 Sprinkle around the term "machine description file", since this is
the term used in config(9), autoconf(9) and in Torek's paper.

Also remove (comment out) reference to the 4.4BSD config docs,
since they are not installed in usr/share/doc/smm/02.config and
possibly aren't relevant any longer.  From comments made on
tech-kern by jhawk and tls.
2001-12-13 19:47:19 +00:00
tv
94d108be2e Avoid building and installing every time, so that we don't have toolchain
dependencies cause things like constantly regenerating catpages....
2001-12-13 19:36:22 +00:00
gmcgarry
c0ac5406a7 Use "machine description file" and "device definition files" correctly. 2001-12-13 19:29:32 +00:00
gmcgarry
612fadfc86 Document the defflag and defparam statements. 2001-12-13 19:26:50 +00:00
augustss
04c10fc0cf Initialize lock. 2001-12-13 17:25:37 +00:00
augustss
3df38cc501 Some debug stuff. 2001-12-13 17:15:09 +00:00
augustss
f2821a312a Fix TODO comment. 2001-12-13 17:14:21 +00:00
he
a18ce029f6 Deal with lossage caused by the addition of the netbsd-1-5 branch tag
to these files.

Apparently, the "magic" which causes the latest version on the
vendor branch to appear at the head in the repository broke when
the netbsd-1-5 tag was added.  Thus, merge in the lost revisions from
the vendor tag to work around this.
2001-12-13 15:53:54 +00:00
augustss
090d1a628e Move parameter checks to a common place. 2001-12-13 15:09:07 +00:00
augustss
2485171a67 Use unsigned ints. 2001-12-13 15:08:26 +00:00
mrg
07f129f94a clean up a couple of items. 2001-12-13 14:02:02 +00:00
reinoud
994f1fb3f6 Remove `const' attribute from writelabel prototype and function to make it
compile again on Alpha.
2001-12-13 13:52:13 +00:00
junyoung
a477ade7f9 Add myself. 2001-12-13 08:53:54 +00:00
junyoung
9dbc5fd199 ANSIfication & KNF fixes. 2001-12-13 08:38:35 +00:00
junyoung
f075aa60ac ANSIfication & cosmetic changes. 2001-12-13 08:35:38 +00:00
junyoung
9ff2a7a76d ANSIfy. 2001-12-13 08:34:55 +00:00
junyoung
d5decae4e0 ANSIfication & cosmetic changes. 2001-12-13 08:31:39 +00:00
lukem
c00b68cf31 clamp bsize to MAXBSIZE 2001-12-13 06:31:31 +00:00
lukem
b38676bc97 constrain bsize and fsize to MAXBSIZE 2001-12-13 06:29:15 +00:00
chs
2dfd15933e change the reference-counting of PT pages to start from zero instead of
one, so that we don't mess up the global count of wired pages by having
the page's wire_count be non-zero when we free the page.
pointed out by Michael Hitch.
2001-12-13 04:39:50 +00:00
lukem
94ff981067 missed a couple of NOMAN= :( 2001-12-13 03:44:37 +00:00
tacha
cba701fed7 remove bogus printf. 2001-12-13 02:50:30 +00:00
augustss
0ba8bac8fe Fix some bugs. But the driver is still borken. 2001-12-13 02:16:21 +00:00
lukem
c10ff7575c YANOMAN= 2001-12-13 01:26:39 +00:00
augustss
d6bbabfb1b Some DIAGNOSTIC nonsense. 2001-12-13 00:33:58 +00:00
augustss
a97820e536 Don't use u_int since it requires sys/types.h 2001-12-13 00:33:36 +00:00
thorpej
4c49d5310f No need to explicitly pull in bsd.own.mk. 2001-12-13 00:31:39 +00:00
thorpej
2152080e67 No need to pull in bsd.own.mk explicitly. 2001-12-13 00:30:28 +00:00
thorpej
7a3fcb2adf Convert unaligned relocs to aligned relocs if they happen to be
aligned.  Corresponds to part of rev 1.21 of this file in the
master FSF sources.

Thanks to Michael Rauch <mrauch@netbsd.org> for fishing out the patch.
2001-12-13 00:21:57 +00:00