Function report |
Source Code:arch\x86\kernel\cpu\mce\core.c |
Create Date:2022-07-28 08:00:37 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Start of Monarch synchronization. This waits until all CPUs have* entered the exception handler and then determines if any of them* saw a fatal event that requires panic. Then it executes them* in the entry order.* TBD double check parallel CPU hotunplug
Proto:static int mce_start(int *no_way_out)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| int * | no_way_out |
| 960 | cpus = num_online_cpus() |
| 961 | timeout = monarch_timeout * NSEC_PER_USEC |
| 963 | If Not timeout Then Return -1 |
| 966 | atomic_add( * no_way_out, & global_nwo) |
| 979 | atomic_set( & global_nwo, 0) |
| 980 | Return -1 |
| 988 | smp_rmb() |
| 990 | If order == 1 Then |
| 995 | Else |
| 1003 | If Check if a timeout waiting for other CPUs happened. Then |
| 1005 | atomic_set( & global_nwo, 0) |
| 1006 | Return -1 |
| 1015 | no_way_out = atomic_read( & global_nwo) |
| 1017 | Return order |
| Name | Describe |
|---|---|
| do_machine_check | The actual machine check handler. This only handles real* exceptions when something got corrupted coming in through int 18.* This is executed in NMI context not subject to normal locking rules. This* implies that most kernel services cannot be safely used |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |