@@ -72,18 +72,16 @@ function initializeBlockDevice(pciDevice) {
7272 return u8 ;
7373 }
7474
75- const diskDriver = new runtime . disk . DiskInterface ( 'hda ', {
75+ const diskDriver = new runtime . block . BlockDeviceInterface ( 'virtio ', {
7676 read ( sector , data ) {
7777 return new Promise ( ( resolve , reject ) => {
7878 if ( sector > totalSectorCount ) {
79- setImmediate ( ( ) => {
80- reject ( new RangeError ( `sector ${ sector } out of bounds (max ${ totalSectorCount } , non-inclusive)` ) ) ;
81- } ) ;
79+ reject ( new RangeError ( `sector ${ sector } out of bounds (max ${ totalSectorCount } , non-inclusive)` ) ) ;
8280 return ;
8381 }
8482 const status = new Uint8Array ( 1 ) ;
8583 promiseQueue . push ( [ resolve , reject , VIRTIO_BLK_T_IN , data , status ] ) ;
86- reqQueue . placeBuffers ( [ buildHeader ( VIRTIO_BLK_T_IN , sector ) , data , status ] , [ false , true , true ] ) ;
84+ reqQueue . placeBuffers ( [ buildHeader ( VIRTIO_BLK_T_IN , sector ) , data , status ] , null , [ false , true , true ] ) ;
8785
8886 if ( reqQueue . isNotificationNeeded ( ) ) {
8987 dev . queueNotify ( QUEUE_ID_REQ ) ;
@@ -94,7 +92,7 @@ function initializeBlockDevice(pciDevice) {
9492 return new Promise ( ( resolve , reject ) => {
9593 const status = new Uint8Array ( 1 ) ;
9694 promiseQueue . push ( [ resolve , reject , VIRTIO_BLK_T_OUT , data , status ] ) ;
97- reqQueue . placeBuffers ( [ buildHeader ( VIRTIO_BLK_T_OUT , sector ) , data , status ] , [ false , false , true ] ) ;
95+ reqQueue . placeBuffers ( [ buildHeader ( VIRTIO_BLK_T_OUT , sector ) , data , status ] , null , [ false , false , true ] ) ;
9896
9997 if ( reqQueue . isNotificationNeeded ( ) ) {
10098 dev . queueNotify ( QUEUE_ID_REQ ) ;
@@ -111,7 +109,7 @@ function initializeBlockDevice(pciDevice) {
111109 } ,
112110 } ) ;
113111
114- runtime . disk . registerDisk ( diskDriver ) ;
112+ runtime . block . registerDevice ( diskDriver ) ;
115113
116114 function recvBuffer ( ) {
117115 if ( promiseQueue . length === 0 ) {
0 commit comments