@@ -1076,65 +1076,6 @@ int vmbus_sendpacket(struct vmbus_channel *channel, void *buffer,
1076
1076
}
1077
1077
EXPORT_SYMBOL (vmbus_sendpacket );
1078
1078
1079
- /*
1080
- * vmbus_sendpacket_pagebuffer - Send a range of single-page buffer
1081
- * packets using a GPADL Direct packet type. This interface allows you
1082
- * to control notifying the host. This will be useful for sending
1083
- * batched data. Also the sender can control the send flags
1084
- * explicitly.
1085
- */
1086
- int vmbus_sendpacket_pagebuffer (struct vmbus_channel * channel ,
1087
- struct hv_page_buffer pagebuffers [],
1088
- u32 pagecount , void * buffer , u32 bufferlen ,
1089
- u64 requestid )
1090
- {
1091
- int i ;
1092
- struct vmbus_channel_packet_page_buffer desc ;
1093
- u32 descsize ;
1094
- u32 packetlen ;
1095
- u32 packetlen_aligned ;
1096
- struct kvec bufferlist [3 ];
1097
- u64 aligned_data = 0 ;
1098
-
1099
- if (pagecount > MAX_PAGE_BUFFER_COUNT )
1100
- return - EINVAL ;
1101
-
1102
- /*
1103
- * Adjust the size down since vmbus_channel_packet_page_buffer is the
1104
- * largest size we support
1105
- */
1106
- descsize = sizeof (struct vmbus_channel_packet_page_buffer ) -
1107
- ((MAX_PAGE_BUFFER_COUNT - pagecount ) *
1108
- sizeof (struct hv_page_buffer ));
1109
- packetlen = descsize + bufferlen ;
1110
- packetlen_aligned = ALIGN (packetlen , sizeof (u64 ));
1111
-
1112
- /* Setup the descriptor */
1113
- desc .type = VM_PKT_DATA_USING_GPA_DIRECT ;
1114
- desc .flags = VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED ;
1115
- desc .dataoffset8 = descsize >> 3 ; /* in 8-bytes granularity */
1116
- desc .length8 = (u16 )(packetlen_aligned >> 3 );
1117
- desc .transactionid = VMBUS_RQST_ERROR ; /* will be updated in hv_ringbuffer_write() */
1118
- desc .reserved = 0 ;
1119
- desc .rangecount = pagecount ;
1120
-
1121
- for (i = 0 ; i < pagecount ; i ++ ) {
1122
- desc .range [i ].len = pagebuffers [i ].len ;
1123
- desc .range [i ].offset = pagebuffers [i ].offset ;
1124
- desc .range [i ].pfn = pagebuffers [i ].pfn ;
1125
- }
1126
-
1127
- bufferlist [0 ].iov_base = & desc ;
1128
- bufferlist [0 ].iov_len = descsize ;
1129
- bufferlist [1 ].iov_base = buffer ;
1130
- bufferlist [1 ].iov_len = bufferlen ;
1131
- bufferlist [2 ].iov_base = & aligned_data ;
1132
- bufferlist [2 ].iov_len = (packetlen_aligned - packetlen );
1133
-
1134
- return hv_ringbuffer_write (channel , bufferlist , 3 , requestid , NULL );
1135
- }
1136
- EXPORT_SYMBOL_GPL (vmbus_sendpacket_pagebuffer );
1137
-
1138
1079
/*
1139
1080
* vmbus_sendpacket_mpb_desc - Send one or more multi-page buffer packets
1140
1081
* using a GPADL Direct packet type.
0 commit comments