X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/9bccf70c0258c7cac2dcb80011b2a964d884c552..5eebf7385fedb1517b66b53c28e5aa6bb0a2be50:/bsd/kern/bsd_stubs.c diff --git a/bsd/kern/bsd_stubs.c b/bsd/kern/bsd_stubs.c index bfe0a85c4..0597434fa 100644 --- a/bsd/kern/bsd_stubs.c +++ b/bsd/kern/bsd_stubs.c @@ -40,7 +40,7 @@ kmem_mb_alloc(vm_map_t mbmap, int size) if (kernel_memory_allocate(mbmap, &addr, size, 0, KMA_NOPAGEWAIT|KMA_KOBJECT) == KERN_SUCCESS) - return((void *)addr); + return(addr); else return(0); @@ -98,6 +98,9 @@ bdevsw_isfree(int index) sizeof(struct bdevsw)) == 0) break; } + } else { + /* NB: Not used below unless index is in range */ + devsw = &bdevsw[index]; } if ((index < 0) || (index >= nblkdev) || @@ -120,7 +123,7 @@ bdevsw_add(int index, struct bdevsw * bsw) struct bdevsw *devsw; if (index == -1) { - devsw = bdevsw; + devsw = &bdevsw[1]; /* Start at slot 1 - this is a hack to fix the index=1 hack */ /* yes, start at 1 to avoid collision with volfs (Radar 2842228) */ for(index=1; index < nblkdev; index++, devsw++) { if(memcmp((char *)devsw,