Age | Commit message (Collapse) | Author |
|
|
|
remaining instances of them with appropriate copy(9) usage.
ok art@, tested on all arches unless my memory is non-ECC
|
|
properly; reported by dugsong@
|
|
|
|
OK deraadt@, millert@, and others.
|
|
set from <sys.mk>
|
|
|
|
|
|
Instead of allocating a static amount of memory for the data
structures via valloc() in allocsys(), allocate things dynamically
using pool(9) when possible and malloc(9) when not. The various
members of struct seminfo and struct shminfo are in kern.seminfo
and kern.shminfo respectively (not all members of kern.seminfo are
changable).
The data structures used still leave something to be desired but
things are not made worse in that respect by this commit.
|
|
(disabled for now, not production quality yet)
|
|
- from NetBSD
- ok deraadt, mickey
|
|
Use "__asm __volatile("":::"memory")" to completly avoid reordering.
|
|
|
|
altq is merged into pf and handled through pf.
|
|
|
|
|
|
attack protection scheme, into gcc.
This protection is enabled by default. It can be turned off by using the
-fno-stack-protector flag.
Code by Hiroaki Etoh (etoh at jp dot ibm dot com); work on openbsd-specific
integration by fgsch@, deraadt@ and myself; tests by fgsch@, naddy@ and
myself; beer drinking by myself.
Please note that system upgrades with this new code will require a new
libc and ld.so to be build and installed before the propolice-enabled
compiler can be installed.
|
|
Driver from Alexander Kabaev <kan.FreeBSD.org> and Ichiro FUKUHARA
<ichiro@ichiro.org>
|
|
|
|
|
|
|
|
miod@, millert@ ok
|
|
|
|
pr2962
|
|
|
|
(which I will leave for Dale since it needs special handling).
From NetBSD (and same as sparc64). espie@ OK
|
|
FreeBSD commit messages say:
Some BIOSs are using MTRR values that are only documented under NDA
to control the mapping of things like the ACPI and APM into memory.
The problem is that starting X changes these values, so if something
was using the bits of BIOS mapped into memory (say ACPI or APM),
then next time they access this memory the machine would hang.
This patch refuse to change MTRR values it doesn't understand,
unless a new "force" option is given. This means X doesn't change
them by accident but someone can override that if they really want
to.
PR: 28418
Tested by: Christopher Masto <chris at netmonger dot net>,
David Bushong <david at bushong dot net>,
Santos <casd at myrealbox dot com>
Make the MTRR code a bit more defensive - this should help people
trying to run X on some Athlon systems where the BIOS does odd things
(mines an ASUS A7A266, but it seems to also help on other systems).
Here's a description of the problem and my fix:
The problem with the old MTRR code is that it only expects
to find documented values in the bytes of MTRR registers.
To convert the MTRR byte into a FreeBSD "Memory Range Type"
(mrt) it uses the byte value and looks it up in an array.
If the value is not in range then the mrt value ends up
containing random junk.
This isn't an immediate problem. The mrt value is only used
later when rewriting the MTRR registers. When we finally
go to write a value back again, the function i686_mtrrtype()
searches for the junk value and returns -1 when it fails
to find it. This is converted to a byte (0xff) and written
back to the register, causing a GPF as 0xff is an illegal
value for a MTRR byte.
To work around this problem I've added a new mrt flag
MDF_UNKNOWN. We set this when we read a MTRR byte which
we do not understand. If we try to convert a MDF_UNKNOWN
back into a MTRR value, then the new function, i686_mrt2mtrr,
just returns the old value of the MTRR byte. This leaves
the memory range type unchanged.
I have seen one side effect of the fix, which is that ACPI calls
after X has been run seem to hang my machine. As running X would
previously panic the machine, this is still an improvement ;-)
PR: 28418, 25958
Tested by: jkh, Christopher Masto <chris at netmonger dot net>
|
|
|
|
|
|
Diff generated by Chris Kuethe.
|
|
pages into the queue already containing allocated pages.
breaks i386:setup_buffers() because of this.
|
|
|
|
|
|
|
|
overall.
|
|
|
|
resolved. sorry -- i've been warning people for some time that i would
start to take this stance.
|
|
multiple times by restricting matches based on device id and revision, keep
track of the bus numbers that were attached, and don't reattach them a
second time.
ok deraadt
|
|
|
|
|
|
are initialized. So we can't to PHYS_TO_VM_PAGE becuase there are no
vm_pages. Reintroduce the old pmap_zero_page renamed to pmap_zero_phys
that can zero pages without struct vm_page.
|
|
instead of the pa. Most callers already had it handy and those who didn't
only called it for managed pages and were outside time-critical code.
This will allow us to make those functions clean and fast on sparc and
sparc64 letting us to avoid unnecessary cache flushes.
deraadt@ miod@ drahn@ ok.
|
|
|
|
|
|
|
|
|
|
brad
|
|
This makes sure it will be regenerated if you run config(8) again.
|
|
|
|
ok niels, millert, art
|