Subversion Repositories Kolibri OS

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
9045 25d 17h dunkaist /kernel/trunk/ kernel: Check for base+len overflow in is_region_userspace  
8962 35d 17h Boppan /kernel/trunk/ [asmxygen] Test doxygen generation on is_region_userspace() function  
8876 45d 18h rgimad /kernel/trunk/ [KERNEL] use constants instead of hardcoded values, other small fixes  
8869 47d 17h rgimad /kernel/trunk/ [KERNEL] #3 Preparing to merge legacy TASKDATA into APPDATA:
- get rid of CURRENT_TASK
- to APPDATA added new fields which will be used instead of TASKDATA's
- other small fixes
 
8867 48d 13h rgimad /kernel/trunk/ [KERNEL] #2 Preparing to merge legacy TASKDATA into APPDATA:
- rename event_mask in APPDATA to occured_events, cause TASKDATA already has event_mask and they have different meaning and usage
- small fixes
 
8866 48d 16h rgimad /kernel/trunk/ [KERNEL] Preparing to merge legacy TASKDATA into APPDATA:
- now doesnt use TASK_COUNT, now uses [thread_count] global instead of it
- update come copyrights
 
8858 49d 10h rgimad /kernel/trunk/ [KERNEL] Refactoring:
- optimize struct zeroing in sys32.inc
- set_app_param: delete setting completely unused APPDATA.event_filter (also make this field reserved)
- update some copyringhs
- other small fixes
 
8715 86d 12h Doczom /kernel/trunk/ fixed vulnerability (kernel memory rewrite) in sysfn 4  
8714 86d 12h Doczom /kernel/trunk/ fixed vulnerability (reading kernel memory from userspace) in sysfn 7, 15.5 and 65  
8713 86d 13h Doczom /kernel/trunk/ fixed vulnerability (reading kernel memory from userspace) in sysfn 47  
8675 103d 06h rgimad /kernel/trunk/ fixed vulnerability (reading kernel memory from userspace) in sysfn25  
8598 163d 16h rgimad /kernel/trunk/ fixed vulnerabilities in sysfn 18.11 and 36, now user applications cannot corrupt kernel memory via invalid buffer address  
8493 217d 13h rgimad /kernel/trunk/ is_region_userspace: removed extra condition which caused incorrect behavior of boxlib menu in hexedit and rtfread (cuz it uses address 0 i didnt know:D )  
8329 241d 07h rgimad /kernel/trunk/ is_region_userspace: refactoring and fix  
8270 248d 14h dunkaist /kernel/trunk/ kernel: Protect OS threads from terminating by sf18.2.  
8249 252d 12h rgimad /kernel/trunk/ fix return value from .addr_error in sysfn 26.2 , 9  
8248 252d 13h rgimad /kernel/trunk/ fix prior  
8247 252d 14h rgimad /kernel/trunk/ SysFn 18.13 security fix: now apps cannot destroy kernel memory via passing illegal address in ecx

Update docs on SysFn 18.13
 
8246 253d 08h rgimad /kernel/trunk/ SysFn 9 security fix: now apps cannot destroy kernel memory via passing illegal address in ebx

Update docs on SysFn 9
 
8216 259d 06h rgimad /kernel/trunk/ fix is_region_userspace (worked incorrectly for e.g 0xFFFFFFFF)  
8176 265d 04h dunkaist /kernel/trunk/ Fix r8139: delay_ms was 10x slower when using HPET.  
8160 269d 10h rgimad /kernel/trunk/ added is_region_userspace, fix sysfn 26.2 address security checks  
8158 270d 03h rgimad /kernel/trunk/ SysFn 26.2 security fix: now apps cannot destroy kernel memory via passing illegal address to this sysfn  
8139 271d 07h dunkaist /kernel/trunk/ kernel: Make delay_ms use HPET when available.

I got a laptop that has timer on channel 1 of PIT that doesn't tick.
 
8119 280d 07h dunkaist /kernel/trunk/ fix r8111: Map acpi_apic_base page before access.  
8111 286d 12h dunkaist /kernel/trunk/ kernel: Split acpi.inc and hpet.inc from init.inc.

Also, replace some hardcoded constants with macros.
 
8093 296d 00h dunkaist /kernel/trunk/ Assert sizeof.APPDATA=256, use it instead of hardcoded 256 value.  
8092 301d 23h dunkaist / uefi4kos: Read config and kernel files from the disk.

* Now there is a config file with boot options, example included.
* Config, kernel and ramdisk are loaded from the disk, not compiled in.
* DEVICES.DAT file is also optionally loaded from the disk.
* Also, move the loader to /kernel/trunk/bootloader/uefi4kos.
 
8091 303d 10h dunkaist / Add extended_primary_loader to autobuild.

* Build fat1x, fat32, cdfs, after_win loaders.
* Set use_lba=1 by default in fat32 loader.
* Build kolibri.raw: flash / hdd image.
* Add example config.ini file.
* Add an option (config file and screen) to not load ramdisk image.
* Add an option (config file only) to set /sys path.

Now you can boot without a ramdisk from a storage that is supported
by the kernel itself, i.e. without loadable drivers. Thus you can not
load the system without a ramdisk from SATA/AHCI and USB drives.
 
8089 305d 13h dunkaist /kernel/trunk/ kernel: don't use ramdisk if asked.

The blue screen is not aware of this option.
 
8087 305d 14h dunkaist /kernel/trunk/ Initialize APPDATA.{fd,bk}_ev fields for kernel threads.

This prevents crash in event.inc:RemoveEventTo because of
zero pointer dereference.
 
8086 305d 14h dunkaist /kernel/trunk/ Fix random boot issue: 'Failed to start first app'

Access to BOOT.dev variable was sometimes done with obsolete
offset from non-flat-kernel ages. If you are unlucky, the ramdisk
is not loaded and launcher app is not started.
 
7965 439d 13h hidnplayr /kernel/trunk/ Improved readability, no semantic changes.  
7733 519d 22h dunkaist /kernel/trunk/ kernel: Support more than one I/O APIC and 24 interrupts.  
7598 876d 05h dunkaist /kernel/trunk/ Fix compilation with extended_primary_loader.  
7276 1179d 02h dunkaist / Enable xsave/xrstor, attempt 2.  
7165 1261d 10h clevermouse /kernel/trunk/ fix FPU after r7124 for other CPU configurations  
7136 1323d 01h dunkaist /kernel/trunk/ Replace 'equ' macros with '=' ones.

They appear in symbols file.
They don't require parentheses.
They are shorter.
 
7132 1326d 00h dunkaist /kernel/trunk/ Update BOOT_DATA structure and use it instead of all the BOOT_* vars.  
7129 1326d 06h dunkaist /kernel/trunk/ Split bootbios.asm and kernel.asm.

* Move bios-related part of kernel.asm before B32 label to
bootbios.asm file;
* Move bx_from_load, boot_dev and kernel_restart_bootblock variables
to BOOT_* 0x9000 block;
* Update Tupfile.lua, Makefile, build.bat, build.sh accordingly;
* Now bios and uefi loaders can jump to very first byte of the kernel.