From: Shao Miller Date: Wed, 29 Dec 2010 04:33:12 +0000 (-0500) Subject: [driver] Use the static bus in detach function X-Git-Url: http://git.etherboot.org/people/sha0/winvblock.git/commitdiff_plain/f68eb137653fbd71a5f4daa34692ded6f6c9c3bf?hp=935ec8c88a1d8333e8dff7c03bd3036eef13ba6a;ds=inline [driver] Use the static bus in detach function Also rename WvDriverBusDevCtlDiskDetach() to WvDriverBusDevCtlDetach(). --- diff --git a/src/winvblock/driver.c b/src/winvblock/driver.c index 51bdd3d..c7ebf58 100644 --- a/src/winvblock/driver.c +++ b/src/winvblock/driver.c @@ -643,18 +643,16 @@ winvblock__lib_func winvblock__bool STDCALL WvDriverBusAddDev( return TRUE; } -static NTSTATUS STDCALL WvDriverBusDevCtlDiskDetach_( - IN WV_SP_DEV_T dev, +static NTSTATUS STDCALL WvDriverBusDevCtlDetach_( IN PIRP irp ) { - winvblock__uint8_ptr buffer = irp->AssociatedIrp.SystemBuffer; - winvblock__uint32 disk_num = *(winvblock__uint32_ptr) buffer; + winvblock__uint32 disk_num = + *((winvblock__uint32_ptr) irp->AssociatedIrp.SystemBuffer); WV_SP_DEV_T dev_walker; WV_SP_DISK_T disk_walker = NULL, prev_disk_walker; - WV_SP_BUS_T bus; + WV_SP_BUS_T bus = &WvDriverBus_; DBG("Request to detach disk: %d\n", disk_num); - bus = WvBusFromDev(dev); dev_walker = bus->first_child; if (dev_walker != NULL) disk_walker = disk__get_ptr(dev_walker); @@ -701,7 +699,7 @@ NTSTATUS STDCALL WvDriverBusDevCtl_( break; case IOCTL_FILE_DETACH: - status = WvDriverBusDevCtlDiskDetach_(dev, irp); + status = WvDriverBusDevCtlDetach_(irp); break; default: