函数逻辑报告 |
Source Code:block\partitions\msdos.c |
Create Date:2022-07-27 19:04:55 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:msdos_partition
函数原型:int msdos_partition(struct parsed_partitions *state)
返回类型:int
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct parsed_partitions * | state |
| 454 | sector_size等于bdev_logical_block_size(bdev)除512 |
| 462 | data等于read_part_sector(state, 0, & sect) |
| 463 | 如果非data则返回:负1 |
| 470 | 如果aix_magic_present(state, data)则 |
| 471 | put_dev_sector(sect) |
| 473 | 返回:aix_partition(state) |
| 480 | 如果非msdos_magic_present(data + 510)则 |
| 481 | put_dev_sector(sect) |
| 482 | 返回:0 |
| 493 | 如果 0x80 - active 不等于0且 0x80 - active 不等于0x80则 |
| 500 | 如果slot恒等于1且 reserved sectors 且 number of FATs 且media of boot sector 则 |
| 505 | 否则 |
| 506 | put_dev_sector(sect) |
| 507 | 返回:0 |
| 516 | 如果SYS_IND(p)恒等于EFI_PMBR_OSTYPE_EFI_GPT则 |
| 517 | put_dev_sector(sect) |
| 518 | 返回:0 |
| 524 | disksig等于le32_to_cpup((__le32 * )(data + 0x1b8)) |
| 532 | next等于5 |
| 534 | start等于start_sect(p)乘sector_size |
| 535 | size等于nr_sects(p)乘sector_size |
| 537 | 如果非size则继续下一循环 |
| 539 | 如果is_extended_partition(p)则 |
| 556 | put_partition(state, slot, start, size) |
| 558 | 如果SYS_IND(p)恒等于LINUX_RAID_PARTITION则flags等于ADDPART_FLAG_RAID |
| 560 | 如果SYS_IND(p)恒等于DM6_PARTITION则长字符串拼接 |
| 562 | 如果SYS_IND(p)恒等于EZD_PARTITION则长字符串拼接 |
| 566 | 长字符串拼接 |
| 581 | 继续下一循环 |
| 582 | parse(state, start_sect(p) * sector_size, nr_sects(p) * sector_size, slot) |
| 585 | put_dev_sector(sect) |
| 586 | 返回:1 |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |