diff options
author | Toomas Soome <tsoome@me.com> | 2019-01-26 15:33:04 +0200 |
---|---|---|
committer | Toomas Soome <tsoome@me.com> | 2019-07-26 08:49:58 +0300 |
commit | ec3255b6c7ec65bcbd5a7bbd2c0e9df7437b8f54 (patch) | |
tree | e0e028eabab7ba3d6d3a6ec89f2b44bdf2bd870a | |
parent | e44d26aaf9ca8988aa38cecb658a4bf2a5e4de1f (diff) | |
download | illumos-gate-ec3255b6c7ec65bcbd5a7bbd2c0e9df7437b8f54.tar.gz |
11415 rcap: NULL pointer errors
Reviewed by: Andy Fiddaman <andy@omniosce.org>
Approved by: Dan McDonald <danmcd@joyent.com>
-rw-r--r-- | usr/src/cmd/rcap/rcapd/rcapd_scanner.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/usr/src/cmd/rcap/rcapd/rcapd_scanner.c b/usr/src/cmd/rcap/rcapd/rcapd_scanner.c index b39811b552..3f09a7f4ed 100644 --- a/usr/src/cmd/rcap/rcapd/rcapd_scanner.c +++ b/usr/src/cmd/rcap/rcapd/rcapd_scanner.c @@ -23,8 +23,6 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/mman.h> #include <sys/param.h> #include <sys/stat.h> @@ -243,7 +241,7 @@ advance_prpageheader_cur_nextmapping(prpageheader_cur_t *pcp) next: ASSERT(pcp->pr_map < pcp->pr_nmap); if ((pcp->pr_map + 1) == pcp->pr_nmap) - return (NULL); + return ((uintptr_t)NULL); pcp->pr_map++; if (pcp->pr_pgoff < pcp->pr_npage) { pcp->pr_pdaddr = (caddr_t)(uintptr_t) @@ -429,8 +427,8 @@ OR_pagedata(prpageheader_t *src, prpageheader_t *dst, int *mappings_changedp) */ src_addr = (uintptr_t)set_prpageheader_cur(&src_cur, src, NULL, -1); dst_addr = (uintptr_t)set_prpageheader_cur(&dst_cur, dst, NULL, -1); - while (src_addr != NULL && dst_addr != NULL) { - while (src_addr == dst_addr && src_addr != NULL) { + while (src_addr != (uintptr_t)NULL && dst_addr != (uintptr_t)NULL) { + while (src_addr == dst_addr && src_addr != (uintptr_t)NULL) { *(char *)dst_cur.pr_pdaddr |= *(char *)src_cur.pr_pdaddr; src_addr = (uintptr_t)advance_prpageheader_cur( @@ -442,8 +440,8 @@ OR_pagedata(prpageheader_t *src, prpageheader_t *dst, int *mappings_changedp) mappings_changed = 1; src_addr = advance_prpageheader_cur_nextmapping(&src_cur); dst_addr = advance_prpageheader_cur_nextmapping(&dst_cur); - while (src_addr != dst_addr && src_addr != NULL && dst_addr != - NULL) { + while (src_addr != dst_addr && src_addr != (uintptr_t)NULL && + dst_addr != (uintptr_t)NULL) { mappings_changed = 1; if (src_addr < dst_addr) src_addr = advance_prpageheader_cur_nextmapping( @@ -848,7 +846,8 @@ next: while (endaddr != NULL && *(caddr_t)cur.pr_pdaddr == 0 && (((intptr_t)endaddr - (intptr_t)vicaddr) / - 1024) < excess); + 1024) < excess) + ; st_debug(STDL_HIGH, lcol, "endaddr %p, *cur %d\n", endaddr, *(caddr_t)cur.pr_pdaddr); @@ -991,7 +990,7 @@ void scan_abort(void) { if (scan_pr != NULL) - (void) Prelease(scan_pr, NULL); + (void) Prelease(scan_pr, 0); } static void |