maxv
9c4befc9b2
Update kern.ldscript.4MB. It is the same as kern.ldscript, but with a large
...
page alignment before rodata.
2016-05-16 07:52:31 +00:00
chs
6ee802c24a
define ALTENTRY(), needed by dtrace.
2016-05-15 15:26:04 +00:00
maxv
9aca421dba
Explicitly mention MP_TRAMPOLINE in these comments, so that NXR links them.
2016-05-15 10:35:54 +00:00
maxv
4c1aaf9dc6
Split the PRELOADED_MODULES+BOOTSTRAP_TABLES chunk into two separate
...
chunks mapped independently with RWX and RW, on both amd64 and i386.
This way the BOOTSTRAP TABLES are non-executable.
2016-05-15 07:17:53 +00:00
maxv
0d0621d260
Reduce the diff between amd64 and i386. We invert two instructions on
...
amd64, but it makes no difference since PDE_SIZE = 8.
2016-05-15 07:01:36 +00:00
maxv
8f728b8ede
Actually, put the NOX identification above. Old CPUs do not support the
...
cpuid instruction.
2016-05-14 09:51:56 +00:00
maxv
f63de3d1a3
Map rodata and data+bss independently, and give them R and RW with
...
fillkpt_nox. The code is exactly the same as amd64's.
2016-05-14 08:49:16 +00:00
maxv
e39b2c82ed
Define fillkpt_nox on i386, same as amd64.
...
But there is a difference in the way it is done here. If PAE is not enabled,
PDE_SIZE = 4, so there is no NOX bit set. If PAE is enabled, PDE_SIZE = 8,
so the NOX bit is set.
This works exactly as intended, since NOX does not exist in the non-PAE
case.
2016-05-14 08:39:41 +00:00
maxv
9d6cfafacd
Fix the secondary CPUs bug in i386. Same as amd64.
2016-05-14 08:34:00 +00:00
maxv
3b5965adb8
Align the segments on i386. We're going to map them independently.
2016-05-14 08:19:42 +00:00
maxv
60dc596ebe
Define killkpt, and don't use _RELOC. Same as amd64.
2016-05-14 06:49:34 +00:00
maxv
b9750d0de9
Bring some amd64 swag. No functional changes.
2016-05-13 14:03:00 +00:00
maxv
d32d8095a7
KNF a little, use C-style comments, and remove susword/fusword. No
...
functional changes.
2016-05-13 13:24:01 +00:00
maxv
7c62ff1587
Define __kernel_end.
2016-05-13 10:18:01 +00:00
maxv
f1985d170d
Xen therefore uses x86/db_memrw.c, as I suspected. Define __rodata_start
...
in the Xen ld scripts, so that it can compile. We put the __rodata_start
definition right before __data_start, for it to appear as dead code, since
the rodata segment is not yet mapped independently on Xen.
2016-05-13 05:45:13 +00:00
maxv
f4ea937e9d
KNF, and reduce the diff between amd64 and i386.
2016-05-12 09:40:23 +00:00
maxv
a23ebbfe56
KNF the Xen ld scripts on x86.
2016-05-12 06:57:55 +00:00
maxv
09b37bb062
Split the {text+rodata} chunk in two separate chunks on x86. The
...
rodata segment now loses the large page optimization, gets mapped inside
the data segment, and therefore becomes RWX. It may break the build on
Xen.
2016-05-12 06:45:16 +00:00
maxv
9acd6328a2
Switch to C-style comments, and reduce a little the diff between i386 and
...
amd64. No functional changes.
2016-05-11 17:48:05 +00:00
riastradh
fc1fa2bfde
Enable nouveau in i386/ALL. Omit incorrect option NV_DEBUG.
...
NV_DEBUG does not appear except as a macro function in nouveau, which
is broken by defining it on the command line.
From coypu.
2016-05-11 02:09:10 +00:00
skrll
4e8e66439e
Merge nick-nhusb
...
- API / infrastructure changes to support memory management changes.
- Memory management improvements and bug fixes.
- HCDs should now be MP safe
- conversion to KERNHIST based debug
- FS/LS isoc support on ehci(4).
- conversion to kmem(9)
- Some USB 3 support - mostly from Takahiro HAYASHI (t-hash).
- interrupt transfers now get proper DMA operations
- general bug fixes
- kern/48308
- uhub status notification improvements
- umass(4) probe fix (applied to HEAD already)
- ohci(4) short transfer fix
2016-04-23 10:15:27 +00:00
riastradh
e0a6926ea4
Enable nouveau by default again in x86 GENERIC.
2016-04-13 15:26:27 +00:00
mrg
0fd71d0df7
add a normal kernel that builds with PAE enabled. this is not yet
...
hooked into the normal build, but this is a working configuration
and on my 16GB test system, works fine.
2016-03-27 05:14:14 +00:00
mrg
65f5251eae
remove a bunch of "@echo done" from the tail of rules. these messages
...
were vaguely useful back when we didn't run make -j, but now you end
up with a single line "done" every so often, with no idea what it is
for. very few other targets claim they're done so just remove these.
2016-03-22 08:25:22 +00:00
gdt
af798e7b27
Disable uscanner in all kernel configs
...
As discussed on current-users@, SANE uses ugen via libusb and not
uscanner, so users are not well served by having uscanner. Consensus
is that addressing how to adjust permissions for scanners should not
block restoring basic functionionality.
(Compile-tested only, but there are multiple reports of this being the
right approach.)
2016-03-19 23:21:02 +00:00
riastradh
566ef8a23e
Revert to disabling nouveau by default in x86 GENERIC.
...
Haven't had time to debug the issues that seem to affect pretty much
everyone. Maybe soon!
2016-03-05 17:08:48 +00:00
tls
1b1730d0f9
Add cpu_rng, a framework for simple on-CPU random number generators.
2016-02-27 00:09:44 +00:00
chs
2f02870f3b
zero the i2c_attach_args structure before filling it in.
...
fixes occasional crashes in iic_attach().
2016-02-14 19:54:19 +00:00
riastradh
091e6ea2fb
Add nouveau to x86 GENERIC kernels.
2016-02-13 19:53:23 +00:00
martin
be2b75ed4e
New rawrite32 version out (small bugfixes)
2016-02-03 15:06:25 +00:00
christos
ba3275f8a0
PR/50748: David Binderman: check bounds before dereference
2016-02-03 05:27:53 +00:00
christos
386b5e25f6
one more.
2016-02-02 20:16:59 +00:00
christos
f09f85eee3
more relocations.
2016-02-02 20:16:08 +00:00
christos
512ffbb6fc
expose __vaddr_t for segments.h since it is a userland api.
2016-01-24 18:21:50 +00:00
christos
d84c286204
expose the kernel types for standalone code.
2016-01-23 22:31:19 +00:00
christos
d77af8a6d9
We'll define the kernel types for standalone code.
2016-01-23 22:29:29 +00:00
christos
ffeb8dbf4e
Define _KERNTYPES for things that need it.
2016-01-23 21:22:45 +00:00
christos
4d497c90e6
Hide {p,v}{addr,size}_t and register_t (and a couple more types that
...
are machine-specific) from userland unless _KERNEL/_KMEMUSER and a
new _KERNTYPES variables is defined. The _KERNTYPES should be fixed
for many subsystems that should not be using it (rump)...
2016-01-23 21:22:13 +00:00
riz
9ed3ff4a08
Enable KDTRACE_HOOKS on i386 and amd64 GENERIC.
2016-01-22 21:56:56 +00:00
christos
f99428016a
PR/50668: David Binderman: Don't compare unsigned to -1
2016-01-17 14:57:18 +00:00
ryo
c2acaf5fa5
__mcount_lock is moved to MI from MD.
...
because it is needed for all MULTIPROCESSOR arch, but it is exists only in i386 and amd64.
ok christos@, on tech-kern@
2016-01-10 09:04:32 +00:00
msaitoh
0c27f9bb62
Add ismt(4).
2016-01-05 11:33:18 +00:00
christos
8b50aec9fa
revert, this has to do with the bootloader protocol version and should
...
stay the same until there is a reason for it to change.
2016-01-04 18:17:31 +00:00
christos
c4c05f8e97
change 60 to 70 which is the current release. Noticed by Rares Aioanei.
2016-01-03 20:59:47 +00:00
maxv
38eb13bf9e
Extend SMEP support to i386 (does not require PAE).
2015-12-16 18:54:03 +00:00
christos
035ebb230e
one default is better than two
2015-12-13 21:03:31 +00:00
christos
317883ba5f
better than returning random errors.
2015-12-13 19:51:53 +00:00
mlelstv
75a9f56358
PR 50516 bad switch statement.
...
Adding some comments.
2015-12-11 08:04:20 +00:00
maxv
5f9c9faaae
KNF
2015-11-28 18:08:40 +00:00
mrg
9884c86a80
make sure MSGBUFSIZE can't expand strangely by using parens.
2015-10-27 22:28:56 +00:00