mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-15 22:31:47 -04:00
Merge tag 's390-7.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
Pull s390 fixes from Alexander Gordeev: - Reject zero-length writes from userspace that corrupt Debug Facility buffers - Replace one s390 PCI maintainer - Remove SCLP_OFB Kconfig option and enable the guarded code unconditionally - Replace incorrect use of phys_to_folio() to virt_to_folio() in do_secure_storage_access() * tag 's390-7.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: s390/mm: Fix phys_to_folio() usage in do_secure_storage_access() s390/sclp: Remove SCLP_OFB Kconfig option MAINTAINERS: Replace one of the maintainers for s390/pci s390/debug: Reject zero-length input in debug_input_flush_fn() s390/debug: Reject zero-length input before trimming a newline
This commit is contained in:
@@ -23555,7 +23555,7 @@ F: drivers/s390/net/
|
||||
|
||||
S390 PCI SUBSYSTEM
|
||||
M: Niklas Schnelle <schnelle@linux.ibm.com>
|
||||
M: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
|
||||
M: Gerd Bayer <gbayer@linux.ibm.com>
|
||||
L: linux-s390@vger.kernel.org
|
||||
S: Supported
|
||||
F: Documentation/arch/s390/pci.rst
|
||||
|
||||
@@ -1414,6 +1414,9 @@ static inline char *debug_get_user_string(const char __user *user_buf,
|
||||
{
|
||||
char *buffer;
|
||||
|
||||
if (!user_len)
|
||||
return ERR_PTR(-EINVAL);
|
||||
|
||||
buffer = memdup_user_nul(user_buf, user_len);
|
||||
if (IS_ERR(buffer))
|
||||
return buffer;
|
||||
@@ -1584,6 +1587,11 @@ static int debug_input_flush_fn(debug_info_t *id, struct debug_view *view,
|
||||
char input_buf[1];
|
||||
int rc = user_len;
|
||||
|
||||
if (!user_len) {
|
||||
rc = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (user_len > 0x10000)
|
||||
user_len = 0x10000;
|
||||
if (*offset != 0) {
|
||||
|
||||
@@ -438,7 +438,7 @@ void do_secure_storage_access(struct pt_regs *regs)
|
||||
panic("Unexpected PGM 0x3d with TEID bit 61=0");
|
||||
}
|
||||
if (is_kernel_fault(regs)) {
|
||||
folio = phys_to_folio(addr);
|
||||
folio = virt_to_folio((void *)addr);
|
||||
if (unlikely(!folio_try_get(folio)))
|
||||
return;
|
||||
rc = uv_convert_from_secure(folio_to_phys(folio));
|
||||
|
||||
@@ -85,14 +85,6 @@ config HMC_DRV
|
||||
transfer cache size from its default value 0.5MB to N bytes. If N
|
||||
is zero, then no caching is performed.
|
||||
|
||||
config SCLP_OFB
|
||||
def_bool n
|
||||
prompt "Support for Open-for-Business SCLP Event"
|
||||
depends on S390
|
||||
help
|
||||
This option enables the Open-for-Business interface to the s390
|
||||
Service Element.
|
||||
|
||||
config S390_UV_UAPI
|
||||
def_tristate m
|
||||
prompt "Ultravisor userspace API"
|
||||
|
||||
@@ -80,14 +80,11 @@ static void sclp_conf_receiver_fn(struct evbuf_header *evbuf)
|
||||
|
||||
static struct sclp_register sclp_conf_register =
|
||||
{
|
||||
#ifdef CONFIG_SCLP_OFB
|
||||
.send_mask = EVTYP_CONFMGMDATA_MASK,
|
||||
#endif
|
||||
.receive_mask = EVTYP_CONFMGMDATA_MASK,
|
||||
.receiver_fn = sclp_conf_receiver_fn,
|
||||
};
|
||||
|
||||
#ifdef CONFIG_SCLP_OFB
|
||||
static int sclp_ofb_send_req(char *ev_data, size_t len)
|
||||
{
|
||||
static DEFINE_MUTEX(send_mutex);
|
||||
@@ -143,11 +140,9 @@ static const struct bin_attribute ofb_bin_attr = {
|
||||
},
|
||||
.write = sysfs_ofb_data_write,
|
||||
};
|
||||
#endif
|
||||
|
||||
static int __init sclp_ofb_setup(void)
|
||||
{
|
||||
#ifdef CONFIG_SCLP_OFB
|
||||
struct kset *ofb_kset;
|
||||
int rc;
|
||||
|
||||
@@ -159,7 +154,6 @@ static int __init sclp_ofb_setup(void)
|
||||
kset_unregister(ofb_kset);
|
||||
return rc;
|
||||
}
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user