Function report |
Source Code:kernel\events\core.c |
Create Date:2022-07-28 13:39:30 |
Last Modify:2022-05-20 07:50:19 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Address filter string parser
Proto:static int perf_event_parse_addr_filter(struct perf_event *event, char *fstr, struct list_head *filters)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
struct perf_event * | event | |
char * | fstr | |
struct list_head * | filters |
9568 | struct perf_addr_filter * filter = NULL |
9571 | state = IF_STATE_ACTION |
9572 | kernel = 0 |
9575 | orig = fstr = kstrdup(fstr, GFP_KERNEL) |
9580 | static const enum perf_addr_filter_action_t actions[] = {[IF_ACT_FILTER] = PERF_ADDR_FILTER_ACTION_FILTER, [IF_ACT_START] = PERF_ADDR_FILTER_ACTION_START, [IF_ACT_STOP] = PERF_ADDR_FILTER_ACTION_STOP, } |
9587 | If Not start Then Continue |
9591 | If state == IF_STATE_ACTION Then |
9599 | Case token == IF_ACT_FILTER |
9600 | Case token == IF_ACT_START |
9601 | Case token == IF_ACT_STOP |
9609 | Case token == IF_SRC_KERNELADDR |
9610 | Case token == IF_SRC_KERNEL |
9611 | kernel = 1 |
9614 | Case token == IF_SRC_FILEADDR |
9615 | Case token == IF_SRC_FILE |
9616 | If state != IF_STATE_SOURCE Then Go to fail |
9619 | to = 0 |
9624 | If token == IF_SRC_KERNEL || token == IF_SRC_FILE Then |
9625 | to = 0 |
9631 | If token == IF_SRC_FILE || token == IF_SRC_FILEADDR Then |
9632 | fpos = If token == IF_SRC_FILE Then 2 Else 1 |
9635 | If Not filename Then |
9641 | state = IF_STATE_END |
9642 | Break |
9644 | Default |
9645 | Go to fail |
9653 | If state == IF_STATE_END Then |
9655 | If kernel && exclude_kernel Then Go to fail |
9662 | If action == PERF_ADDR_FILTER_ACTION_FILTER && Not size Then Go to fail |
9666 | If Not kernel Then |
9678 | ret = -EOPNOTSUPP |
9679 | If Not task Then Go to fail_free_name |
9683 | ret = kern_path(filename, llow links at the end , & path) |
9685 | If ret Then Go to fail_free_name |
9689 | filename = NULL |
9697 | nr_file_filters++ |
9701 | state = IF_STATE_ACTION |
9702 | filter = NULL |
9706 | If state != IF_STATE_ACTION Then Go to fail |
9711 | Return 0 |
9713 | fail_free_name : |
9715 | fail : |
9716 | free_filters_list(filters) |
9719 | Return ret |
Name | Describe |
---|---|
perf_event_set_addr_filter |
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 |