#
376bcb54 |
| 30-Jul-2022 |
riastradh <riastradh@NetBSD.org> |
x86: Eliminate mfence hotpatch for membar_sync.
The more-compatible LOCK ADD $0,-N(%rsp) turns out to be cheaper than MFENCE anyway. Let's save some space and maintenance and rip out the hotpatch
x86: Eliminate mfence hotpatch for membar_sync.
The more-compatible LOCK ADD $0,-N(%rsp) turns out to be cheaper than MFENCE anyway. Let's save some space and maintenance and rip out the hotpatching for it.
show more ...
|
#
e0c914a7 |
| 09-Apr-2022 |
riastradh <riastradh@NetBSD.org> |
x86: Every load is a load-acquire, so membar_consumer is a noop.
lfence is only needed for MD logic, such as operations on I/O memory rather than normal cacheable memory, or special instructions lik
x86: Every load is a load-acquire, so membar_consumer is a noop.
lfence is only needed for MD logic, such as operations on I/O memory rather than normal cacheable memory, or special instructions like RDTSC -- never for MI synchronization between threads/CPUs. No need for hot-patching to do lfence here.
(The x86_lfence function might reasonably be patched on i386 to do lfence for MD logic, but it isn't now and this doesn't change that.)
show more ...
|
#
fb30a66a |
| 01-May-2020 |
maxv <maxv@NetBSD.org> |
Switch the rest of i386 to the x86_hotpatch mechanism.
|
#
712bef21 |
| 01-May-2020 |
maxv <maxv@NetBSD.org> |
Use the hotpatch framework when patching _atomic_cas_64.
|
#
129e4c2b |
| 26-Apr-2020 |
maxv <maxv@NetBSD.org> |
Use the hotpatch framework for LFENCE/MFENCE.
|
#
c24c993f |
| 25-Apr-2020 |
bouyer <bouyer@NetBSD.org> |
Merge the bouyer-xenpvh branch, bringing in Xen PV drivers support under HVM guests in GENERIC. Xen support can be disabled at runtime with boot -c disable hypervisor
|
#
560337f7 |
| 12-Oct-2019 |
maxv <maxv@NetBSD.org> |
Rewrite the FPU code on x86. This greatly simplifies the logic and removes the dependency on IPL_HIGH. NVMM is updated accordingly. Posted on port-amd64 a week ago.
Bump the kernel version to 9.99.1
Rewrite the FPU code on x86. This greatly simplifies the logic and removes the dependency on IPL_HIGH. NVMM is updated accordingly. Posted on port-amd64 a week ago.
Bump the kernel version to 9.99.16.
show more ...
|
#
1e3d30b0 |
| 14-Feb-2019 |
cherry <cherry@NetBSD.org> |
Welcome XENPVHVM mode.
It is UP only, has xbd(4) and xennet(4) as PV drivers.
The console is com0 at isa and the native portion is very rudimentary AT architecture, so is probably suboptimal to run
Welcome XENPVHVM mode.
It is UP only, has xbd(4) and xennet(4) as PV drivers.
The console is com0 at isa and the native portion is very rudimentary AT architecture, so is probably suboptimal to run without PV support.
show more ...
|
#
427af037 |
| 11-Feb-2019 |
cherry <cherry@NetBSD.org> |
We reorganise definitions for XEN source support as follows:
XEN - common sources required for baseline XEN support. XENPV - sources required for support of XEN in PV mode. XENPVHVM - sources requir
We reorganise definitions for XEN source support as follows:
XEN - common sources required for baseline XEN support. XENPV - sources required for support of XEN in PV mode. XENPVHVM - sources required for support for XEN in HVM mode. XENPVH - sources required for support for XEN in PVH mode.
show more ...
|
#
d7e7c07f |
| 17-Jun-2018 |
maxv <maxv@NetBSD.org> |
i586 and below don't have this 3-byte nop, so use three 1-byte nops, reported by Nathanial Sloss
|
#
356342da |
| 27-Jan-2018 |
maxv <maxv@NetBSD.org> |
Declare INTR_RECURSE_HWFRAME, same as amd64.
|
#
655db1e2 |
| 27-Jan-2018 |
maxv <maxv@NetBSD.org> |
Add SMAP support for i386.
|
#
21a8fbaf |
| 27-Jan-2018 |
maxv <maxv@NetBSD.org> |
Remove DO_DEFERRED_SWITCH and DO_DEFERRED_SWITCH_RETRY, unused.
|
#
541cbcfa |
| 27-Jan-2018 |
maxv <maxv@NetBSD.org> |
Use .pushsection (like amd64), and align INTRENTRY.
|
#
6fcf3f0a |
| 07-Jan-2018 |
maxv <maxv@NetBSD.org> |
Switch x86_retpatch[] -> HOTPATCH().
|
#
9ef803fe |
| 07-Jan-2018 |
maxv <maxv@NetBSD.org> |
Switch x86_lockpatch[] -> HOTPATCH().
|
#
99d8611c |
| 07-Jan-2018 |
maxv <maxv@NetBSD.org> |
Implement a real hotpatch feature.
Define a HOTPATCH() macro, that puts a label and additional information in the new .rodata.hotpatch kernel section. In patch.c, scan the section and patch what nee
Implement a real hotpatch feature.
Define a HOTPATCH() macro, that puts a label and additional information in the new .rodata.hotpatch kernel section. In patch.c, scan the section and patch what needs to be. Now it is possible to hotpatch the content of a macro.
SMAP is switched to use this new system; this saves a call+ret in each kernel entry/exit point.
Many other operating systems do the same.
show more ...
|
#
d283fae6 |
| 17-Sep-2017 |
maxv <maxv@NetBSD.org> |
Declare INTRFASTEXIT as a function, like amd64; will be expanded soon.
|
#
157166fc |
| 17-Sep-2017 |
maxv <maxv@NetBSD.org> |
Remove TRAPLOG from i386. Nowadays there are better instrumentation tools, in both software and hardware.
|
#
f781a0d6 |
| 14-Jun-2017 |
maxv <maxv@NetBSD.org> |
style
|
#
c81b3a79 |
| 26-Jul-2011 |
yamt <yamt@NetBSD.org> |
comment
|
#
5aa0bc76 |
| 07-Jul-2008 |
gmcgarry <gmcgarry@NetBSD.org> |
Selector registers are 16-bit and binutils 2.18 insists that only 16-bit accesses are permitted on them. Therefore, change movl to movw. No change to machine code generated.
|
#
20161b72 |
| 21-Apr-2008 |
cegger <cegger@NetBSD.org> |
Access Xen's vcpu info structure per-CPU. Tested on i386 and amd64 (both dom0 and domU) by me. Xen2 tested (both dom0 and domU) by bouyer. OK bouyer
|
#
6c336cd7 |
| 29-Feb-2008 |
yamt <yamt@NetBSD.org> |
don't bother to check curlwp==NULL.
|
#
26315d04 |
| 11-Jan-2008 |
bouyer <bouyer@NetBSD.org> |
Merge the bouyer-xeni386 branch to head, at tag bouyer-xeni386-merge1 (the branch is still active and will see i386PAE support developement). Sumary of changes: - switch xeni386 to the x86/x86/pmap.c
Merge the bouyer-xeni386 branch to head, at tag bouyer-xeni386-merge1 (the branch is still active and will see i386PAE support developement). Sumary of changes: - switch xeni386 to the x86/x86/pmap.c, and the xen/x86/x86_xpmap.c pmap bootstrap. - merge back most of xen/i386/ to i386/i386 - change the build to reduce diffs between i386 and amd64 in file locations - remove include files that were identical to the i386/amd64 counterparts, the build will find them via the xen-ma/machine link.
show more ...
|