Function report |
Source Code:kernel\debug\kdb\kdb_main.c |
Create Date:2022-07-28 11:40:53 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:kdbgetaddrarg - This function is responsible for parsing an* address-expression and returning the value of the expression,* symbol name, and offset to the caller
Proto:int kdbgetaddrarg(int argc, const char **argv, int *nextarg, unsigned long *value, long *offset, char **name)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| int | argc | count of arguments in argv |
| const char ** | argv | argument vector |
| int * | nextarg | |
| unsigned long * | value | |
| long * | offset | |
| char ** | name |
| 499 | off = 0 |
| 502 | found = 0 |
| 504 | symbol = '\0' |
| 513 | If Not Check whether the flags of the current command and the permissions* of the kdb console has allow a command to be run. Then Return KDB_NOPERM |
| 525 | If nextarg > count of arguments in argv Then Return KDB_ARGCOUNT |
| 528 | symname = argument vector[ * nextarg] |
| 536 | cp = strpbrk - Find the first occurrence of a set of characters*@cs: The string to be searched*@ct: The characters to search for |
| 537 | If (cp != NULL) Then |
| 542 | If symname[0] == '$' Then |
| 546 | Else if symname[0] == '%' Then |
| 554 | Else |
| 556 | If found Then |
| 558 | Else |
| 565 | If Not found Then found = kdbnearsym - Return the name of the symbol with the nearest address* less than 'addr' |
| 568 | nextarg++ |
| 577 | If nextarg > count of arguments in argv && symbol == '\0' Then Return 0 |
| 585 | If symbol == '\0' Then |
| 586 | If argument vector[ * nextarg][0] != '+' && argument vector[ * nextarg][0] != '-' Then |
| 591 | Return 0 |
| 592 | Else |
| 593 | positive = argument vector[ * nextarg][0] == '+' |
| 594 | nextarg++ |
| 602 | If nextarg > count of arguments in argv && symbol == '\0' Then |
| 604 | Return KDB_INVADDRFMT |
| 607 | If Not symbol Then |
| 608 | cp = argument vector[ * nextarg] |
| 609 | nextarg++ |
| 625 | Return 0 |
| Name | Describe |
|---|---|
| kdb_parse | |
| kdb_md | |
| kdb_mm | kdb_mm - This function implements the 'mm' command.* mm address-expression new-value* Remarks:* mm works on machine words, mmW works on bytes. |
| kdb_go | kdb_go - This function implements the 'go' command.* go [address-expression] |
| kdb_ef | kdb_ef - This function implements the 'regs' (display exception* frame) command. This command takes an address and expects to* find an exception frame at that address, formats and prints* it.* regs address-expression* Remarks:* Not done yet. |
| kdb_per_cpu | kdb_per_cpu - This function implements the 'per_cpu' command. |
| kdb_bt | |
| kdb_bp | kdb_bp* Handle the bp commands |
| 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 |