⬢ DragonFlyBSD Kernel Audit
DF-5224 / run.log
← back to finding ↓ download raw
== direct bios_get_image call sites (besides the GET_IMAGE macro) ==
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser_helper.c:36:uint8_t *bios_get_image(struct dc_bios *bp,
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser_helper.h:31:uint8_t *bios_get_image(struct dc_bios *bp, uint32_t offset,
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser_helper.h:39:#define GET_IMAGE(type, offset) ((type *) bios_get_image(&bp->base, offset, sizeof(type)))
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser.c:2022:	*id_list = (uint16_t *)bios_get_image(&bp->base, offset, *number * sizeof(uint16_t));

== every GET_IMAGE offset expression (callers) ==
65
-- offset expressions involving 32-bit-running sums (expect NONE):
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser2.c-303-	offset = object->disp_recordoffset + bp->object_info_tbl_offset;
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser2.c-1328-	offset = object->encoder_recordoffset + bp->object_info_tbl_offset;
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser.c-137-	uint32_t object_table_offset = bp->object_info_tbl_offset + offset;
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser.c-164-	uint32_t connector_table_offset = bp->object_info_tbl_offset
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser.c-1988-	offset += bp->object_info_tbl_offset;
-- all offsets derive from le16 fields / fixed macros / + object_info_tbl_offset:

== struct sizes fed via sizeof(type) (largest atom structs, bytes):
504:struct atom_firmware_info_v3_2 {

== uint16_t provenance of master data table offsets ==
381:struct atom_master_list_of_data_tables_v2_1{
382-  uint16_t utilitypipeline;               /* Offest for the utility to get parser info,Don't change this position!*/
383-  uint16_t multimedia_info;               
384-  uint16_t smc_dpm_info;

== bios_size ceiling: bios[2]*512 (BIOS_IMAGE_SIZE_OFFSET=2, UNIT=512) ==
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser2.c:107:#define BIOS_IMAGE_SIZE_OFFSET 2
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser2.c:108:#define BIOS_IMAGE_SIZE_UNIT 512
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser2.c:1930:	bp->base.bios_size = bp->base.bios[OFFSET_TO_ATOM_ROM_IMAGE_SIZE] * BIOS_IMAGE_SIZE_UNIT;
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser.c:76:#define BIOS_IMAGE_SIZE_OFFSET 2
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser.c:77:#define BIOS_IMAGE_SIZE_UNIT 512
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/bios/bios_parser.c:2878:	bp->base.bios_size = bp->base.bios[BIOS_IMAGE_SIZE_OFFSET] * BIOS_IMAGE_SIZE_UNIT;

== SCRATCH_6 defined nonzero on every constructible DC ==
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/dcn10/dcn10_resource.c:442:		NBIO_SR(BIOS_SCRATCH_6)
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/dce80/dce80_resource.c:364:	.BIOS_SCRATCH_6 = mmBIOS_SCRATCH_6
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/dce120/dce120_resource.c:435:	.BIOS_SCRATCH_6 = mmBIOS_SCRATCH_6 + NBIO_BASE(mmBIOS_SCRATCH_6_BASE_IDX)
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/dce110/dce110_resource.c:372:	.BIOS_SCRATCH_6 = mmBIOS_SCRATCH_6
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/dce112/dce112_resource.c:382:	.BIOS_SCRATCH_6 = mmBIOS_SCRATCH_6
/home/maxx/dfbsd/dfbsd/sys/dev/drm/amd/display/dc/dce100/dce100_resource.c:371:	.BIOS_SCRATCH_6 = mmBIOS_SCRATCH_6