⬢ DragonFlyBSD Kernel Audit
DF-4459 / run.log
← back to finding ↓ download raw
+ F=sys/dev/drm/drm_gem.c
+ grep -n mm = kzalloc sys/dev/drm/drm_gem.c
139:	mm = kzalloc(sizeof(struct drm_gem_mm), GFP_KERNEL);
+ grep -n vma_offset_manager = kzalloc sys/dev/drm/drm_gem.c
140:	vma_offset_manager = kzalloc(sizeof(*vma_offset_manager), GFP_KERNEL);
+ grep -n if (!vma_offset_manager) sys/dev/drm/drm_gem.c
141:	if (!vma_offset_manager) {
+ echo -- expect: NO 'if (!mm' line follows --
-- expect: NO 'if (!mm' line follows --
+ grep -n if (!mm sys/dev/drm/drm_gem.c
+ echo CONFIRMED: mm allocation never NULL-checked
CONFIRMED: mm allocation never NULL-checked
+ grep -n dev->mm_private = mm sys/dev/drm/drm_gem.c
146:	dev->mm_private = mm;
+ grep -n drm_ht_create(&mm->offset_hash sys/dev/drm/drm_gem.c
148:	if (drm_ht_create(&mm->offset_hash, 12)) {
+ grep -n -A2 if (drm_ht_create sys/dev/drm/drm_gem.c
+ head -6
148:	if (drm_ht_create(&mm->offset_hash, 12)) {
149-		kfree(mm);
150-		return -ENOMEM;
+ grep -n drm_mm_takedown(&mm->offset_manager) sys/dev/drm/drm_gem.c
170:	drm_mm_takedown(&mm->offset_manager);
+ grep -n drm_ht_remove(&mm->offset_hash) sys/dev/drm/drm_gem.c
171:	drm_ht_remove(&mm->offset_hash);