Releases: KernelTestFramework/ktf
Version: v0.3.4
d233de1 acpi: register ISA bus only when supported
3868874 drivers/vga: map and register VGA console only when supported
3100556 drivers/kbd: skip initialization when i8042 not present
62c321a acpi: init FADT table and get boot flags
d7b4917 pmm: map frames_arrays' frames when final VA space is available
8ae3c54 pmm: dynamically allocate space for frame_t structures
321fc96 github: place codeql workflow file into correct directory
c46f6da Enable GitHub's CodeQL analysis
a6cd428 setup: add boot_flags with basic system configuration flags
83de1e2 boot, pmm: add compile-time configurable early address space
7bda5b3 pmm: find unused begining of each region during init
d695626 mm/regions: add in_free_region() helper function
4f652d3 mm/regions: add rmode and symbols sections to kernel sections
654a72e acpica: add PCI configuration space functionality to OSL
b8ecf70 acpica: add interrupt handling functionality to OSL
6118ed6 acpica: add task management and synchronization functions to OSL
6248ecd acpica: add time management and ACPI tables functions to OSL
b34eb30 acpica: add memory management and R/W IO functions
d4c4c06 acpi, acpica: add basic OS layer for ACPICA
269fb21 pmm: add locking to get/put_free_frames()
90eda4b traps: limit number of lines for stack dump
54a4658 pmm: refactor add_frame()
8bd037d pmm: fix reserve_frame() and add return_frame()
6865f84 pmm: add frame_flags_t type for frame flags
32805a8 pmm: add separate function to display_frames()
4dd627b pmm: check valid order parameter in put_free_frames()
9e73e79 pmm: rename put_frame() to put_free_frames()
1898c26 pmm: get_free_frames() returns frame_t pointer instead of mfn
5a6413f acpi: ignore disabled CPUs reported in MADT table
5e9d0c7 drivers/kbd: fix initialization flush loop
367eb55 pmm, regions: separate memory regions related code from PMM
0a73acb slab: use 2M page for global_meta_slab
49aec5d lib: make BUG() and BUG_ON() more verbose
Version: v0.3.3
b39dd6b third-party-license: adding third party licenses file
e245798 Makefile: add RM, LN and SYMLINK macros
d851b76 Makefile: add .config configuration file support
1302e45 pci: add pci config space read/write helpers
1c794c6 time: add get_timer_ticks() functions
46f250e time: add msleep() wrapper for miliseconds
810a4e3 x86 segment: add get_intr_handler() helper function
b46ca32 lib: add IO port read/write helper functions
9aa0060 Minor fixes and cleanups
595086a lib,string: add strcat() and strncat() functions
c7abaeb semaphore: add support for non-binary semaphores
ced3149 semaphore: add sem_value() helper function
633a57f sched: add task group functionality
ee2099f sched: remove 'this' parameter from task_func_t
Version: v0.3.2
054fb6b smp: map MP tables memory range (512KB - 1KB, 512KB)
ca39de6 pmm: remove "Low memory" mappings
4f6bd7e setup, vga: map VGA memory area
015fb7a setup, acpi: map BIOS areas where ACPI's RSDP table is located
4fb9742 acpi, pmm: add get_bios_ebda_addr() helper function
02ae26c setup, multiboot: add map_multiboot_areas() function
a05a6da mem: get frames with a specific condition
0575b4f mem: get page table entries for vaddr
5d29781 mem: extend vmap and kmap apis
ffef790 unit tests: fix format string
Version: v0.3.1
Version: v0.3.0
7d57dde rmode: add spin lock protecting long_to_real CS
2fa7b76 rmode: rename real mode assembly file
45a9f9f rmode: add prot_to_real() functionality
413b46e rmode: add real mode accessible TSS/TSS_DF structure
be32203 rmode: rework _long_to_real() implementation
50c3ebf rmode: add real mode accessible IDT structure
23645ea rmode: add real mode accessible GDT structure
0cb0d1c rmode: add {.text,.data,.bss}.rmode section for real mode
1caf010 rmode: add real mode related files ...
f669534 acpi: support hpet timer
86c7681 acpi: generic address structure (gas) packed
815c5d4 drivers: single timer interface
f2a73a3 CI: run KTF with unit tests enabled
0b8d6a3 Revert "cmdline: fix ptr comparison"
c5ddf18 lib,smp,setup: rewrite write_sp() as macro
2516a58 compiler,smp: add naked function attribute
75dd40c build: disable CET protection and omit frame pointer
43a915a lib: add write_cr0() and enable_sse() helper functions
fb39d33 smp,percpu: add for_each_percpu() function ...
62f8600 setup: make timers and keyboard initialization optional
844bd1b drivers/kbd: make keyboard initialization less verbose
9fe8320 test: move usermode call to KTF_UNIT_TEST
d7d8162 ci/launch-test.sh: run qemu in docker
0f83215 Docker: add qemu and qemu-system-x86 packages
97cc2b0 [libpfm integration]: Conditional compile of libpfm in KTF
0629e0b more libc definitions: adding more libc definitions
539cafe workflow: removing one-line-cr-bot
Version: v0.2.9
93293ca workflows: drop docker-build
c65e3f5 workflow: run ci scripts
a7028eb tools: add ci scripts
f237641 qemu: cpu host only with kvm
296462c cpus: use 2 per default
b5e17f4 README: add Getting Started
63d2318 docker: install kmod
e76b44c docker: forward user and group as run
0d6703c Makefile: use bash as shell
9ab8818 docker: not interactive
04845d6 Larger kernel binary: increase virtual address mappings at boot
8b5d5e9 acpi: checksum fix when xsdt has entries
Version: v0.2.8
4a4dea6 apic: no delivery status flag in ICR for X2APIC
000838f apic: use 200ms for calibrating APIC timer
d28ca10 pagetable fixes: zero cr3 page and lower 1MB kernel va range
6da3351 smp: use AP's percpu page instead of BSP's
27c19c2 apic: fix apic_icr_write()
eff6991 Fix clang error
ba8295f Fix DOCKER_MOUNT_OPTS for make style
7ed319b Allow overriding CC environment variable
23b96e7 Build completely freestanding
138dd3f compiler.h: Remove extra parentheses in call to memberof()
129a893 Makefile: allow verbose compilation
8c19835 GCC10 Compile Fix
30acb04 slab,apic: fixing a few bugs discovered by Coverity
Version: v0.2.7
7bba376 time: sleep uses apic_timer_sleep
d9731ff apic: add apic timer
5d27384 drivers: function to disable pit
a4e0c30 drivers: function to disable IRQ lines
679e6d3 drivers: use shift+PAGEUP/DOWN keys for VGA scrolling
2ff3af1 drivers: add up/down scrolling thru VGA screens
4a593b2 drivers: buffer multiple VGA screens
80c08fc atomic: basic atomic operations
288ee4f keyboard: interrupt routed through APIC
30a0584 keyboard: 8042 initialization
6e57181 drivers: basic keyboard support
21acd67 IRET asm macro
Version: v0.2.6
169b3e6 apic: add proper handling of SPIV register
1e1efee apic: add proper R/W interface for ICR register
938c5b5 smp: initialize APIC for each AP CPU
2aa73c9 apic: add apic_get_mode() function
62cde26 apic: reimplement entire APIC initialization
5b27e61 apic: add data types for XAPIC and X2APIC registers
83d4557 apic: add APIC structures and data types
19c8bfe workflow: address CVE-2020-15228
b7e9594 percpu: add PERCPU variables handling macros
0546d88 traps: move ret2kern_handler() to traps.c
1d4e794 setup: track BSP CPU ID via common interface
f379bfa asm: add save/restore regs macros for protected mode
3eb030e setup: define and use COM1_PORT and COM2_PORT by default
ce05cbe arch: move segment.c from boot/
ccdb3fb asm: add puts() macro to display strings
812b6d1 asm: use com_ports[] from putc macro
01fad33 cleanup: minor changes to ktf.h and pagetable.h
d159ef5 asm: add STRING() and STRING_LEN() macros
d209cf9 asm: move _PADDR() macro to asm-macros.h
c060bc7 asm: use proper page size alignment
97e7040 tools: Add workflow to run one-line-scan locally in docker
9c6df2e one-line-cr-bot: comment on all branches
f8ef09e one-line-cr-bot: do not fail after commenting
5eebe60 ioapic: move init_ioapic() to .text.init section
56a87eb cmdline: fix ptr comparison
1070709 one-line-cr-bot: check out PR code
be94f1e github: use pull_request_target
6793ce8 one-line-cr-bot: forward github_token secret
507ccb5 one-line-cr-bot: commenting PRs beta
b757afb workflow: fox Docker build workflow transient failures
9b390ef slab: Add kmalloc, kzalloc and kfree wrappers
7dcd88c drivers: PIT delivered with APIC
Version: v0.2.5
6cf4ea8 tests: add unittest for cpu frequency detection
7750cb3 cpuid: add function for detecting cpu frequency from the CPUID vendor string
af43300 lib: add ipow() function to calculate n power of m with integers
8f12e48 string: add function for detecting point punctation
82fb105 driver: programmable interval timer (PIT)
a36cbaa asm: macro for generic interrupt handler
893b9e9 uart: use IOAPIC's IRQ delivery for UART
038604b apic: add APIC EOI interface
9e77b77 ioapic: add IOAPIC device detection and handling
252be82 ioapic: add irq overrides detection and handling
173e815 ioapic: add system bus detection and handling
fb6283f acpi: add detection and dumping of MADT entry types
aff3c68 static-analysis: make BUG an infinite-loop
0509429 workflows: add one-line-cr-bot
a126040 acpi: use ACPI config by default
1eb46b8 setup, kernel: print CPU vendor string during boot
406915d cpu: add function to retrieve CPU vendor information
6ebc1ae lib: fix compile time warnings for unitialized variabled
6dfe46f traps: fix format string for dump_stack()
b735f80 pagetables: make dump_pagetables() more generic
c5b531a tests: Add unitttest for overflowing buffers
e40cb69 cmdline: Add length to commandline parameter