diff --git a/kernel/trunk/drivers/imports.inc b/kernel/trunk/drivers/imports.inc index 72d6ed3e50..df8a757b33 100644 --- a/kernel/trunk/drivers/imports.inc +++ b/kernel/trunk/drivers/imports.inc @@ -60,6 +60,7 @@ kernel_export \ CreateRingBuffer,\ \ GetPid,\ + CreateThread,\ CreateObject,\ DestroyObject,\ CreateEvent,\ diff --git a/kernel/trunk/drivers/usbstor.asm b/kernel/trunk/drivers/usbstor.asm index e72d1a8bae..93654a8fa3 100644 --- a/kernel/trunk/drivers/usbstor.asm +++ b/kernel/trunk/drivers/usbstor.asm @@ -1002,13 +1002,12 @@ proc inquiry_callback ; to allow the USB thread to continue working and handling those requests. ; 4. Thus, create a temporary kernel thread which would do it. mov edx, [esp+8] - push ebx ecx - movi eax, 51 + push ebx ecx esi edi movi ebx, 1 mov ecx, new_disk_thread ; edx = parameter - int 0x40 - pop ecx ebx + call CreateThread + pop edi esi ecx ebx cmp eax, -1 jnz .nothing ; on error, reverse step 3