]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 16 May 2017 16:24:44 +0000 (09:24 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 16 May 2017 16:24:44 +0000 (09:24 -0700)
Pull s390 fixes from Martin Schwidefsky:

 - convert the debug feature to refcount_t

 - reduce the copy size for strncpy_from_user

 - 8 bug fixes

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
  s390/virtio: change virtio_feature_desc:features type to __le32
  s390: convert debug_info.ref_count from atomic_t to refcount_t
  s390: move _text symbol to address higher than zero
  s390/qdio: increase string buffer size
  s390/ccwgroup: increase string buffer size
  s390/topology: let topology_mnest_limit() return unsigned char
  s390/uaccess: use sane length for __strncpy_from_user()
  s390/uprobes: fix compile for !KPROBES
  s390/ftrace: fix compile for !MODULES
  s390/cputime: fix incorrect system time

1  2 
arch/s390/kernel/ftrace.c
drivers/s390/virtio/virtio_ccw.c

index 27477f34cc0a9844a7391eef1e40ab28e3b1dcf1,68f2b8a15eab7cc5a6eeadac3852af7c0bf4a629..d03a6d12c4bdc4118c3c10e0c80e90822cac6a03
@@@ -17,7 -17,6 +17,7 @@@
  #include <trace/syscall.h>
  #include <asm/asm-offsets.h>
  #include <asm/cacheflush.h>
 +#include <asm/set_memory.h>
  #include "entry.h"
  
  /*
@@@ -173,6 -172,8 +173,8 @@@ int __init ftrace_dyn_arch_init(void
        return 0;
  }
  
+ #ifdef CONFIG_MODULES
  static int __init ftrace_plt_init(void)
  {
        unsigned int *ip;
  }
  device_initcall(ftrace_plt_init);
  
+ #endif /* CONFIG_MODULES */
  #ifdef CONFIG_FUNCTION_GRAPH_TRACER
  /*
   * Hook the return address and push it in the stack of return addresses
index 2a76ea78a0bf1ae9f62508e701cca07a9f690d1f,c7d4ef7b4b22e70c5caa598014efa301f616461b..b18fe2014cf2195a193186c08c956dc8e5cfe7e3
@@@ -87,7 -87,7 +87,7 @@@ struct vq_info_block 
  } __packed;
  
  struct virtio_feature_desc {
-       __u32 features;
+       __le32 features;
        __u8 index;
  } __packed;
  
@@@ -484,7 -484,7 +484,7 @@@ static void virtio_ccw_del_vqs(struct v
  
  static struct virtqueue *virtio_ccw_setup_vq(struct virtio_device *vdev,
                                             int i, vq_callback_t *callback,
 -                                           const char *name,
 +                                           const char *name, bool ctx,
                                             struct ccw1 *ccw)
  {
        struct virtio_ccw_device *vcdev = to_vc_device(vdev);
        }
  
        vq = vring_new_virtqueue(i, info->num, KVM_VIRTIO_CCW_RING_ALIGN, vdev,
 -                               true, info->queue, virtio_ccw_kvm_notify,
 +                               true, ctx, info->queue, virtio_ccw_kvm_notify,
                                 callback, name);
        if (!vq) {
                /* For now, we fail if we can't get the requested size. */
@@@ -629,7 -629,6 +629,7 @@@ static int virtio_ccw_find_vqs(struct v
                               struct virtqueue *vqs[],
                               vq_callback_t *callbacks[],
                               const char * const names[],
 +                             const bool *ctx,
                               struct irq_affinity *desc)
  {
        struct virtio_ccw_device *vcdev = to_vc_device(vdev);
  
        for (i = 0; i < nvqs; ++i) {
                vqs[i] = virtio_ccw_setup_vq(vdev, i, callbacks[i], names[i],
 -                                           ccw);
 +                                           ctx ? ctx[i] : false, ccw);
                if (IS_ERR(vqs[i])) {
                        ret = PTR_ERR(vqs[i]);
                        vqs[i] = NULL;