[PULL,v2,azure-edge] Hyper-V updates from 4.14

Message ID 20171120203715.GC13259@gallifrey
State New
Headers show
Series
  • [PULL,v2,azure-edge] Hyper-V updates from 4.14
Related show

Pull-request

git://git.launchpad.net/~mhcerri/ubuntu/+source/linux/+git/azure lp1731994_lp1729412_4.13_update

Message

Marcelo Henrique Cerri Nov. 20, 2017, 8:37 p.m.
BugLink: http://bugs.launchpad.net/bugs/1731994
BugLink: http://bugs.launchpad.net/bugs/1729412

* v2:
Fixed the BugLink URL in the commit: "x86/hyperv: Clear vCPU banks
between calls to avoid flushing unneeded vCPUs"

* v1:
This is a pull request to linux-azure-edge based on the following bugs:

Bug #1731994 - Update linux-azure and linux-azure-edge kernels with 4.13 patches
Bug #1729412 - TLB updates from 4.14 for linux-azure

Some of the patches listed in #1731994 were already included to
linux-azure-edge and that's the reason why the pull request contains
less patches than expected.

---

The following changes since commit 66061377cf02230b280f1146a8f8d80fde90ea2e:

  UBUNTU: Start new release (2017-11-13 10:58:04 -0200)

are available in the git repository at:

  git://git.launchpad.net/~mhcerri/ubuntu/+source/linux/+git/azure lp1731994_lp1729412_4.13_update

for you to fetch changes up to 0eb81fa04120427f2e8a3dd09300579fc33b304b:

  x86/hyperv: Fix hypercalls with extended CPU ranges for TLB flushing (2017-11-20 18:31:41 -0200)

----------------------------------------------------------------
Alex Ng (5):
      Tools: hv: vss: Skip freezing filesystems backed by loop
      Drivers: hv: balloon: Correctly update onlined page count
      Drivers: hv: balloon: Show the max dynamic memory assigned
      Drivers: hv: balloon: Initialize last_post_time on startup
      Drivers: hv: kvp: Use MAX_ADAPTER_ID_SIZE for translating adapter id

Dexuan Cui (1):
      UBUNTU:SAUCE: vmbus: suppress uevents for hv_sock devices

Haiyang Zhang (8):
      hv_netvsc: Clean up unused parameter from netvsc_get_hash()
      hv_netvsc: Clean up unused parameter from netvsc_get_rss_hash_opts()
      hv_netvsc: Add ethtool handler to set and get UDP hash levels
      hv_netvsc: Fix rndis_filter_close error during netvsc_remove
      hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param()
      hv_netvsc: Simplify num_chn checking in rndis_filter_device_add()
      hv_netvsc: Simplify the limit check in netvsc_set_channels()
      hv_netvsc: Fix the channel limit in netvsc_set_rxfh()

Joe Perches (1):
      hyperv: netvsc: Neaten netvsc_send_pkt by using a temporary

Marcelo Henrique Cerri (2):
      UBUNTU: SAUCE: x86/hyper-v: sync fast hypercall implementation with 4.14
      x86/hyperv: Fix hypercalls with extended CPU ranges for TLB flushing

Mohammed Gamal (1):
      netvsc: Remove redundant use of ipv6_hdr()

Olaf Hering (2):
      Tools: hv: fix snprintf warning in kvp_daemon
      Tools: hv: update buffer handling in hv_fcopy_daemon

Stephen Hemminger (9):
      UBUNTU: SAUCE: vmbus: simplify packet iterator
      UBUNTU: SAUCE: vmbus: fix performance regression
      UBUNTU:SAUCE: vmbus: add per-channel sysfs info
      UBUNTU: SAUCE: vmbus: expose per-channel interrupts and events counters
      UBUNTU:SAUCE: vmbus: make vmbus_set_event local
      netvsc: cleanup datapath switch
      netvsc: allow driver to be removed even if VF is present
      UBUNTU: SAUCE: netvsc: defer initializing sub-channels
      hv_netvsc: avoid unnecessary wakeups on subchannel creation

Vitaly Kuznetsov (5):
      x86/hyper-v: Use hypercall for remote TLB flush
      x86/hyper-v: Support extended CPU ranges for TLB flush hypercalls
      tracing/hyper-v: Trace hyperv_mmu_flush_tlb_others()
      x86/hyperv: Clear vCPU banks between calls to avoid flushing unneeded vCPUs
      x86/hyperv: Don't use percpu areas for pcpu_flush/pcpu_flush_ex structures

Vivek Yadav (1):
      UBUNTU: SAUCE: Adding file to support building user level daemon

Wu Fengguang (1):
      netvsc: fix ptr_ret.cocci warnings

stephen hemminger (23):
      vmbus: remove unused vmbus_sendpacket_multipagebuffer
      vmbus: remove unused vmbus_sendpacket_ctl
      netvsc: force link update after MTU change
      netvsc: need rcu_derefence when accessing internal device info
      netvsc: save pointer to parent netvsc_device in channel table
      netvsc: add rtnl annotations in rndis
      netvsc: remove bogus rtnl_unlock
      netvsc: fix netvsc_set_channels
      netvsc: remove no longer used max_num_rss queues
      netvsc: fix return value for set_channels
      netvsc: fix warnings reported by lockdep
      netvsc: don't print pointer value in error message
      netvsc: remove unnecessary indirection of page_buffer
      netvsc: fix error unwind on device setup failure
      netvsc: signal host if receive ring is emptied
      netvsc: check error return when restoring channels and mtu
      netvsc: no need to allocate send/receive on numa node
      netvsc: keep track of some non-fatal overload conditions
      netvsc: don't signal host twice if empty
      netvsc: whitespace cleanup
      netvsc: remove unnecessary cast of void pointer
      netvsc: remove unnecessary check for NULL hdr
      netvsc: pass net_device to netvsc_init_buf and netvsc_connect_vsp

 MAINTAINERS                         |   1 +
 arch/x86/hyperv/Makefile            |   2 +-
 arch/x86/hyperv/hv_init.c           |   7 +
 arch/x86/hyperv/mmu.c               | 301 ++++++++++++++++++++++++++++++++++++
 arch/x86/include/asm/mshyperv.h     |  46 +++---
 arch/x86/include/asm/trace/hyperv.h |  40 +++++
 arch/x86/include/uapi/asm/hyperv.h  |  17 ++
 arch/x86/kernel/cpu/mshyperv.c      |   1 +
 drivers/hv/Kconfig                  |   1 +
 drivers/hv/channel.c                | 118 ++++----------
 drivers/hv/channel_mgmt.c           |  10 +-
 drivers/hv/connection.c             |  14 --
 drivers/hv/hv_balloon.c             |  12 +-
 drivers/hv/hv_kvp.c                 |   2 +-
 drivers/hv/hyperv_vmbus.h           |   2 +
 drivers/hv/ring_buffer.c            |  52 ++++---
 drivers/hv/vmbus_drv.c              | 210 +++++++++++++++++++++++--
 drivers/net/hyperv/hyperv_net.h     |  30 ++--
 drivers/net/hyperv/netvsc.c         | 138 ++++++++---------
 drivers/net/hyperv/netvsc_drv.c     | 270 ++++++++++++++++++--------------
 drivers/net/hyperv/rndis_filter.c   | 197 ++++++++++++++---------
 include/linux/hyperv.h              |  27 ++--
 tools/hv/70-hv_fcopy.rules          |   1 +
 tools/hv/70-hv_kvp.rules            |   1 +
 tools/hv/70-hv_vss.rules            |   1 +
 tools/hv/hv_fcopy_daemon.c          |  32 ++--
 tools/hv/hv_fcopy_daemon.service    |   9 ++
 tools/hv/hv_kvp_daemon.c            |   2 +-
 tools/hv/hv_kvp_daemon.service      |  10 ++
 tools/hv/hv_vss_daemon.c            |   7 +
 tools/hv/hv_vss_daemon.service      |   9 ++
 tools/hv/lis-daemon.spec            | 137 ++++++++++++++++
 32 files changed, 1231 insertions(+), 476 deletions(-)
 create mode 100644 arch/x86/hyperv/mmu.c
 create mode 100644 arch/x86/include/asm/trace/hyperv.h
 create mode 100644 tools/hv/70-hv_fcopy.rules
 create mode 100644 tools/hv/70-hv_kvp.rules
 create mode 100644 tools/hv/70-hv_vss.rules
 create mode 100644 tools/hv/hv_fcopy_daemon.service
 create mode 100644 tools/hv/hv_kvp_daemon.service
 create mode 100644 tools/hv/hv_vss_daemon.service
 create mode 100644 tools/hv/lis-daemon.spec

Comments

Stefan Bader Nov. 21, 2017, 2:05 p.m. | #1
On 20.11.2017 21:37, Marcelo Henrique Cerri wrote:
> git://git.launchpad.net/~mhcerri/ubuntu/+source/linux/+git/azure lp1731994_lp1729412_4.13_update

I cannot really comment on the content as the delta is just too big for that and
also there is no way of making any judgement about patch dependencies. I assume
it compiles and we get testing in the target environment.

At a formal level the latest push looks good to me and all commits get correctly
attributed to a public launchpad bug. Also an updateconfigs does not produce
anything.

Acked-by: Stefan Bader <stefan.bader@canonical.com>
Marcelo Henrique Cerri Nov. 21, 2017, 2:48 p.m. | #2
On Tue, Nov 21, 2017 at 03:05:04PM +0100, Stefan Bader wrote:
> On 20.11.2017 21:37, Marcelo Henrique Cerri wrote:
> > git://git.launchpad.net/~mhcerri/ubuntu/+source/linux/+git/azure lp1731994_lp1729412_4.13_update
> 
> I cannot really comment on the content as the delta is just too big for that and
> also there is no way of making any judgement about patch dependencies. I assume
> it compiles and we get testing in the target environment.
> 

Thanks for reviewing it, Stefan. Yes, it builds fine and I also have
done some tests based on past issues. That includes memory allocation
issues with docker (that was an issue that was caused in the past by
the remote TLB flushing implementation for azure) and network throughput
measurements.

> At a formal level the latest push looks good to me and all commits get correctly
> attributed to a public launchpad bug. Also an updateconfigs does not produce
> anything.
> 
> Acked-by: Stefan Bader <stefan.bader@canonical.com>
>