Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
vpi_offset is not currently large enough to store it.
|
|
|
|
vm_page_insert would not be able to store the offset.
|
|
|
|
|
|
|
|
It shall return a phys_addr_t, not vm_offset_t.
|
|
The map function is supposed to return physical addresses, thus phys_addr_t.
|
|
Message-Id: <20220215064133.68593-1-damien@zamaudio.com>
|
|
|
|
|
|
* Makefrag.am (EXTRA_DIST): Ship the x86_64/x86_64 and
x86_64/include/mach/x86_64 symlinks.
|
|
Otherwise we cannot use _DIST there and have them all taken into account.
As a consequence, we can drop duplicate _DIST between i386 and x86_64.
|
|
* x86_64/Makefrag.am (EXTRA_DIST): Ship the x86_64/x86_64 symlink.
|
|
We do not want to destroy the port and release the stack if thread is
NULL, i.e. we will fail.
|
|
* hardclock.c: convert to ANSI
* com.c: ditto
* lpr.c: ditto
* mem.c: ditto
Message-Id: <20220120170004.21722-1-etienne.brateau@gmail.com>
|
|
This follows mig's cf4bcc3f1435 ("Also add const qualifiers on server
side")
|
|
|
|
|
|
|
|
This will avoid forcing the caller to respect the definite string size.
|
|
This will avoid forcing the caller to respect the definite string size.
|
|
Like other defs header do, to allow e.g. including libports/ports.h
|
|
881fe9da8bd1 ("kern/thread.c: some minor style changes") introduced a
spurious comment.
|
|
* device/dev_name.c: Convert function prototypes from K&R to ANSI.
* device/subr.c: Convert function prototypes from K&R to ANSI.
Message-Id: <20211230112249.13682-2-etienne.brateau@gmail.com>
|
|
Greeting, I have changed some stuff in kern/thread.c which makes code
more readable for me. Maybe it will be usefull.
Message-Id: <20211230082643.8171-1-sys.arch.adam@gmail.com>
|
|
Notably trap/interrupt/syscall provide an exact SP value.
|
|
When we don't have a frame but PC points to a RET instruction (e.g. in the
userland system call assembly code), we can trivially unwind it.
|
|
User processes loaded in high memory are not visible to ddb through the
direct mapping. We can however read/write data through copy_from/to_phys.
|
|
We haven't seen the 2032 bug for a long time, f040677be3c0 ("kd: Do not
read the CMOS ram") probably fixed it at last.
|
|
Like Linux just did.
|
|
The segment code actually has vm_page entries for reserved pages, and
thus memmmap would reject mapping ACPI pages. Taking the information
from biosmem is much more precise, and indeed knows all hardware quirks
which can now be dropped from memmmap.
|
|
The memmmap method may reject some offsets (because it falls in non-device
ranges), so device_map_page has to notice this and report the error.
device_pager_data_request then has to notice as well and report.
|
|
For coherency with memory_object_create_proxy.
|
|
* vm/vm_map.c (vm_region_get_proxy):
- Return KERN_INVALID_ARGUMENT when the entry is a submap.
- Create a pager for the vm_object when the entry doesn't
have any yet, since it's an anonymous mapping.
Message-Id: <20211106081333.10366-3-jlledom@mailfence.com>
|
|
To get a proxy to the region a given address belongs to,
with protection and range limited to the region ones.
* include/mach/mach4.defs: vm_region_get_proxy RPC declaration
* vm/vm_map.c: vm_region_get_proxy implementation
Message-Id: <20211106081333.10366-2-jlledom@mailfence.com>
|
|
* vm/memory_object_proxy.c: Include kern/mach4.server.h.
(memory_object_create_proxy): Drop const qualifiers.
|
|
mach_port_t is for userland, kernel sees the translated ipc_port_t.
* include/mach/memory_object.h [MACH_KERNEL]: Include ipc/ipc_types.h
[MACH_KERNEL] (memory_object_t): Typedef to ipc_port_t instead of
mach_port_t.
(memory_object_array_t): Typedef to memory_object_t* instead of
mach_port_t*.
|
|
* device/dev_pager.c (device_pager_release): Drop unused function.
|
|
This is a no-op on i386.
* i386/include/mach/i386/vm_types.h (vm_size_array_t): New type.
* include/mach/mach4.defs (vm_size_array_t): New type.
(memory_object_create_proxy): Turn len parameter from vm_offset_array_t
to vm_size_array_t.
* vm/memory_object_proxy.c (memory_object_create_proxy): Turn len
parameter from const vm_offset_t * to const vm_size_t *.
|
|
xrstor and xrstors also take the xsave support bitmask.
We were otherwise not necessarily properly reloading all the FPU state,
thus leading to various subtle bugs, notably with glibc 2.33's
ifunc-optimized memcpy etc.
* i386/i386/fpu.h (xrstor, xrstors): Pass fp_xsave_support in EDX:EAX.
|
|
|
|
* x86_64/Makefrag.am (include_mach_i386dir): Rename to include_mach_x86_64dir, set to $(includedir)/mach/x86_64.
(include_mach_i386_HEADERS): Rename to include_mach_x86_64_HEADERS.
Reported-by: Andrea Monaco <andrea.monaco@autistici.org>
|
|
|
|
* linux/dev/drivers/block/ahci.c (ahci_probe_port): Avoid trying AHCI
identify when PxCMD.ATAPI is set.
|
|
* linux/dev/drivers/block/ahci.c (ahci_identify): Fix warning for the
identify timeout.
|