hyperv-next for 5.17
-----BEGIN PGP SIGNATURE----- iQFHBAABCAAxFiEEIbPD0id6easf0xsudhRwX5BBoF4FAmHhw7oTHHdlaS5saXVA a2VybmVsLm9yZwAKCRB2FHBfkEGgXrjSB/979LV4Dn1PMcFYsSdlFEMeHcjzJdw/ kFnLPXMaPJyfg6QPuf83jxzw9uxw8fcePMdVq/FFBtmVV9fJMAv62B8jaGS1p58c WnAg+7zsTN+xEoJn+tskSSon8BNMWVrl41zP3K4Ged+5j8UEBk62GB8Orz1qkpwL fTh3/+xAvczJeD4zZb1dAm4WnmcQJ4vhg45p07jX6owvnwQAikMFl45aSW54I5o8 vAxGzFgdsZ2NtExnRNKh3b3DozA8JUE89KckBSZnDtq4rH8Fyy6Wij56Hc6v6Cml SUohiNbHX7hsNwit/lxL8wuF97IiA0pQSABobEg3rxfTghTUep51LlaN =/m4A -----END PGP SIGNATURE----- Merge tag 'hyperv-next-signed-20220114' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux Pull hyperv updates from Wei Liu: - More patches for Hyper-V isolation VM support (Tianyu Lan) - Bug fixes and clean-up patches from various people * tag 'hyperv-next-signed-20220114' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux: scsi: storvsc: Fix storvsc_queuecommand() memory leak x86/hyperv: Properly deal with empty cpumasks in hyperv_flush_tlb_multi() Drivers: hv: vmbus: Initialize request offers message for Isolation VM scsi: storvsc: Fix unsigned comparison to zero swiotlb: Add CONFIG_HAS_IOMEM check around swiotlb_mem_remap() x86/hyperv: Fix definition of hv_ghcb_pg variable Drivers: hv: Fix definition of hypercall input & output arg variables net: netvsc: Add Isolation VM support for netvsc driver scsi: storvsc: Add Isolation VM support for storvsc driver hyper-v: Enable swiotlb bounce buffer for Isolation VM x86/hyper-v: Add hyperv Isolation VM check in the cc_platform_has() swiotlb: Add swiotlb bounce buffer remap function for HV IVM
This commit is contained in:
commit
cb3f09f9af
18 changed files with 328 additions and 45 deletions
|
|
@ -1261,6 +1261,7 @@ struct hv_device {
|
|||
|
||||
struct vmbus_channel *channel;
|
||||
struct kset *channels_kset;
|
||||
struct device_dma_parameters dma_parms;
|
||||
|
||||
/* place holder to keep track of the dir for hv device in debugfs */
|
||||
struct dentry *debug_dir;
|
||||
|
|
@ -1583,6 +1584,11 @@ struct hyperv_service_callback {
|
|||
void (*callback)(void *context);
|
||||
};
|
||||
|
||||
struct hv_dma_range {
|
||||
dma_addr_t dma;
|
||||
u32 mapping_size;
|
||||
};
|
||||
|
||||
#define MAX_SRV_VER 0x7ffffff
|
||||
extern bool vmbus_prep_negotiate_resp(struct icmsg_hdr *icmsghdrp, u8 *buf, u32 buflen,
|
||||
const int *fw_version, int fw_vercnt,
|
||||
|
|
|
|||
|
|
@ -73,6 +73,9 @@ extern enum swiotlb_force swiotlb_force;
|
|||
* @end: The end address of the swiotlb memory pool. Used to do a quick
|
||||
* range check to see if the memory was in fact allocated by this
|
||||
* API.
|
||||
* @vaddr: The vaddr of the swiotlb memory pool. The swiotlb memory pool
|
||||
* may be remapped in the memory encrypted case and store virtual
|
||||
* address for bounce buffer operation.
|
||||
* @nslabs: The number of IO TLB blocks (in groups of 64) between @start and
|
||||
* @end. For default swiotlb, this is command line adjustable via
|
||||
* setup_io_tlb_npages.
|
||||
|
|
@ -92,6 +95,7 @@ extern enum swiotlb_force swiotlb_force;
|
|||
struct io_tlb_mem {
|
||||
phys_addr_t start;
|
||||
phys_addr_t end;
|
||||
void *vaddr;
|
||||
unsigned long nslabs;
|
||||
unsigned long used;
|
||||
unsigned int index;
|
||||
|
|
@ -186,4 +190,6 @@ static inline bool is_swiotlb_for_alloc(struct device *dev)
|
|||
}
|
||||
#endif /* CONFIG_DMA_RESTRICTED_POOL */
|
||||
|
||||
extern phys_addr_t swiotlb_unencrypted_base;
|
||||
|
||||
#endif /* __LINUX_SWIOTLB_H */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue