Windows error 0x0000004E, 78

Detailed Error Information

PFN_LIST_CORRUPT[1]

This is a Blue Screen of Death stop code. More information is available in the Knowledge Base article Bug Check 0x4E: PFN_LIST_CORRUPT.

HRESULT analysis[2]

This is probably not the correct interpretation of this error. The Win32 error above is more likely to indicate the actual problem.
FlagsSeveritySuccess

This code indicates success, rather than an error. This may not be the correct interpretation of this code, or possibly the program is handling errors incorrectly.

Reserved (R)false
OriginMicrosoft
NTSTATUSfalse
Reserved (X)false
FacilityCode0 (0x000)
NameFACILITY_NULL[2][3]
DescriptionThe default facility code.[2][3]
Error Code78 (0x004e)

Possible solutions

15

Xamarin app crashes on startup on device, works fine in simulator

ios
iphone
xamarin.ios
xamarin

Unbelievable... the solution was to install the Xcode command line tools.

This is (easily!) done from the Xcode->Preference->Downloads menu.

I have spent hours on this today, I hope this helps some other poor fellow.

2

Unusual behavior with shift-right bitwise operator

c
bit-manipulation

The issue here is that you're performing a right shift on a signed int.

From section 6.5.7 of the C standard:

5 The result of E1 >> E2 is E1 right-shifted E2 bit positions. If E1 has an unsigned type or if E1 has a signed type and a nonnegative value, the value of the result is the integral part of the quotient of E1 / 2E2. If E1 has a signed type and a negative value, the resulting value is implementation-defined.

The bold part is what's happening in your case. Each of your intermediate variables are of type int. Assuming your system uses 2's complement representations for negative numbers, any int value with the high bit set is interpreted as a negative value.

The most common implementation-defined behavior behavior you'll see (and this in fact what gcc and MSVC both do) in this case is that if the high bit is set on a signed value then a 1 will be shifted in on a right shift. This preserves the sign of the value and makes x >> n equivalent to x / 2n for all signed and unsigned values.

You can fix this by changing all of your intermediate variables to unsigned. That way, they match the type of *x and you won't get 1s pushed on to the left.

As for your method of flipping a bit, there is a much simpler way of doing so. You can instead use the ^ operator, which is the bitwise exclusive OR operator.

From section 6.5.11 of the C standard:

4 The result of the ^ operator is the bitwise exclusive OR (XOR) of the operands (that is, each bit in the result is set if and only if exactly one of the corresponding bits in the converted operands is set).

For example:

  0010      1000
^ 1100    ^ 1101
------    ------
  1110      0101

Note that you can use this to create a bitmask, then use that bitmask to flip the bits in the other operand.

So if you want to flip bit n, take the value 1, left shift it by n to move that bit to the desired location then XOR that value with your target value to flip that bit:

void flip_bit(unsigned * x, unsigned n) {
    return *x = *x ^ (1u << n);
}

You can also use the ^= operator in this case which XORs the right operand to the left and assigns the result to the left:

return *x ^= (1u << n);

Also note the u suffix on the integer constant. That causes the type of the constant to be unsigned which helps to avoid the implementation defined behavior you experienced.

answered on Stack Overflow May 16, 2017 by dbush
2

Toshiba Satellite L555D BSOD

bsod

I think the problem is in the driver rtl8192se.sys. Maybe it's non-compatible or crashed?

Try uninstalling that driver. If you don't see the same BSODs, then the problem was on it. Then do these steps:
1) Reinstall the driver, maybe the driver file was crashed. If you see the same BSODs, then probably it's not compatible with your hardware/OS.
2) Try updating your driver, if there are newer versions.
3) Contact with support, if nothing changed.

And let me bring some explanation for your error:
Caused By Driver : rtl8192se.sys - you must start from here.
It wanted to write to a memory address without required privileges(0x0000000A).
And your Parameter 3 is equal to 0x...01 which means that it tried to write to that memory.
And the system gave you BSOD to prevent it.


Info: rtl8192se.sys is the driver of Realtek RTL8192SE WLAN adapter.
So if you want to contact them, you must go there.

answered on Super User Oct 1, 2013 by Jet • edited Oct 1, 2013 by Jet
2

Unusual behavior with shift-right bitwise operator

c
bit-manipulation
#include <stdio.h>
int main ( void )
{
    unsigned int x;
    int y;
    x=0x80000000;
    x>>=30;
    printf("0x%08X\n",x);
    y=0x80000000;
    y>>=30;
    printf("0x%08X\n",y);
    return(0);
}

gcc on mint

0x00000002
0xFFFFFFFE

or what about this

#include <stdio.h>
int main ( void )
{
    unsigned int x;
    x=0x12345678;
    x^=1<<30;
    printf("0x%08X\n",x);
}

output

0x52345678
answered on Stack Overflow May 16, 2017 by old_timer • edited May 16, 2017 by old_timer
1

Blue Screen of Death - From the deep levels of hell

bsod

PAGE_FAULT_IN_NONPAGED_AREA, MEMORY_MANAGEMENT and PFN_LIST_CORRUPT are all most certainly RAM problems, new sticks can still be defective, it's actually quite common.

You can run MEMTEST, try removing all RAM sticks except 1 at a time to figure out which one (or more) is the culprit. Or simply request a replacement from the retailer.

answered on Super User Sep 28, 2015 by Jack
1

Xamarin app crashes on startup on device, works fine in simulator

ios
iphone
xamarin.ios
xamarin

I discovered my problem was actually something else. This will happen if your app 'takes too long to start'. I was kind of aware of this, but my app had always started fine previously and I didn't realise this was the issue.

It seems I had turned on 'break on all exceptions' and a number of components I am now using (such as Xamarin Insights, the Initialize method) throw exceptions internally which cause the debugger to break (even though you can continue from the harmless exception).

The process of capturing the exceptions and marshalling them back to VS can take quite a while (seconds sometimes), and in my case two or three of these on start-up was enough to have iOS kill the app process for misbehaving. I never actually saw the errors because the process terminated too soon for the data to come back to VS, so I didn't know what was going on.

Turning off break on all exceptions, at least until after the app starts, works around this.

answered on Stack Overflow Feb 9, 2015 by Yort • edited Feb 10, 2015 by Yort
0

Unusual behavior with shift-right bitwise operator

c
bit-manipulation

I would do it so

*x^=1<<n;
answered on Stack Overflow May 16, 2017 by alinsoar
0

Periodic crash of extremely simple esp8266 sketch

iot
esp8266
arduino-esp8266

Yeah, @dandavis was right - RESET was the reason. But actually it WAS floating, I pulled it up like it was suggested on the original diagram and it worked)

answered on Stack Overflow Feb 14, 2017 by dmitry • edited Feb 16, 2017 by dmitry
0

Facebook IOS SDK Login works on simulator, not on device

ios
facebook
facebook-login

The only solution I could find was to upgrade to xcode 4.2 for snow leopard. I didn't realise xcode 4.2 was an option for snow leopard. However it is. The code above worked immediately with no changes in xcode 4.2.

answered on Stack Overflow Feb 19, 2013 by Michael Kuiper
0

Toshiba Satellite L555D BSOD

bsod

The error codes 0x0000000a, 0x0000001a and 0x00000050 point to the RAM. Maybe one or more of the RAM modules is faulty. You should download MemText x86 and burn the iso file to either a CD or USB stick and run the test (set the CD or USB stick as the primary boot option through the BIOS).

0x1000007e usually points to a corrupted OS as a result of a bad overclock. If you have applied any overclocks, make sure you revert back to the stock settings.

0x0000003b is again related to overclocking. This code suggests that the CPU vcore is too low. If you haven't overclocked your processor, you might have to manually increase the CPU vcore through the BIOS.

Error code source: Common Error Codes

answered on Super User Oct 1, 2013 by Yass • edited Oct 1, 2013 by Yass
0

Send MiniDump to Microsoft after Recovering from OS Blue Screen

windows-7

The appropriate process is documented here: http://support.microsoft.com/kb/129845

answered on Super User Nov 13, 2010 by RobotHumans
0

Send MiniDump to Microsoft after Recovering from OS Blue Screen

windows-7

http://msdn.microsoft.com/en-us/library/ff559014%28v=VS.85%29.aspx

Bug Check 0x4E: PFN_LIST_CORRUPT

Parameter 1: 0x99; Page frame number; Current page state; 0; A page table entry (PTE) or PFN is corrupted.

Cause This error is typically caused by a driver passing a bad memory descriptor list. For example, the driver might have called MmUnlockPages twice with the same list.


My advice is to check your RAM (memory). My experience says that you might have a hardware problem. Insert W7 DVD on boot and select Memory Check.

0

Huge amount of mystic crashes of WP8 app

windows-phone-8

Are you sure you're handling the Disconnect callback accordingly ? As in do you clear and reload all your resources after a Surface::Diconnect ? If you do not handle Disconnect at all, your app will crash on resume. If you do handle it and you're not doing it the proper way your app will start using more and more memory and will crash if it goes past 170MB or so.

answered on Stack Overflow Jan 28, 2015 by RelativeGames
-1

Toshiba Satellite L555D BSOD

bsod

Install Nirsoft Bluescreen view and see which system files are causing BSODs.

Maybe there is no problem with the RAM sticks, maybe it is hard disk, or GPU, or some other hardware issues, or may be it's a faulty driver.

answered on Super User Oct 1, 2013 by Prasanna Kumar • edited Oct 1, 2013 by Kevin Panko

Comments

Leave a comment

(plain text only)

Sources

  1. https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-code-reference2
  2. https://msdn.microsoft.com/en-us/library/cc231198.aspx
  3. winerror.h from Windows SDK 10.0.14393.0

User contributions licensed under CC BY-SA 3.0