Skip to content

Commit 2ec4584

Browse files
committed
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
Pull s390 updates from Martin Schwidefsky: "The main bulk of the s390 patches for the 4.10 merge window: - Add support for the contiguous memory allocator. - The recovery for I/O errors in the dasd device driver is improved, the driver will now remove channel paths that are not working properly. - Additional fields are added to /proc/sysinfo, the extended partition name and the partition UUID. - New naming for PCI devices with system defined UIDs. - The last few remaining alloc_bootmem calls are converted to memblock. - The thread_info structure is stripped down and moved to the task_struct. The only field left in thread_info is the flags field. - Rework of the arch topology code to fix a fake numa issue. - Refactoring of the atomic primitives and add a new preempt_count implementation. - Clocksource steering for the STP sync check offsets. - The s390 specific headers are changed to make them usable with CLANG. - Bug fixes and cleanup" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (70 commits) s390/cpumf: Use configuration level indication for sampling data s390: provide memmove implementation s390: cleanup arch/s390/kernel Makefile s390: fix initrd corruptions with gcov/kcov instrumented kernels s390: exclude early C code from gcov profiling s390/dasd: channel path aware error recovery s390/dasd: extend dasd path handling s390: remove unused labels from entry.S s390/vmlogrdr: fix IUCV buffer allocation s390/crypto: unlock on error in prng_tdes_read() s390/sysinfo: show partition extended name and UUID if available s390/numa: pin all possible cpus to nodes early s390/numa: establish cpu to node mapping early s390/topology: use cpu_topology array instead of per cpu variable s390/smp: initialize cpu_present_mask in setup_arch s390/topology: always use s390 specific sched_domain_topology_level s390/smp: use smp_get_base_cpu() helper function s390/numa: always use logical cpu and core ids s390: Remove VLAIS in ptff() and clear_table() s390: fix machine check panic stack switch ...
2 parents aa3ecf3 + c19805f commit 2ec4584

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+2265
-1240
lines changed

MAINTAINERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10557,7 +10557,7 @@ F: arch/s390/pci/
1055710557
F: drivers/pci/hotplug/s390_pci_hpc.c
1055810558

1055910559
S390 ZCRYPT DRIVER
10560-
M: Ingo Tuchscherer <ingo.tuchscherer@de.ibm.com>
10560+
M: Harald Freudenberger <freude@de.ibm.com>
1056110561
1056210562
W: http://www.ibm.com/developerworks/linux/linux390/
1056310563
S: Supported

arch/s390/Kconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,7 @@ config S390
136136
select HAVE_CMPXCHG_LOCAL
137137
select HAVE_DEBUG_KMEMLEAK
138138
select HAVE_DMA_API_DEBUG
139+
select HAVE_DMA_CONTIGUOUS
139140
select HAVE_DYNAMIC_FTRACE
140141
select HAVE_DYNAMIC_FTRACE_WITH_REGS
141142
select HAVE_EFFICIENT_UNALIGNED_ACCESS
@@ -169,6 +170,7 @@ config S390
169170
select OLD_SIGSUSPEND3
170171
select SPARSE_IRQ
171172
select SYSCTL_EXCEPTION_TRACE
173+
select THREAD_INFO_IN_TASK
172174
select TTY
173175
select VIRT_CPU_ACCOUNTING
174176
select ARCH_HAS_SCALED_CPUTIME

arch/s390/boot/compressed/head.S

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ mover_end:
4646

4747
.align 8
4848
.Lstack:
49-
.quad 0x8000 + (1<<(PAGE_SHIFT+THREAD_ORDER))
49+
.quad 0x8000 + (1<<(PAGE_SHIFT+THREAD_SIZE_ORDER))
5050
.Loffset:
5151
.quad 0x11000
5252
.Lmvsize:

arch/s390/configs/default_defconfig

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,8 @@ CONFIG_TRANSPARENT_HUGEPAGE=y
6666
CONFIG_CLEANCACHE=y
6767
CONFIG_FRONTSWAP=y
6868
CONFIG_CMA=y
69+
CONFIG_CMA_DEBUG=y
70+
CONFIG_CMA_DEBUGFS=y
6971
CONFIG_MEM_SOFT_DIRTY=y
7072
CONFIG_ZPOOL=m
7173
CONFIG_ZBUD=m
@@ -366,6 +368,8 @@ CONFIG_BPF_JIT=y
366368
CONFIG_NET_PKTGEN=m
367369
CONFIG_NET_TCPPROBE=m
368370
CONFIG_DEVTMPFS=y
371+
CONFIG_DMA_CMA=y
372+
CONFIG_CMA_SIZE_MBYTES=0
369373
CONFIG_CONNECTOR=y
370374
CONFIG_BLK_DEV_LOOP=m
371375
CONFIG_BLK_DEV_CRYPTOLOOP=m
@@ -438,7 +442,6 @@ CONFIG_TUN=m
438442
CONFIG_VETH=m
439443
CONFIG_VIRTIO_NET=m
440444
CONFIG_NLMON=m
441-
CONFIG_VHOST_NET=m
442445
# CONFIG_NET_VENDOR_ARC is not set
443446
# CONFIG_NET_VENDOR_CHELSIO is not set
444447
# CONFIG_NET_VENDOR_INTEL is not set
@@ -693,3 +696,4 @@ CONFIG_CMM=m
693696
CONFIG_APPLDATA_BASE=y
694697
CONFIG_KVM=m
695698
CONFIG_KVM_S390_UCONTROL=y
699+
CONFIG_VHOST_NET=m

arch/s390/configs/gcov_defconfig

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -362,6 +362,8 @@ CONFIG_BPF_JIT=y
362362
CONFIG_NET_PKTGEN=m
363363
CONFIG_NET_TCPPROBE=m
364364
CONFIG_DEVTMPFS=y
365+
CONFIG_DMA_CMA=y
366+
CONFIG_CMA_SIZE_MBYTES=0
365367
CONFIG_CONNECTOR=y
366368
CONFIG_BLK_DEV_LOOP=m
367369
CONFIG_BLK_DEV_CRYPTOLOOP=m
@@ -434,7 +436,6 @@ CONFIG_TUN=m
434436
CONFIG_VETH=m
435437
CONFIG_VIRTIO_NET=m
436438
CONFIG_NLMON=m
437-
CONFIG_VHOST_NET=m
438439
# CONFIG_NET_VENDOR_ARC is not set
439440
# CONFIG_NET_VENDOR_CHELSIO is not set
440441
# CONFIG_NET_VENDOR_INTEL is not set
@@ -633,3 +634,4 @@ CONFIG_CMM=m
633634
CONFIG_APPLDATA_BASE=y
634635
CONFIG_KVM=m
635636
CONFIG_KVM_S390_UCONTROL=y
637+
CONFIG_VHOST_NET=m

arch/s390/configs/performance_defconfig

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -362,6 +362,8 @@ CONFIG_BPF_JIT=y
362362
CONFIG_NET_PKTGEN=m
363363
CONFIG_NET_TCPPROBE=m
364364
CONFIG_DEVTMPFS=y
365+
CONFIG_DMA_CMA=y
366+
CONFIG_CMA_SIZE_MBYTES=0
365367
CONFIG_CONNECTOR=y
366368
CONFIG_BLK_DEV_LOOP=m
367369
CONFIG_BLK_DEV_CRYPTOLOOP=m
@@ -434,7 +436,6 @@ CONFIG_TUN=m
434436
CONFIG_VETH=m
435437
CONFIG_VIRTIO_NET=m
436438
CONFIG_NLMON=m
437-
CONFIG_VHOST_NET=m
438439
# CONFIG_NET_VENDOR_ARC is not set
439440
# CONFIG_NET_VENDOR_CHELSIO is not set
440441
# CONFIG_NET_VENDOR_INTEL is not set
@@ -632,3 +633,4 @@ CONFIG_CMM=m
632633
CONFIG_APPLDATA_BASE=y
633634
CONFIG_KVM=m
634635
CONFIG_KVM_S390_UCONTROL=y
636+
CONFIG_VHOST_NET=m

arch/s390/crypto/prng.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -507,8 +507,10 @@ static ssize_t prng_tdes_read(struct file *file, char __user *ubuf,
507507
prng_data->prngws.byte_counter += n;
508508
prng_data->prngws.reseed_counter += n;
509509

510-
if (copy_to_user(ubuf, prng_data->buf, chunk))
511-
return -EFAULT;
510+
if (copy_to_user(ubuf, prng_data->buf, chunk)) {
511+
ret = -EFAULT;
512+
break;
513+
}
512514

513515
nbytes -= chunk;
514516
ret += chunk;

arch/s390/hypfs/inode.c

Lines changed: 4 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
*
44
* Copyright IBM Corp. 2006, 2008
55
* Author(s): Michael Holzheu <[email protected]>
6+
* License: GPL
67
*/
78

89
#define KMSG_COMPONENT "hypfs"
@@ -18,7 +19,8 @@
1819
#include <linux/time.h>
1920
#include <linux/parser.h>
2021
#include <linux/sysfs.h>
21-
#include <linux/module.h>
22+
#include <linux/init.h>
23+
#include <linux/kobject.h>
2224
#include <linux/seq_file.h>
2325
#include <linux/mount.h>
2426
#include <linux/uio.h>
@@ -443,7 +445,6 @@ static struct file_system_type hypfs_type = {
443445
.mount = hypfs_mount,
444446
.kill_sb = hypfs_kill_super
445447
};
446-
MODULE_ALIAS_FS("s390_hypfs");
447448

448449
static const struct super_operations hypfs_s_ops = {
449450
.statfs = simple_statfs,
@@ -497,21 +498,4 @@ static int __init hypfs_init(void)
497498
pr_err("Initialization of hypfs failed with rc=%i\n", rc);
498499
return rc;
499500
}
500-
501-
static void __exit hypfs_exit(void)
502-
{
503-
unregister_filesystem(&hypfs_type);
504-
sysfs_remove_mount_point(hypervisor_kobj, "s390");
505-
hypfs_diag0c_exit();
506-
hypfs_sprp_exit();
507-
hypfs_vm_exit();
508-
hypfs_diag_exit();
509-
hypfs_dbfs_exit();
510-
}
511-
512-
module_init(hypfs_init)
513-
module_exit(hypfs_exit)
514-
515-
MODULE_LICENSE("GPL");
516-
MODULE_AUTHOR("Michael Holzheu <[email protected]>");
517-
MODULE_DESCRIPTION("s390 Hypervisor Filesystem");
501+
device_initcall(hypfs_init)

arch/s390/include/asm/Kbuild

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
2-
1+
generic-y += asm-offsets.h
32
generic-y += clkdev.h
3+
generic-y += dma-contiguous.h
44
generic-y += export.h
55
generic-y += irq_work.h
66
generic-y += mcs_spinlock.h

arch/s390/include/asm/asm-offsets.h

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)