kolibrios/kernel
Ivan Baravy 59315b183d [kernel] Fix reading from empty board buffer (sf63.2)
Syscall 63.2, reading from the board buffer, was overwriting registers
edx and ebp when the buffer was empty. Now it sets eax and ebx according
to the kernel API.

Because of this ancient bug BOARD checks the status of sf63.2 syscall
this way:
        mcall   63, 2
        cmp     ebx, 1
        jne     no_data
        ; when the buffer is empty, ebx is untouched, i.e. still 2, haha
        ; edx and ebp are destroyed, the code is lucky not to use them

By the way, the bug was found using umka tool.

git-svn-id: svn://kolibrios.org@9897 a494cfbc-eb01-0410-851d-a64ba20cac60
2023-01-30 03:33:03 +00:00
..
branches kolibri-ahci: added atapi disks registration, small refactoring & fixes. TODOFIX: identifying sector count of atapi disks gives always the same value. why? 2021-12-12 19:54:50 +00:00
tags
trunk [kernel] Fix reading from empty board buffer (sf63.2) 2023-01-30 03:33:03 +00:00