Discover kernel stack inpage error, include the articles, news, trends, analysis and practical advice about kernel stack inpage error on alibabacloud.com
goes to RESTORE_ALL (it is a macro, for example, in the x86_32 architecture, the/usr/src/kernel/arch/286/kernel/entry_32.S file contains the macro definition)
The RESTORE's work can be seen from its code:
First, pop the ES | DS | EAX | EBP | EDI | ESI | EDX | ECX | EBX on the stack to the corresponding register.
Then, use esp + 4 to pop the "interrupt number-25
process 2 points to 0x1000.The virtual address of the kernel stack corresponding to each thread does not overlap.Thread1 ' s kernel stack = 0f000,Thread2 ' s kernel stack = 0d000,Thread3 ' s
Solution to process Kernel stack overflow caused by XFSSystem Environment
System Version: CentOS release 6.5
Kenel version: 2.6.32-431.20.3.el6.x86 _ 64
File System: XFS
Problem description
System panic and print the following calltrace information:
kvm: 16396: cpu1 unhandled wrmsr: 0x391 data 2000000fBUG: scheduling while atomic:qemu-system-x86/27122/0xffff8811BUG: unable to handle
thread was used in the previous environment switching and DPC scheduling, and then I directly changed back to the normal value (the kernelstack of the idle, at ETHREAD + 0x28, it is a constant value. If it is not modified, the system will return an error address after scheduling.) it is estimated that the problem occurs here, so I changed the shellcode structure before and after, environment switchover is performed before other functions are complete
(ACK) packet (4) sliding window (sliding Windown) and so on to ensure reliability of operation. The approximate processing of the TCP protocol stack is shown in the following illustration:
TCP stack Brief process: The TCP_SENDMSG function first checks the state of the established TCP connection, obtains the MSS for the connection, and begins the segement send process. Constructs the playload of a TCP segm
message is given when the connection is made.So what is a file that indicates a 8-byte alignment attribute is required? If you have one of the assembly files, some operations must be stack 8 byte alignment, then you need to use the REQUIRE8 pseudo-directive to inform the assembler to identify the file as the REQ8 property, and then this file is called "a file that requires 8-byte alignment attributes."In a lot of files, calls between files by a large
the fork function with 0.
Then, the switch_to function is used to switch the process. This function passes in two parameters: the PCB address of the sub-process and the index of its ldt descriptor. This function is composed of assembly code. First, it saves a series of registers of the parent process to the kernel stack of the parent process, and also saves esp in the corresponding PCB fields of the parent
declared inside the function, the stack overflow error may easily occur, that is, the system prompts "segment error. Core dumped" during the program running ". How does the kernel detect stack overflow errors?
In summary, this is done by handling page missing exceptions. Su
manually populate the data of each protocol stack, and finally call the kernel protocol stack function Dev_queue_xmit function sent, this function is the physical layer, a driving function, so we constructed SKB data packets need to fill the application layer, Transport layer, network layer, And the data for the link layer.
At the outset of this procedure, as lo
In the following cases, a page error exception (also known as a fault) occurs:1, the corresponding page directory entry or Page table entry is empty, that is, the linear address and physical address mapping relationship has not been established, or has been revoked. This is the case in this article. 2, the corresponding physical page is not in memory.3. The access method specified in the instruction is inconsistent with the permissions of the page, fo
Kernel compilation error on UbuntuLinux _ stack_chk_fail -- Linux general technology-Linux programming and kernel information. The following is a detailed description. Init/built-in.o: In function 'try _ name ':
Do_mounts.c.text + 0x5e3): Reference to '_ stack_chk_fail' undefined
Init/built-in.o: In function 'name _ to_dev_t ':
(. Text + 0x8cb): Undefined referen
An error occurred while compiling the linux kernel! -- Linux general technology-Linux programming and kernel information. The following is a detailed description. Make mrproper, make menuconfig, make dep, and then make bzImage has an error. The error message is as follows. P
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.