In the common patterns where '*' is followed by a regular character,
such as in the patterns '*.c' or '*.mk', search the next possible
matching position in a small loop, instead of repeatedly comparing the
first remaining pattern character to all special characters.
pass dmac->sc_dev instead of undefined self in dmac_start_xfer_offset().
remove unused chan/ch variables in dmac_program_arraychain().
initialize c to zero in dmac_start_xfer_offset() and add check that is bigger
than 0 before calling dma_cachectl() to fix potentially uninitialized error
(seems to be false positive though).
transfer). Make this method the default for all downloads.
Try to make sure the binary pkg installation (which runs in a chroot
in the already installed system) can make use of SSL verification.
This does NOT fix the missing SSL verification in most install media
even if using https (due to not fully populated /etc/openssl/certs).
over its usage in ka780_memerr() and making it static. Also return type is
changed to void and removed unnecessary break at the end of the method.
Finally fixed struct memlogtab initialization by adding missing braces around
each member in the array.
The code builds, but I am not sure weather it was fully finished.
code build without HAVECACHE/DIAGNOSTIC options, as well as some cleanup:
flags in pv_link is used for HAVECACHE only, declare/define it in the block.
flush_by_page declaration can omit ifdef when only conditional body is guarded.
segva is used only in DIAGNOSTIC/HAVECACHE in pmap_protect_mmu.
combine consecutive DIAGNOSTIC/HAVECACHE blocks were possible.
No functional changes intended.
Add a table of contents. Group the existing tests into sections. Fix
the pattern of the test for the malformed ':M[\' modifier, now in line
283.
Note that the tests for the pattern characters '*?\' are missing.
As done for OEA. Note that kva over 3GiB is reserved.
Provide PMAP_MAP_POOLPAGE for OEA64_BRIDGE at the same time, by
which direct-mapped memory is utilized in order to work around
starvation of 512MiB kernel virtual space.
PR kern/57621
(1) Drop __aligned(32) from struct pvo_entry; otherwise,
sizeof(struct pvo_entry) is round-up'ed to a multiple of 32.
(2) Do not set sizeof(struct pvo_entry) to `align` argument for
pool_init(9); it must be power of 2.
(3) Align pvo_entry to 32-byte boundary only if reasonably possible,
i.e., OEA without DIAGNOSTIC (--> POOL_REDZONE) for now.
Part of PR kern/57621
Page table for oea is something like L2 TLB on memory; kernel and
processes share its entries, and process entries can be spilled out.
As done for MMU based on software-managed TLB, we need to restore
such entries even in the interrupt context.
Note that pmap_pte_spill() require no resouce to restore entries.
Still-not-implemented pmap_ste_spill() for OEA64 should also.
Part of PR kern/57621