Hi all, I went back to my "cleanup list" recently and I wrote these patches: here you can find, among other things, 1) the removal of the fields 'target_vp' and 'numa_node' from the channel data structure, as suggested by Michael back in May; 2) various cleanups for channel->lock, which is actually *removed by the end of this series! ;-) I'm sure there is room for further "cleanups", ;-) but let me check if these (relatively small) changes make sense first... Thanks, Andrea Andrea Parri (Microsoft) (8): Drivers: hv: vmbus: Remove the target_vp field from the vmbus_channel struct Drivers: hv: vmbus: Remove the numa_node field from the vmbus_channel struct Drivers: hv: vmbus: Replace cpumask_test_cpu(, cpu_online_mask) with cpu_online() Drivers: hv: vmbus: Remove unnecessary channel->lock critical sections (sc_list readers) Drivers: hv: vmbus: Use channel_mutex in channel_vp_mapping_show() Drivers: hv: vmbus: Remove unnecessary channel->lock critical sections (sc_list updaters) scsi: storvsc: Introduce the per-storvsc_device spinlock Drivers: hv: vmbus: Remove the lock field from the vmbus_channel struct drivers/hv/channel.c | 9 +++------ drivers/hv/channel_mgmt.c | 31 ++++++------------------------- drivers/hv/hv.c | 3 --- drivers/hv/vmbus_drv.c | 17 +++++------------ drivers/scsi/storvsc_drv.c | 16 +++++++++++----- include/linux/hyperv.h | 22 +++++++--------------- 6 files changed, 32 insertions(+), 66 deletions(-) -- 2.25.1