Date: Thu, 16 Oct 2014 13:49:54 +0000 (UTC) From: Andrew Turner <andrew@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r273166 - head/lib/libkvm Message-ID: <201410161349.s9GDnsiv039593@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: andrew Date: Thu Oct 16 13:49:54 2014 New Revision: 273166 URL: https://svnweb.freebsd.org/changeset/base/273166 Log: Fix the type of pte_pa as when it is passed into _kvm_pa2off it is either a uint64_t or a pointer to an off_t. With it being a u_long can result in incorrect values being returned. Modified: head/lib/libkvm/kvm_arm.c Modified: head/lib/libkvm/kvm_arm.c ============================================================================== --- head/lib/libkvm/kvm_arm.c Thu Oct 16 12:41:14 2014 (r273165) +++ head/lib/libkvm/kvm_arm.c Thu Oct 16 13:49:54 2014 (r273166) @@ -212,7 +212,7 @@ _kvm_kvatop(kvm_t *kd, u_long va, off_t struct vmstate *vm = kd->vmst; pd_entry_t pd; pt_entry_t pte; - u_long pte_pa; + off_t pte_pa; if (kd->vmst->minidump) return (_kvm_minidump_kvatop(kd, va, pa)); @@ -228,7 +228,7 @@ _kvm_kvatop(kvm_t *kd, u_long va, off_t return (_kvm_pa2off(kd, *pa, pa, L1_S_SIZE)); } pte_pa = (pd & L1_ADDR_MASK) + l2pte_index(va) * sizeof(pte); - _kvm_pa2off(kd, pte_pa, (off_t *)&pte_pa, L1_S_SIZE); + _kvm_pa2off(kd, pte_pa, &pte_pa, L1_S_SIZE); if (lseek(kd->pmfd, pte_pa, 0) == -1) { _kvm_syserr(kd, kd->program, "_kvm_kvatop: lseek"); goto invalid;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201410161349.s9GDnsiv039593>