Page MenuHomeFreeBSD

D24950.id.diff
No OneTemporary

D24950.id.diff

Index: head/sys/arm/arm/machdep_boot.c
===================================================================
--- head/sys/arm/arm/machdep_boot.c
+++ head/sys/arm/arm/machdep_boot.c
@@ -352,13 +352,12 @@
fake_preload_metadata(struct arm_boot_params *abp __unused, void *dtb_ptr,
size_t dtb_size)
{
-#ifdef DDB
- vm_offset_t zstart = 0, zend = 0;
-#endif
vm_offset_t lastaddr;
int i = 0;
static uint32_t fake_preload[35];
+ lastaddr = (vm_offset_t)&end;
+
fake_preload[i++] = MODINFO_NAME;
fake_preload[i++] = strlen("kernel") + 1;
strcpy((char*)&fake_preload[i++], "kernel");
@@ -373,21 +372,6 @@
fake_preload[i++] = MODINFO_SIZE;
fake_preload[i++] = sizeof(uint32_t);
fake_preload[i++] = (uint32_t)&end - KERNVIRTADDR;
-#ifdef DDB
- if (*(uint32_t *)KERNVIRTADDR == MAGIC_TRAMP_NUMBER) {
- fake_preload[i++] = MODINFO_METADATA|MODINFOMD_SSYM;
- fake_preload[i++] = sizeof(vm_offset_t);
- fake_preload[i++] = *(uint32_t *)(KERNVIRTADDR + 4);
- fake_preload[i++] = MODINFO_METADATA|MODINFOMD_ESYM;
- fake_preload[i++] = sizeof(vm_offset_t);
- fake_preload[i++] = *(uint32_t *)(KERNVIRTADDR + 8);
- lastaddr = *(uint32_t *)(KERNVIRTADDR + 8);
- zend = lastaddr;
- zstart = *(uint32_t *)(KERNVIRTADDR + 4);
- db_fetch_ksymtab(zstart, zend);
- } else
-#endif
- lastaddr = (vm_offset_t)&end;
if (dtb_ptr != NULL) {
/* Copy DTB to KVA space and insert it into module chain. */
lastaddr = roundup(lastaddr, sizeof(int));
Index: head/sys/arm/include/elf.h
===================================================================
--- head/sys/arm/include/elf.h
+++ head/sys/arm/include/elf.h
@@ -78,12 +78,6 @@
#define EF_ARM_EABI_VERSION_UNKNOWN 0
#define EF_ARM_EABI_FREEBSD_MIN 4
-/*
- * Magic number for the elf trampoline, chosen wisely to be an immediate
- * value.
- */
-#define MAGIC_TRAMP_NUMBER 0x5c000003
-
#define ET_DYN_LOAD_ADDR 0x500000
/* Flags passed in AT_HWCAP. */
Index: head/sys/arm64/arm64/machdep_boot.c
===================================================================
--- head/sys/arm64/arm64/machdep_boot.c
+++ head/sys/arm64/arm64/machdep_boot.c
@@ -84,14 +84,12 @@
static vm_offset_t
fake_preload_metadata(void *dtb_ptr, size_t dtb_size)
{
-#ifdef DDB
- vm_offset_t zstart = 0, zend = 0;
-#endif
vm_offset_t lastaddr;
static char fake_preload[256];
caddr_t preload_ptr;
size_t size;
+ lastaddr = (vm_offset_t)&end;
preload_ptr = (caddr_t)&fake_preload[0];
size = 0;
@@ -108,25 +106,7 @@
PRELOAD_PUSH_VALUE(uint32_t, MODINFO_SIZE);
PRELOAD_PUSH_VALUE(uint32_t, sizeof(size_t));
PRELOAD_PUSH_VALUE(uint64_t, (size_t)(&end - VM_MIN_KERNEL_ADDRESS));
-#ifdef DDB
- if (*(uint64_t *)VM_MIN_KERNEL_ADDRESS == MAGIC_TRAMP_NUMBER) {
- PRELOAD_PUSH_VALUE(uint32_t, MODINFO_METADATA|MODINFOMD_SSYM);
- PRELOAD_PUSH_VALUE(uint32_t, sizeof(vm_offset_t));
- PRELOAD_PUSH_VALUE(uint64_t,
- *(uint64_t *)(VM_MIN_KERNEL_ADDRESS + 4));
- PRELOAD_PUSH_VALUE(uint32_t, MODINFO_METADATA | MODINFOMD_ESYM);
- PRELOAD_PUSH_VALUE(uint32_t, sizeof(vm_offset_t));
- PRELOAD_PUSH_VALUE(uint64_t,
- *(uint64_t *)(VM_MIN_KERNEL_ADDRESS + 8));
-
- lastaddr = *(uint64_t *)(VM_MIN_KERNEL_ADDRESS + 8);
- zend = lastaddr;
- zstart = *(uint64_t *)(VM_MIN_KERNEL_ADDRESS + 4);
- db_fetch_ksymtab(zstart, zend);
- } else
-#endif
- lastaddr = (vm_offset_t)&end;
if (dtb_ptr != NULL) {
/* Copy DTB to KVA space and insert it into module chain. */
lastaddr = roundup(lastaddr, sizeof(int));
Index: head/sys/riscv/riscv/machdep.c
===================================================================
--- head/sys/riscv/riscv/machdep.c
+++ head/sys/riscv/riscv/machdep.c
@@ -729,9 +729,6 @@
fake_preload_metadata(struct riscv_bootparams *rvbp)
{
static uint32_t fake_preload[35];
-#ifdef DDB
- vm_offset_t zstart = 0, zend = 0;
-#endif
vm_offset_t lastaddr;
size_t fake_size, dtb_size;
@@ -750,6 +747,7 @@
} while (0)
fake_size = 0;
+ lastaddr = (vm_offset_t)&end;
PRELOAD_PUSH_VALUE(uint32_t, MODINFO_NAME);
PRELOAD_PUSH_STRING("kernel");
@@ -763,24 +761,6 @@
PRELOAD_PUSH_VALUE(uint32_t, MODINFO_SIZE);
PRELOAD_PUSH_VALUE(uint32_t, sizeof(size_t));
PRELOAD_PUSH_VALUE(uint64_t, (size_t)((vm_offset_t)&end - KERNBASE));
-#ifdef DDB
-#if 0
- /* RISCVTODO */
- if (*(uint32_t *)KERNVIRTADDR == MAGIC_TRAMP_NUMBER) {
- fake_preload[i++] = MODINFO_METADATA|MODINFOMD_SSYM;
- fake_preload[i++] = sizeof(vm_offset_t);
- fake_preload[i++] = *(uint32_t *)(KERNVIRTADDR + 4);
- fake_preload[i++] = MODINFO_METADATA|MODINFOMD_ESYM;
- fake_preload[i++] = sizeof(vm_offset_t);
- fake_preload[i++] = *(uint32_t *)(KERNVIRTADDR + 8);
- lastaddr = *(uint32_t *)(KERNVIRTADDR + 8);
- zend = lastaddr;
- zstart = *(uint32_t *)(KERNVIRTADDR + 4);
- db_fetch_ksymtab(zstart, zend);
- } else
-#endif
-#endif
- lastaddr = (vm_offset_t)&end;
/* Copy the DTB to KVA space. */
lastaddr = roundup(lastaddr, sizeof(int));

File Metadata

Mime Type
text/plain
Expires
Thu, Sep 3, 3:00 AM (4 h, 2 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
38054017
Default Alt Text
D24950.id.diff (4 KB)

Event Timeline