BSOD kernel thread priority floor violation

Lachanadan

New Member
Messages
2
Hi,

First off thanks for the time you guys would put into this.

I got a BSOD which was named Kernel Thread Priority Floor Violation on the 2nd of June at around 18:20 local time. The BSOD happened while I was playing a flash game on a monitor and my 2.5 Y.O. boy was watching some cartoons (flash player again) on youtube both using google chrome browser.

Although I have browsed the forums for quite some time now, this is my first time actually posting anything (as I was unable to find anything on the BSOD at hand) so feel free to ask for any other information or clarification.

The required files (i hope all of them) are attached.

Regards,

Lach...
 

My Computer

System One

  • OS
    Windows 8.1
Hi Lachanadan and welcome to the forums ^_^,

This bugcheck code has been introduced with Windows 8.1 and this is the first time I am seeing it. But, I will try my best to help you solve your problem. The analysis of your dump file has been provided below for informative purposes :-

6: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************


KERNEL_THREAD_PRIORITY_FLOOR_VIOLATION (157)
An illegal operation was attempted on the priority floor of a particular
thread.
Arguments:
Arg1: ffffe000d6aa2880, The address of the thread
Arg2: 0000000000000009, The target priority value
Arg3: 0000000000000002, The priority counter for the target priority underflowed
Arg4: 0000000000000000, Reserved


Debugging Details:
------------------




CUSTOMER_CRASH_COUNT: 1


DEFAULT_BUCKET_ID: WIN8_DRIVER_FAULT


BUGCHECK_STR: 0x157


PROCESS_NAME: chrome.exe


CURRENT_IRQL: 2


ANALYSIS_VERSION: 6.3.9600.16384 (debuggers(dbg).130821-1623) amd64fre


LAST_CONTROL_TRANSFER: from fffff801f25f66cd to fffff801f25dbfa0


STACK_TEXT:
ffffd000`21bd3858 fffff801`f25f66cd : 00000000`00000157 ffffe000`d6aa2880 00000000`00000009 00000000`00000002 : nt!KeBugCheckEx
ffffd000`21bd3860 fffff801`f24c4cb5 : 00000000`00000100 ffffd000`21bd3980 ffffe000`d6aa2880 00000000`00000002 : nt! ?? ::FNODOBFM::`string'+0xa21d
ffffd000`21bd38a0 fffff801`f24ecdaa : ffffe000`d6aa2ba0 00000000`00000000 00000000`00000000 ffffd000`21bd3980 : nt!KiAbThreadUnboostCpuPriority+0x39
ffffd000`21bd38d0 fffff801`f24eca45 : ffffd000`21c47943 00000000`00000000 ffffe000`d6a9e000 fffff801`00000000 : nt!KeAbEntryFree+0x66
ffffd000`21bd3900 fffff801`f24efa09 : ffffe000`0000004f ffffe000`d6aa2880 ffffe000`d6a39758 ffffd000`00000040 : nt!ExfAcquirePushLockExclusiveEx+0x1b5
ffffd000`21bd39c0 fffff801`f25e622f : 00000000`00000001 00000000`0341fdac 00000000`00000001 ffffd000`21bd3b00 : nt!MmAccessFault+0x7e9
ffffd000`21bd3b00 00000000`5fa356a7 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiPageFault+0x12f
00000000`0341f744 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : 0x5fa356a7




STACK_COMMAND: kb


FOLLOWUP_IP:
nt! ?? ::FNODOBFM::`string'+a21d
fffff801`f25f66cd cc int 3


SYMBOL_STACK_INDEX: 1


SYMBOL_NAME: nt! ?? ::FNODOBFM::`string'+a21d


FOLLOWUP_NAME: MachineOwner


MODULE_NAME: nt


IMAGE_NAME: ntkrnlmp.exe


DEBUG_FLR_IMAGE_TIMESTAMP: 53388e13


IMAGE_VERSION: 6.3.9600.17085


BUCKET_ID_FUNC_OFFSET: a21d


FAILURE_BUCKET_ID: 0x157_nt!_??_::FNODOBFM::_string_


BUCKET_ID: 0x157_nt!_??_::FNODOBFM::_string_


ANALYSIS_SOURCE: KM


FAILURE_ID_HASH_STRING: km:0x157_nt!_??_::fnodobfm::_string_


FAILURE_ID_HASH: {68a86235-3c52-e42e-e778-31dc90dd5954}


Followup: MachineOwner

According to your driver list, the following drivers are outdated and must be updated ASAP :-
amdkmafd.sys Sun Sep 23 06:34:42 2012 (505E602A)
AsIO.sys Wed Aug 22 15:24:47 2012

Please remove the Asus PCProbe Utility as in many cases ASUS software is found buggy. So please remove it ASAP and let me know if the problem still persists. In the mean time, I ll also ask around for this bugcheck ^_^
 

My Computer

System One

  • OS
    Windows 8.1 Industry Pro B-)
    Computer type
    Laptop
    System Manufacturer/Model
    Toshiba
    CPU
    Core I5 2430M @ 2.4GHz
    Memory
    8 GB DDR3 @ 1600MHz Dual Channel ^_^
    Graphics Card(s)
    Intel HD 3000 B-)
    Screen Resolution
    1366x768
    Hard Drives
    Toshiba 500 GB
    Browser
    Google Chrome
    Antivirus
    Windows Defender & Common Sense!
Hello Elvis and thank you for your time.

From what I have gathered (i don't think i am as tech savvy as you are, but don't worry i am not hopeless either) the advice you have given is twofold.

First, you told me to update the Amd audio bus lower filter. I followed your link to carrona org which in turn led me to the AMD support site. However I cannot find anything related to the filename amdkmafd.sys or audio bus lower filter there.

I have tried looking into anything that looks like related in the device manager but have failed to do so as well. I also searched my system for a fie named amdkmafd.sys and found it in C:windows/system32/drivers however at this point i am not sure if i should replace it with anything i find on google nor im not sure if i should trust third party sites such as:

amdkmafd.inf - Windows 8.1: AMD Audio Bus Lower Filter v13.9 / 13.152.0.0000 (64bit)
amdkmafd.sys Download Free - Sys File Download
amdkmafd.sys free download - Sysfiles-download.com

(see how suspiciously the two on the bottom look like the same website while being two different websites)


Second, I think you advised me to remove the Asus PCProbe Utility from my computer and not update AsIO.sys (as it will be uninstalled)

I checked add/remove programs but couldnt find anything to uninstall that looks like it. After some searching around my computer i found AsIO32.sys and AsIO64.sys as well as AsIoUnins.exe in a folder with the adress of:

C:\Windows\System32\DriverStore\FileRepository\asmbsw.inf_amd64_5f6fc21717202d29\Io

I tried running the AsIOunins.exe as administrator a couple of times but i was unable to get any response whatsoever from my computer and everthing looks unaltered. so i guess i failed at this one as well.

I don't know if i have been as clear and/or informative as you would have liked so feel free to ask again for anything.

Kind Regars,

Lach...
 

My Computer

System One

  • OS
    Windows 8.1
Hi Lach ^_^,

Sorry for the delayed response as I was out of town.

I asked around and a friend of mine replied with this. You can read it in the quotes :-
nt!MmAccessFault+0x7e9 calls into nt!ExfAcquirePushLockExclusiveEx+0x1b5. With this said, we likely have a deadlock occurring, but why? We can see a nt!KiAbThreadUnboostCpuPriority+0x39 call, which we'll now discuss.

Every thread has has what is called a dynamic priority. This is essentially the priority the scheduler uses to determine which thread to execute. Initially, a thread's dynamic priority is the same as its base priority. The system can boost and lower the dynamic priority, to ensure that it is responsive and that no threads are starved for processor time. The system does not boost the priority of threads with a base priority level between 16 and 31. Only threads with a base priority between 0 and 15 receive dynamic priority boosts.

Some drivers create their own driver and/or device-dedicated system threads and set their thread's base priority to the lowest real-time priority value. Other highest-level drivers, particularly file system drivers, use system worker threads with a base priority that is usually set to the highest variable priority value. The kernel schedules a thread with the lowest real-time priority to run ahead of every thread with a variable priority, which includes almost every user-mode thread in the system.

Way more information here if interested - Scheduling Priorities (Windows)

What was the illegal instruction exactly? Not entirely sure, really. Not much debugging and/or curiousity digging to be done with a minidump. If I had to take a guess, I would say we had an issue with priority inversion, in which two entirely different threads were scheduled. The way to properly keep things running smooth if this occurs is the low priority threads will run long enough to exit the critical section, and the high-priority thread can enter the critical section. If the low-priority thread does not get enough CPU time to exit the critical section the first time, it will get another chance during the next round of scheduling.

Either that, or the driver that is causing the suspected lock is buggy.


Perusing the loaded modules list, here are the drivers I suspect may be causing a problem:

1. Kaspersky 100% more than anything. I have seen many issues with Kaspersky and Windows 8/8.1.

2. AsIO.sys (Asus PC Probe, other Asus bloatware).

Thanks Patrick!



I would say that uninstall any ASUS bloatware that you encounter in the Add/Remove. After that, please remove your Kaspersky Antivirus suite of software using this LINK.

Rename ASiO.sys and ASio64.sys so that they could serve as backups in case something goes wrong.

Till now, don't touch that AMD Audio Filter driver and let's see if this fixes this issue or not.

Please let me know if your issue was solved and if problem still exists, I would be glad to help you out ^_^
 

My Computer

System One

  • OS
    Windows 8.1 Industry Pro B-)
    Computer type
    Laptop
    System Manufacturer/Model
    Toshiba
    CPU
    Core I5 2430M @ 2.4GHz
    Memory
    8 GB DDR3 @ 1600MHz Dual Channel ^_^
    Graphics Card(s)
    Intel HD 3000 B-)
    Screen Resolution
    1366x768
    Hard Drives
    Toshiba 500 GB
    Browser
    Google Chrome
    Antivirus
    Windows Defender & Common Sense!
Back
Top