|View Issue Details [ Jump to Notes ] ||[ Issue History ] [ Print ] |
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000139||Kolibri OS (trunk)||[All Projects] Kernel||public||2021-06-20 13:59||2021-06-20 14:00|
|Assigned To|| |
|Platform||Any x86 / Любой x86||OS||KolibriOS||OS Version||SVN autobuilds|
|Product Version||SVN build / автосборка SVN|| |
|Target Version||0.9.0.0||Fixed in Version|| |
|Summary||0000139: Can't access a partition that was locked by a crashed process|
|Description||Current FS code works like this: lock (a mutex guarding access to) a partition, read/write data, unlock the partition.|
When a thread crashes while reading/writing, the partition is left locked. Therefore other programs can't acquire the lock and access that partition anymore.
In theory, kernel could release acquired locks when threads crash. In practice, kernel has no idea what locks have been acquired by a given thread.
It is possilble to modify FS code to fill an array of acquired locks. In fact, this is very similar to an array of file descriptors.
So, resolution of this issue could be a side effect of file descriptors when they are implemented.
|Additional Information||https://board.kolibrios.org/viewtopic.php?f=31&t=3397&start=150#p76785 [^]|
|Tags||fasm, fs, kernel|
|SVN revision / ревизия SVN|
|Type of distribution / Тип дистрибутива||any / любой|