From: Victor Gu <xigu(a)marvell.com>
The PCI configuration space read/write functions were special casing
the situation where PCI_SLOT(devfn) != 0, and returned
PCIBIOS_DEVICE_NOT_FOUND in this case.
However, while this is what is intended for the root bus, it is not
intended for the child busses, as it prevents discovering devices with
PCI_SLOT(x) != 0. Therefore, we return PCIBIOS_DEVICE_NOT_FOUND only
if we're on the root bus.
Fixes: 8c39d710363c1 ("PCI: aardvark: Add Aardvark PCI host controller driver")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Victor Gu <xigu(a)marvell.com>
Reviewed-by: Wilson Ding <dingwei(a)marvell.com>
Reviewed-by: Nadav Haklai <nadavh(a)marvell.com>
[Thomas: tweak commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni(a)bootlin.com>
---
Changes since v3:
- Change to no longer depend on the introduction of
advk_pcie_valid_device(), which we do not want to push to stable.
Changes since v2:
- The logic has been factorized into a advk_pcie_valid_device()
helper in a previous patch, so this patch was adjusted accordingly.
---
drivers/pci/host/pci-aardvark.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/pci/host/pci-aardvark.c b/drivers/pci/host/pci-aardvark.c
index b04d37b3c5de..b72f15c99793 100644
--- a/drivers/pci/host/pci-aardvark.c
+++ b/drivers/pci/host/pci-aardvark.c
@@ -437,7 +437,7 @@ static int advk_pcie_rd_conf(struct pci_bus *bus, u32 devfn,
u32 reg;
int ret;
- if (PCI_SLOT(devfn) != 0) {
+ if ((bus->number == pcie->root_bus_nr) && PCI_SLOT(devfn) != 0) {
*val = 0xffffffff;
return PCIBIOS_DEVICE_NOT_FOUND;
}
@@ -491,7 +491,7 @@ static int advk_pcie_wr_conf(struct pci_bus *bus, u32 devfn,
int offset;
int ret;
- if (PCI_SLOT(devfn) != 0)
+ if ((bus->number == pcie->root_bus_nr) && PCI_SLOT(devfn) != 0)
return PCIBIOS_DEVICE_NOT_FOUND;
if (where % size)
--
2.14.3
In other to mimic other PCIe host controller drivers, introduce an
advk_pcie_valid_device() helper, used in the configuration read/write
functions.
This patch by itself is not a fix, but it is required for a follow-up
patch that is a fix, hence the Fixes tag and the Cc to stable.
Fixes: 8c39d710363c1 ("PCI: aardvark: Add Aardvark PCI host controller driver")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni(a)bootlin.com>
---
Changes since v3:
- Make the new helper return a bool instead of int
Changes since v2:
- New patch
---
drivers/pci/host/pci-aardvark.c | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/drivers/pci/host/pci-aardvark.c b/drivers/pci/host/pci-aardvark.c
index b04d37b3c5de..82bff709a4b3 100644
--- a/drivers/pci/host/pci-aardvark.c
+++ b/drivers/pci/host/pci-aardvark.c
@@ -430,6 +430,15 @@ static int advk_pcie_wait_pio(struct advk_pcie *pcie)
return -ETIMEDOUT;
}
+static bool advk_pcie_valid_device(struct advk_pcie *pcie, struct pci_bus *bus,
+ int devfn)
+{
+ if (PCI_SLOT(devfn) != 0)
+ return false;
+
+ return true;
+}
+
static int advk_pcie_rd_conf(struct pci_bus *bus, u32 devfn,
int where, int size, u32 *val)
{
@@ -437,7 +446,7 @@ static int advk_pcie_rd_conf(struct pci_bus *bus, u32 devfn,
u32 reg;
int ret;
- if (PCI_SLOT(devfn) != 0) {
+ if (!advk_pcie_valid_device(pcie, bus, devfn)) {
*val = 0xffffffff;
return PCIBIOS_DEVICE_NOT_FOUND;
}
@@ -491,7 +500,7 @@ static int advk_pcie_wr_conf(struct pci_bus *bus, u32 devfn,
int offset;
int ret;
- if (PCI_SLOT(devfn) != 0)
+ if (!advk_pcie_valid_device(pcie, bus, devfn))
return PCIBIOS_DEVICE_NOT_FOUND;
if (where % size)
--
2.14.3
From: "Steven Rostedt (VMware)" <rostedt(a)goodmis.org>
The ring buffer is made up of a link list of pages. When making the ring
buffer bigger, it will allocate all the pages it needs before adding to the
ring buffer, and if it fails, it frees them and returns an error. This makes
increasing the ring buffer size an all or nothing action. When this was
first created, the pages were allocated with "NORETRY". This was to not
cause any Out-Of-Memory (OOM) actions from allocating the ring buffer. But
NORETRY was too strict, as the ring buffer would fail to expand even when
there's memory available, but was taken up in the page cache.
Commit 848618857d253 ("tracing/ring_buffer: Try harder to allocate") changed
the allocating from NORETRY to RETRY_MAYFAIL. The RETRY_MAYFAIL would
allocate from the page cache, but if there was no memory available, it would
simple fail the allocation and not trigger an OOM.
This worked fine, but had one problem. As the ring buffer would allocate one
page at a time, it could take up all memory in the system before it failed
to allocate and free that memory. If the allocation is happening and the
ring buffer allocates all memory and then tries to take more than available,
its allocation will not trigger an OOM, but if there's any allocation that
happens someplace else, that could trigger an OOM, even though once the ring
buffer's allocation fails, it would free up all the previous memory it tried
to allocate, and allow other memory allocations to succeed.
Commit d02bd27bd33dd ("mm/page_alloc.c: calculate 'available' memory in a
separate function") separated out si_mem_availble() as a separate function
that could be used to see how much memory is available in the system. Using
this function to make sure that the ring buffer could be allocated before it
tries to allocate pages we can avoid allocating all memory in the system and
making it vulnerable to OOMs if other allocations are taking place.
Link: http://lkml.kernel.org/r/1522320104-6573-1-git-send-email-zhaoyang.huang@sp…
CC: stable(a)vger.kernel.org
Cc: linux-mm(a)kvack.org
Fixes: 848618857d253 ("tracing/ring_buffer: Try harder to allocate")
Requires: d02bd27bd33dd ("mm/page_alloc.c: calculate 'available' memory in a separate function")
Reported-by: Zhaoyang Huang <huangzhaoyang(a)gmail.com>
Tested-by: Joel Fernandes <joelaf(a)google.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt(a)goodmis.org>
---
kernel/trace/ring_buffer.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
index 515be03e3009..966128f02121 100644
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -1164,6 +1164,11 @@ static int __rb_allocate_pages(long nr_pages, struct list_head *pages, int cpu)
struct buffer_page *bpage, *tmp;
long i;
+ /* Check if the available memory is there first */
+ i = si_mem_available();
+ if (i < nr_pages)
+ return -ENOMEM;
+
for (i = 0; i < nr_pages; i++) {
struct page *page;
/*
--
2.15.1
From: "Steven Rostedt (VMware)" <rostedt(a)goodmis.org>
Commit 841a915d20c7b2 ("printf: Do not have bprintf dereference pointers")
would preprocess various pointers that are dereferenced in the bprintf()
because the recording and printing are done at two different times. Some
pointers stayed dereferenced in the ring buffer because user space could
handle them (namely "%pS" and friends). Pointers that are not dereferenced
should not be processed immediately but instead just saved directly.
Cc: stable(a)vger.kernel.org
Fixes: 841a915d20c7b2 ("printf: Do not have bprintf dereference pointers")
Signed-off-by: Steven Rostedt (VMware) <rostedt(a)goodmis.org>
---
lib/vsprintf.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index d7a708f82559..89f8a4a4b770 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -2591,6 +2591,8 @@ int vbin_printf(u32 *bin_buf, size_t size, const char *fmt, va_list args)
case 's':
case 'F':
case 'f':
+ case 'x':
+ case 'K':
save_arg(void *);
break;
default:
@@ -2765,6 +2767,8 @@ int bstr_printf(char *buf, size_t size, const char *fmt, const u32 *bin_buf)
case 's':
case 'F':
case 'f':
+ case 'x':
+ case 'K':
process = true;
break;
default:
--
2.15.1
On Fri, Mar 30, 2018 at 08:37:45PM +0300, Michael S. Tsirkin wrote:
> get_user_pages_fast is supposed to be a faster drop-in equivalent of
> get_user_pages. As such, callers expect it to return a negative return
> code when passed an invalid address, and never expect it to
> return 0 when passed a positive number of pages, since
> its documentation says:
>
> * Returns number of pages pinned. This may be fewer than the number
> * requested. If nr_pages is 0 or negative, returns 0. If no pages
> * were pinned, returns -errno.
>
> Unfortunately this is not what the implementation does: it returns 0 if
> passed a kernel address, confusing callers: for example, the following
> is pretty common but does not appear to do the right thing with a kernel
> address:
>
> ret = get_user_pages_fast(addr, 1, writeable, &page);
> if (ret < 0)
> return ret;
>
> Change get_user_pages_fast to return -EFAULT when supplied a
> kernel address to make it match expectations.
>
> __get_user_pages_fast does not seem to be used like this, but let's
> change __get_user_pages_fast as well for consistency and to match
> documentation.
>
> Lightly tested.
>
> Cc: Kirill A. Shutemov <kirill.shutemov(a)linux.intel.com>
> Cc: Andrew Morton <akpm(a)linux-foundation.org>
> Cc: Huang Ying <ying.huang(a)intel.com>
> Cc: Jonathan Corbet <corbet(a)lwn.net>
> Cc: Linus Torvalds <torvalds(a)linux-foundation.org>
> Cc: Peter Zijlstra <peterz(a)infradead.org>
> Cc: Thomas Gleixner <tglx(a)linutronix.de>
> Cc: Thorsten Leemhuis <regressions(a)leemhuis.info>
> Cc: stable(a)vger.kernel.org
> Fixes: 5b65c4677a57 ("mm, x86/mm: Fix performance regression in get_user_pages_fast()")
> Reported-by: syzbot+6304bf97ef436580fede(a)syzkaller.appspotmail.com
> Signed-off-by: Michael S. Tsirkin <mst(a)redhat.com>
Any feedback on this? As this fixes a bug in vhost, I'll merge
through the vhost tree unless someone objects.
> ---
> mm/gup.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/mm/gup.c b/mm/gup.c
> index 6afae32..5642521 100644
> --- a/mm/gup.c
> +++ b/mm/gup.c
> @@ -1749,6 +1749,9 @@ int __get_user_pages_fast(unsigned long start, int nr_pages, int write,
> unsigned long flags;
> int nr = 0;
>
> + if (nr_pages <= 0)
> + return 0;
> +
> start &= PAGE_MASK;
> addr = start;
> len = (unsigned long) nr_pages << PAGE_SHIFT;
> @@ -1756,7 +1759,7 @@ int __get_user_pages_fast(unsigned long start, int nr_pages, int write,
>
> if (unlikely(!access_ok(write ? VERIFY_WRITE : VERIFY_READ,
> (void __user *)start, len)))
> - return 0;
> + return -EFAULT;
>
> /*
> * Disable interrupts. We use the nested form as we can already have
> @@ -1806,9 +1809,12 @@ int get_user_pages_fast(unsigned long start, int nr_pages, int write,
> len = (unsigned long) nr_pages << PAGE_SHIFT;
> end = start + len;
>
> + if (nr_pages <= 0)
> + return 0;
> +
> if (unlikely(!access_ok(write ? VERIFY_WRITE : VERIFY_READ,
> (void __user *)start, len)))
> - return 0;
> + return -EFAULT;
>
> if (gup_fast_permitted(start, nr_pages, write)) {
> local_irq_disable();
> --
> MST
This is a note to let you know that I've just added the patch titled
Revert "PCI/MSI: Stop disabling MSI/MSI-X in pci_device_shutdown()"
to the 3.18-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=sum…
The filename of the patch is:
revert-pci-msi-stop-disabling-msi-msi-x-in-pci_device_shutdown.patch
and it can be found in the queue-3.18 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <stable(a)vger.kernel.org> know about it.
>From foo@baz Fri Apr 6 10:38:31 CEST 2018
From: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Date: Wed, 4 Apr 2018 17:26:27 +0200
Subject: Revert "PCI/MSI: Stop disabling MSI/MSI-X in pci_device_shutdown()"
From: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
This reverts commit 058645e2f0647c85f2bfd577771546d198739fd2 which was
commit fda78d7a0ead144f4b2cdb582dcba47911f4952c upstream.
The dependancy tree is just too messy here, just drop it from this
kernel as it's not really needed here.
Reported-by: Ben Hutchings <ben.hutchings(a)codethink.co.uk>
Cc: Prarit Bhargava <prarit(a)redhat.com>
Cc: Bjorn Helgaas <bhelgaas(a)google.com>
Cc: Alex Williamson <alex.williamson(a)redhat.com>
Cc: David Arcari <darcari(a)redhat.com>
Cc: Myron Stowe <mstowe(a)redhat.com>
Cc: Lukas Wunner <lukas(a)wunner.de>
Cc: Keith Busch <keith.busch(a)intel.com>
Cc: Mika Westerberg <mika.westerberg(a)linux.intel.com>
Cc: Sasha Levin <alexander.levin(a)microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/pci/pci-driver.c | 2 ++
1 file changed, 2 insertions(+)
--- a/drivers/pci/pci-driver.c
+++ b/drivers/pci/pci-driver.c
@@ -450,6 +450,8 @@ static void pci_device_shutdown(struct d
if (drv && drv->shutdown)
drv->shutdown(pci_dev);
+ pci_msi_shutdown(pci_dev);
+ pci_msix_shutdown(pci_dev);
#ifdef CONFIG_KEXEC
/*
Patches currently in stable-queue which might be from gregkh(a)linuxfoundation.org are
queue-3.18/documentation-pinctrl-palmas-add-ti-palmas-powerhold-override-property-definition.patch
queue-3.18/netfilter-x_tables-add-and-use-xt_check_proc_name.patch
queue-3.18/usb-serial-ftdi_sio-add-support-for-harman-firmwarehubemulator.patch
queue-3.18/media-v4l2-compat-ioctl32.c-copy-m.userptr-in-put_v4l2_plane32.patch
queue-3.18/tty-vt-fix-up-tabstops-properly.patch
queue-3.18/media-v4l2-compat-ioctl32.c-avoid-sizeof-type.patch
queue-3.18/usb-gadget-change-len-to-size_t-on-alloc_ep_req.patch
queue-3.18/vt-change-sgr-21-to-follow-the-standards.patch
queue-3.18/alsa-aloop-fix-access-to-not-yet-ready-substream-via-cable.patch
queue-3.18/media-v4l2-compat-ioctl32.c-drop-pr_info-for-unknown-buffer-type.patch
queue-3.18/ipv6-fix-access-to-non-linear-packet-in-ndisc_fill_redirect_hdr_option.patch
queue-3.18/net-only-honor-ifindex-in-ip_pktinfo-if-non-0.patch
queue-3.18/libata-disable-lpm-for-crucial-bx100-ssd-500gb-drive.patch
queue-3.18/media-v4l2-compat-ioctl32-use-compat_u64-for-video-standard.patch
queue-3.18/skbuff-fix-not-waking-applications-when-errors-are-enqueued.patch
queue-3.18/xfrm_user-uncoditionally-validate-esn-replay-attribute-struct.patch
queue-3.18/libata-apply-nolpm-quirk-to-crucial-m500-480-and-960gb-ssds.patch
queue-3.18/crypto-x86-cast5-avx-fix-ecb-encryption-when-long-sg-follows-short-one.patch
queue-3.18/bluetooth-fix-missing-encryption-refresh-on-security-request.patch
queue-3.18/media-v4l2-compat-ioctl32.c-add-missing-vidioc_prepare_buf.patch
queue-3.18/s390-qeth-when-thread-completes-wake-up-all-waiters.patch
queue-3.18/libata-fix-length-validation-of-atapi-relayed-scsi-commands.patch
queue-3.18/revert-arm-dts-omap3-n900-fix-the-audio-codec-s-reset-pin.patch
queue-3.18/vb2-v4l2_buf_flag_done-is-set-after-dqbuf.patch
queue-3.18/mtd-jedec_probe-fix-crash-in-jedec_read_mfr.patch
queue-3.18/input-i8042-add-lenovo-thinkpad-l460-to-i8042-reset-list.patch
queue-3.18/perf-hwbp-simplify-the-perf-hwbp-code-fix-documentation.patch
queue-3.18/tracing-probeevent-fix-to-support-minus-offset-from-symbol.patch
queue-3.18/can-cc770-fix-use-after-free-in-cc770_tx_interrupt.patch
queue-3.18/revert-pci-msi-stop-disabling-msi-msi-x-in-pci_device_shutdown.patch
queue-3.18/s390-qeth-lock-read-device-while-queueing-next-buffer.patch
queue-3.18/scsi-virtio_scsi-always-read-vpd-pages-for-multiqueue-too.patch
queue-3.18/media-usbtv-prevent-double-free-in-error-case.patch
queue-3.18/libata-apply-nolpm-quirk-to-crucial-mx100-512gb-ssds.patch
queue-3.18/media-v4l2-compat-ioctl32.c-refactor-compat-ioctl32-logic.patch
queue-3.18/media-v4l2-ctrls-fix-sparse-warning.patch
queue-3.18/media-v4l2-compat-ioctl32.c-fix-ctrl_is_pointer.patch
queue-3.18/revert-arm-dts-am335x-pepper-fix-the-audio-codec-s-reset-pin.patch
queue-3.18/alsa-pcm-potential-uninitialized-return-values.patch
queue-3.18/usb-gadget-define-free_ep_req-as-universal-function.patch
queue-3.18/libata-modify-quirks-for-mx100-to-limit-ncq_trim-quirk-to-mu01-version.patch
queue-3.18/revert-genirq-use-irqd_get_trigger_type-to-compare-the.patch
queue-3.18/media-v4l2-compat-ioctl32.c-move-helper-functions-to-__get-put_v4l2_format32.patch
queue-3.18/xfrm-refuse-to-insert-32-bit-userspace-socket-policies-on-64-bit-systems.patch
queue-3.18/proc-revert-proc-pid-maps-annotation.patch
queue-3.18/l2tp-do-not-accept-arbitrary-sockets.patch
queue-3.18/can-cc770-fix-queue-stall-dropped-rtr-reply.patch
queue-3.18/media-media-v4l2-ctrls-volatiles-should-not-generate-ch_value.patch
queue-3.18/netfilter-bridge-ebt_among-add-more-missing-match-size-checks.patch
queue-3.18/netlink-avoid-a-double-skb-free-in-genlmsg_mcast.patch
queue-3.18/libata-enable-queued-trim-for-samsung-ssd-860.patch
queue-3.18/staging-ncpfs-memory-corruption-in-ncp_read_kernel.patch
queue-3.18/md-raid10-reset-the-first-at-the-end-of-loop.patch
queue-3.18/drm-udl-properly-check-framebuffer-mmap-offsets.patch
queue-3.18/can-cc770-fix-stalls-on-rt-linux-remove-redundant-irq-ack.patch
queue-3.18/kprobes-x86-fix-to-set-rwx-bits-correctly-before-releasing-trampoline.patch
queue-3.18/team-fix-double-free-in-error-path.patch
queue-3.18/brcmfmac-fix-p2p_device-ethernet-address-generation.patch
queue-3.18/usb-gadget-fix-usb_ep_align_maybe-endianness-and-new-usb_ep_align.patch
queue-3.18/revert-led-core-fix-brightness-setting-when-setting-delay_off-0.patch
queue-3.18/fs-proc-stop-trying-to-report-thread-stacks.patch
queue-3.18/xhci-fix-ring-leak-in-failure-path-of-xhci_alloc_virt_device.patch
queue-3.18/alsa-usb-audio-fix-parsing-descriptor-of-uac2-processing-unit.patch
queue-3.18/mei-remove-dev_err-message-on-an-unsupported-ioctl.patch
queue-3.18/net-iucv-free-memory-obtained-by-kzalloc.patch
queue-3.18/alsa-aloop-sync-stale-timer-before-release.patch
queue-3.18/net-ethernet-arc-fix-a-potential-memory-leak-if-an-optional-regulator-is-deferred.patch
queue-3.18/s390-qeth-on-channel-error-reject-further-cmd-requests.patch
queue-3.18/media-v4l2-compat-ioctl32.c-don-t-copy-back-the-result-for-certain-errors.patch
queue-3.18/scsi-sg-don-t-return-bogus-sg_requests.patch
queue-3.18/net-xfrm-use-preempt-safe-this_cpu_read-in-ipcomp_alloc_tfms.patch
queue-3.18/dccp-check-sk-for-closed-state-in-dccp_sendmsg.patch
queue-3.18/media-v4l2-compat-ioctl32.c-make-ctrl_is_pointer-work-for-subdevs.patch
queue-3.18/usb-gadget-f_hid-fix-prevent-accessing-released-memory.patch
queue-3.18/arm-dts-dra7-add-power-hold-and-power-controller-properties-to-palmas.patch
queue-3.18/input-i8042-enable-mux-on-sony-vaio-vgn-cs-series-to-fix-touchpad.patch
queue-3.18/media-v4l2-compat-ioctl32.c-fix-the-indentation.patch
queue-3.18/net-fec-fix-unbalanced-pm-runtime-calls.patch
queue-3.18/media-v4l2-compat-ioctl32-copy-v4l2_window-global_alpha.patch
queue-3.18/media-v4l2-ioctl.c-don-t-copy-back-the-result-for-enotty.patch
queue-3.18/alsa-pcm-use-dma_bytes-as-size-parameter-in-dma_mmap_coherent.patch
queue-3.18/libata-make-crucial-bx100-500gb-lpm-quirk-apply-to-all-firmware-versions.patch
queue-3.18/parport_pc-add-support-for-wch-ch382l-pci-e-single-parallel-port-card.patch
queue-3.18/libata-remove-warn-for-dma-or-pio-command-without-data.patch
queue-3.18/usb-gadget-align-buffer-size-when-allocating-for-out-endpoint.patch
queue-3.18/s390-qeth-free-netdevice-when-removing-a-card.patch
queue-3.18/usb-serial-ftdi_sio-add-rt-systems-vx-8-cable.patch
queue-3.18/usb-serial-cp210x-add-eldat-easywave-rx09-id.patch
queue-3.18/media-v4l2-compat-ioctl32.c-copy-clip-list-in-put_v4l2_window32.patch
queue-3.18/kvm-x86-fix-icebp-instruction-handling.patch
queue-3.18/crypto-ahash-fix-early-termination-in-hash-walk.patch
queue-3.18/media-v4l2-compat-ioctl32-initialize-a-reserved-field.patch
queue-3.18/partitions-msdos-unable-to-mount-ufs-44bsd-partitions.patch
This is a note to let you know that I've just added the patch titled
Revert "ARM: dts: am335x-pepper: Fix the audio CODEC's reset pin"
to the 3.18-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=sum…
The filename of the patch is:
revert-arm-dts-am335x-pepper-fix-the-audio-codec-s-reset-pin.patch
and it can be found in the queue-3.18 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <stable(a)vger.kernel.org> know about it.
>From foo@baz Fri Apr 6 10:38:31 CEST 2018
From: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Date: Fri, 6 Apr 2018 08:44:12 +0200
Subject: Revert "ARM: dts: am335x-pepper: Fix the audio CODEC's reset pin"
From: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
This reverts commit 2d8c5aa6dc436f6fc1c8b6c0feaee4b0f60cdf38 which was
comit e153db03c6b7a035c797bcdf35262586f003ee93 upstream.
It requires a driver that was not merged until 4.16, so remove it from
this stable tree as it is pointless.
Reported-by: Ben Hutchings <ben.hutchings(a)codethink.co.uk>
Cc: Andrew F. Davis <afd(a)ti.com>
Cc: Tony Lindgren <tony(a)atomide.com>
Cc: Sasha Levin <alexander.levin(a)microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
arch/arm/boot/dts/am335x-pepper.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/arch/arm/boot/dts/am335x-pepper.dts
+++ b/arch/arm/boot/dts/am335x-pepper.dts
@@ -138,7 +138,7 @@
&audio_codec {
status = "okay";
- reset-gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
+ gpio-reset = <&gpio1 16 GPIO_ACTIVE_LOW>;
AVDD-supply = <&ldo3_reg>;
IOVDD-supply = <&ldo3_reg>;
DRVDD-supply = <&ldo3_reg>;
Patches currently in stable-queue which might be from gregkh(a)linuxfoundation.org are
queue-3.18/documentation-pinctrl-palmas-add-ti-palmas-powerhold-override-property-definition.patch
queue-3.18/netfilter-x_tables-add-and-use-xt_check_proc_name.patch
queue-3.18/usb-serial-ftdi_sio-add-support-for-harman-firmwarehubemulator.patch
queue-3.18/media-v4l2-compat-ioctl32.c-copy-m.userptr-in-put_v4l2_plane32.patch
queue-3.18/tty-vt-fix-up-tabstops-properly.patch
queue-3.18/media-v4l2-compat-ioctl32.c-avoid-sizeof-type.patch
queue-3.18/usb-gadget-change-len-to-size_t-on-alloc_ep_req.patch
queue-3.18/vt-change-sgr-21-to-follow-the-standards.patch
queue-3.18/alsa-aloop-fix-access-to-not-yet-ready-substream-via-cable.patch
queue-3.18/media-v4l2-compat-ioctl32.c-drop-pr_info-for-unknown-buffer-type.patch
queue-3.18/ipv6-fix-access-to-non-linear-packet-in-ndisc_fill_redirect_hdr_option.patch
queue-3.18/net-only-honor-ifindex-in-ip_pktinfo-if-non-0.patch
queue-3.18/libata-disable-lpm-for-crucial-bx100-ssd-500gb-drive.patch
queue-3.18/media-v4l2-compat-ioctl32-use-compat_u64-for-video-standard.patch
queue-3.18/skbuff-fix-not-waking-applications-when-errors-are-enqueued.patch
queue-3.18/xfrm_user-uncoditionally-validate-esn-replay-attribute-struct.patch
queue-3.18/libata-apply-nolpm-quirk-to-crucial-m500-480-and-960gb-ssds.patch
queue-3.18/crypto-x86-cast5-avx-fix-ecb-encryption-when-long-sg-follows-short-one.patch
queue-3.18/bluetooth-fix-missing-encryption-refresh-on-security-request.patch
queue-3.18/media-v4l2-compat-ioctl32.c-add-missing-vidioc_prepare_buf.patch
queue-3.18/s390-qeth-when-thread-completes-wake-up-all-waiters.patch
queue-3.18/libata-fix-length-validation-of-atapi-relayed-scsi-commands.patch
queue-3.18/revert-arm-dts-omap3-n900-fix-the-audio-codec-s-reset-pin.patch
queue-3.18/vb2-v4l2_buf_flag_done-is-set-after-dqbuf.patch
queue-3.18/mtd-jedec_probe-fix-crash-in-jedec_read_mfr.patch
queue-3.18/input-i8042-add-lenovo-thinkpad-l460-to-i8042-reset-list.patch
queue-3.18/perf-hwbp-simplify-the-perf-hwbp-code-fix-documentation.patch
queue-3.18/tracing-probeevent-fix-to-support-minus-offset-from-symbol.patch
queue-3.18/can-cc770-fix-use-after-free-in-cc770_tx_interrupt.patch
queue-3.18/revert-pci-msi-stop-disabling-msi-msi-x-in-pci_device_shutdown.patch
queue-3.18/s390-qeth-lock-read-device-while-queueing-next-buffer.patch
queue-3.18/scsi-virtio_scsi-always-read-vpd-pages-for-multiqueue-too.patch
queue-3.18/media-usbtv-prevent-double-free-in-error-case.patch
queue-3.18/libata-apply-nolpm-quirk-to-crucial-mx100-512gb-ssds.patch
queue-3.18/media-v4l2-compat-ioctl32.c-refactor-compat-ioctl32-logic.patch
queue-3.18/media-v4l2-ctrls-fix-sparse-warning.patch
queue-3.18/media-v4l2-compat-ioctl32.c-fix-ctrl_is_pointer.patch
queue-3.18/revert-arm-dts-am335x-pepper-fix-the-audio-codec-s-reset-pin.patch
queue-3.18/alsa-pcm-potential-uninitialized-return-values.patch
queue-3.18/usb-gadget-define-free_ep_req-as-universal-function.patch
queue-3.18/libata-modify-quirks-for-mx100-to-limit-ncq_trim-quirk-to-mu01-version.patch
queue-3.18/revert-genirq-use-irqd_get_trigger_type-to-compare-the.patch
queue-3.18/media-v4l2-compat-ioctl32.c-move-helper-functions-to-__get-put_v4l2_format32.patch
queue-3.18/xfrm-refuse-to-insert-32-bit-userspace-socket-policies-on-64-bit-systems.patch
queue-3.18/proc-revert-proc-pid-maps-annotation.patch
queue-3.18/l2tp-do-not-accept-arbitrary-sockets.patch
queue-3.18/can-cc770-fix-queue-stall-dropped-rtr-reply.patch
queue-3.18/media-media-v4l2-ctrls-volatiles-should-not-generate-ch_value.patch
queue-3.18/netfilter-bridge-ebt_among-add-more-missing-match-size-checks.patch
queue-3.18/netlink-avoid-a-double-skb-free-in-genlmsg_mcast.patch
queue-3.18/libata-enable-queued-trim-for-samsung-ssd-860.patch
queue-3.18/staging-ncpfs-memory-corruption-in-ncp_read_kernel.patch
queue-3.18/md-raid10-reset-the-first-at-the-end-of-loop.patch
queue-3.18/drm-udl-properly-check-framebuffer-mmap-offsets.patch
queue-3.18/can-cc770-fix-stalls-on-rt-linux-remove-redundant-irq-ack.patch
queue-3.18/kprobes-x86-fix-to-set-rwx-bits-correctly-before-releasing-trampoline.patch
queue-3.18/team-fix-double-free-in-error-path.patch
queue-3.18/brcmfmac-fix-p2p_device-ethernet-address-generation.patch
queue-3.18/usb-gadget-fix-usb_ep_align_maybe-endianness-and-new-usb_ep_align.patch
queue-3.18/revert-led-core-fix-brightness-setting-when-setting-delay_off-0.patch
queue-3.18/fs-proc-stop-trying-to-report-thread-stacks.patch
queue-3.18/xhci-fix-ring-leak-in-failure-path-of-xhci_alloc_virt_device.patch
queue-3.18/alsa-usb-audio-fix-parsing-descriptor-of-uac2-processing-unit.patch
queue-3.18/mei-remove-dev_err-message-on-an-unsupported-ioctl.patch
queue-3.18/net-iucv-free-memory-obtained-by-kzalloc.patch
queue-3.18/alsa-aloop-sync-stale-timer-before-release.patch
queue-3.18/net-ethernet-arc-fix-a-potential-memory-leak-if-an-optional-regulator-is-deferred.patch
queue-3.18/s390-qeth-on-channel-error-reject-further-cmd-requests.patch
queue-3.18/media-v4l2-compat-ioctl32.c-don-t-copy-back-the-result-for-certain-errors.patch
queue-3.18/scsi-sg-don-t-return-bogus-sg_requests.patch
queue-3.18/net-xfrm-use-preempt-safe-this_cpu_read-in-ipcomp_alloc_tfms.patch
queue-3.18/dccp-check-sk-for-closed-state-in-dccp_sendmsg.patch
queue-3.18/media-v4l2-compat-ioctl32.c-make-ctrl_is_pointer-work-for-subdevs.patch
queue-3.18/usb-gadget-f_hid-fix-prevent-accessing-released-memory.patch
queue-3.18/arm-dts-dra7-add-power-hold-and-power-controller-properties-to-palmas.patch
queue-3.18/input-i8042-enable-mux-on-sony-vaio-vgn-cs-series-to-fix-touchpad.patch
queue-3.18/media-v4l2-compat-ioctl32.c-fix-the-indentation.patch
queue-3.18/net-fec-fix-unbalanced-pm-runtime-calls.patch
queue-3.18/media-v4l2-compat-ioctl32-copy-v4l2_window-global_alpha.patch
queue-3.18/media-v4l2-ioctl.c-don-t-copy-back-the-result-for-enotty.patch
queue-3.18/alsa-pcm-use-dma_bytes-as-size-parameter-in-dma_mmap_coherent.patch
queue-3.18/libata-make-crucial-bx100-500gb-lpm-quirk-apply-to-all-firmware-versions.patch
queue-3.18/parport_pc-add-support-for-wch-ch382l-pci-e-single-parallel-port-card.patch
queue-3.18/libata-remove-warn-for-dma-or-pio-command-without-data.patch
queue-3.18/usb-gadget-align-buffer-size-when-allocating-for-out-endpoint.patch
queue-3.18/s390-qeth-free-netdevice-when-removing-a-card.patch
queue-3.18/usb-serial-ftdi_sio-add-rt-systems-vx-8-cable.patch
queue-3.18/usb-serial-cp210x-add-eldat-easywave-rx09-id.patch
queue-3.18/media-v4l2-compat-ioctl32.c-copy-clip-list-in-put_v4l2_window32.patch
queue-3.18/kvm-x86-fix-icebp-instruction-handling.patch
queue-3.18/crypto-ahash-fix-early-termination-in-hash-walk.patch
queue-3.18/media-v4l2-compat-ioctl32-initialize-a-reserved-field.patch
queue-3.18/partitions-msdos-unable-to-mount-ufs-44bsd-partitions.patch
This is a note to let you know that I've just added the patch titled
spi: davinci: fix up dma_mapping_error() incorrect patch
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=sum…
The filename of the patch is:
spi-davinci-fix-up-dma_mapping_error-incorrect-patch.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <stable(a)vger.kernel.org> know about it.
>From foo@baz Fri Apr 6 10:31:28 CEST 2018
From: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Date: Fri, 6 Apr 2018 10:21:12 +0200
Subject: spi: davinci: fix up dma_mapping_error() incorrect patch
From: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
commit 11dd9e2c480324b46118ff708ea2ca8d7022539b, which is commit
c5a2a394835f473ae23931eda5066d3771d7b2f8 upstream had an error in it.
Ben writes:
The '!' needs to be deleted. This appears to have been fixed upstream
by:
commit 8aedbf580d21121d2a032e4c8ea12d8d2d85e275
Author: Fabien Parent <fparent(a)baylibre.com>
Date: Thu Feb 23 19:01:56 2017 +0100
spi: davinci: Use SPI framework to handle DMA mapping
which is not suitable for stable.
So I'm just fixing this up directly.
Reported-by: Ben Hutchings <ben.hutchings(a)codethink.co.uk>
Cc: Kevin Hilman <khilman(a)baylibre.com>
Cc: Mark Brown <broonie(a)kernel.org>
Cc: Sasha Levin <alexander.levin(a)verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/spi/spi-davinci.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/drivers/spi/spi-davinci.c
+++ b/drivers/spi/spi-davinci.c
@@ -651,7 +651,7 @@ static int davinci_spi_bufs(struct spi_d
buf = t->rx_buf;
t->rx_dma = dma_map_single(&spi->dev, buf,
t->len, DMA_FROM_DEVICE);
- if (dma_mapping_error(&spi->dev, !t->rx_dma)) {
+ if (dma_mapping_error(&spi->dev, t->rx_dma)) {
ret = -EFAULT;
goto err_rx_map;
}
Patches currently in stable-queue which might be from gregkh(a)linuxfoundation.org are
queue-4.4/rdma-ucma-check-af-family-prior-resolving-address.patch
queue-4.4/documentation-pinctrl-palmas-add-ti-palmas-powerhold-override-property-definition.patch
queue-4.4/netfilter-x_tables-add-and-use-xt_check_proc_name.patch
queue-4.4/usb-serial-ftdi_sio-add-support-for-harman-firmwarehubemulator.patch
queue-4.4/dm-ioctl-remove-double-parentheses.patch
queue-4.4/arm64-avoid-overflow-in-va_start-and-page_offset.patch
queue-4.4/nospec-move-array_index_nospec-parameter-checking-into-separate-macro.patch
queue-4.4/audit-add-tty-field-to-login-event.patch
queue-4.4/usb-gadget-change-len-to-size_t-on-alloc_ep_req.patch
queue-4.4/revert-mtip32xx-use-runtime-tag-to-initialize-command-header.patch
queue-4.4/vt-change-sgr-21-to-follow-the-standards.patch
queue-4.4/genirq-use-cpumask_available-for-check-of-cpumask-variable.patch
queue-4.4/xfrm_user-uncoditionally-validate-esn-replay-attribute-struct.patch
queue-4.4/selinux-remove-redundant-check-for-unknown-labeling-behavior.patch
queue-4.4/fs-compat-remove-warning-from-compatible_ioctl.patch
queue-4.4/usb-dwc2-improve-gadget-state-disconnection-handling.patch
queue-4.4/crypto-x86-cast5-avx-fix-ecb-encryption-when-long-sg-follows-short-one.patch
queue-4.4/net-cavium-liquidio-fix-up-avoid-dma_unmap_single-on-uninitialized-ndata.patch
queue-4.4/writeback-fix-the-wrong-congested-state-variable-definition.patch
queue-4.4/bluetooth-fix-missing-encryption-refresh-on-security-request.patch
queue-4.4/rdma-ucma-don-t-allow-join-attempts-for-unsupported-af-family.patch
queue-4.4/revert-arm-dts-omap3-n900-fix-the-audio-codec-s-reset-pin.patch
queue-4.4/mtd-jedec_probe-fix-crash-in-jedec_read_mfr.patch
queue-4.4/input-i8042-add-lenovo-thinkpad-l460-to-i8042-reset-list.patch
queue-4.4/perf-hwbp-simplify-the-perf-hwbp-code-fix-documentation.patch
queue-4.4/revert-pci-msi-stop-disabling-msi-msi-x-in-pci_device_shutdown.patch
queue-4.4/rdma-ucma-check-that-device-is-connected-prior-to-access-it.patch
queue-4.4/scsi-virtio_scsi-always-read-vpd-pages-for-multiqueue-too.patch
queue-4.4/media-usbtv-prevent-double-free-in-error-case.patch
queue-4.4/revert-arm-dts-am335x-pepper-fix-the-audio-codec-s-reset-pin.patch
queue-4.4/staging-comedi-ni_mio_common-ack-ai-fifo-error-interrupts.patch
queue-4.4/alsa-pcm-potential-uninitialized-return-values.patch
queue-4.4/usb-gadget-define-free_ep_req-as-universal-function.patch
queue-4.4/jiffies.h-declare-jiffies-and-jiffies_64-with-____cacheline_aligned_in_smp.patch
queue-4.4/rdma-ucma-fix-use-after-free-access-in-ucma_close.patch
queue-4.4/revert-cpufreq-fix-governor-module-removal-race.patch
queue-4.4/selinux-remove-unnecessary-check-of-array-base-in-selinux_set_mapping.patch
queue-4.4/xfrm-refuse-to-insert-32-bit-userspace-socket-policies-on-64-bit-systems.patch
queue-4.4/pci-make-pci_rom_address_mask-a-32-bit-constant.patch
queue-4.4/netfilter-bridge-ebt_among-add-more-missing-match-size-checks.patch
queue-4.4/md-raid10-reset-the-first-at-the-end-of-loop.patch
queue-4.4/kprobes-x86-fix-to-set-rwx-bits-correctly-before-releasing-trampoline.patch
queue-4.4/rdma-ucma-ensure-that-cm_id-exists-prior-to-access-it.patch
queue-4.4/llist-clang-introduce-member_address_is_nonnull.patch
queue-4.4/usb-gadget-fix-usb_ep_align_maybe-endianness-and-new-usb_ep_align.patch
queue-4.4/frv-declare-jiffies-to-be-located-in-the-.data-section.patch
queue-4.4/fs-proc-stop-trying-to-report-thread-stacks.patch
queue-4.4/arm-dts-am57xx-beagle-x15-common-add-overide-powerhold-property.patch
queue-4.4/rdma-ucma-introduce-safer-rdma_addr_size-variants.patch
queue-4.4/netfilter-nf_nat_h323-fix-logical-not-parentheses-warning.patch
queue-4.4/mei-remove-dev_err-message-on-an-unsupported-ioctl.patch
queue-4.4/net-hns-fix-ethtool-private-flags.patch
queue-4.4/rdma-ucma-check-that-device-exists-prior-to-accessing-it.patch
queue-4.4/spi-davinci-fix-up-dma_mapping_error-incorrect-patch.patch
queue-4.4/net-xfrm-use-preempt-safe-this_cpu_read-in-ipcomp_alloc_tfms.patch
queue-4.4/tty-provide-tty_name-even-without-config_tty.patch
queue-4.4/usb-gadget-f_hid-fix-prevent-accessing-released-memory.patch
queue-4.4/arm-dts-dra7-add-power-hold-and-power-controller-properties-to-palmas.patch
queue-4.4/input-mousedev-fix-implicit-conversion-warning.patch
queue-4.4/input-i8042-enable-mux-on-sony-vaio-vgn-cs-series-to-fix-touchpad.patch
queue-4.4/netfilter-ctnetlink-make-some-parameters-integer-to-avoid-enum-mismatch.patch
queue-4.4/nospec-kill-array_index_nospec_mask_check.patch
queue-4.4/alsa-pcm-use-dma_bytes-as-size-parameter-in-dma_mmap_coherent.patch
queue-4.4/revert-ip6_vti-adjust-vti-mtu-according-to-mtu-of-lower-device.patch
queue-4.4/parport_pc-add-support-for-wch-ch382l-pci-e-single-parallel-port-card.patch
queue-4.4/usb-gadget-align-buffer-size-when-allocating-for-out-endpoint.patch
queue-4.4/cpumask-add-helper-cpumask_available.patch
queue-4.4/acpi-pci-irq-remove-redundant-check-for-null-string-pointer.patch
queue-4.4/usb-serial-ftdi_sio-add-rt-systems-vx-8-cable.patch
queue-4.4/usb-serial-cp210x-add-eldat-easywave-rx09-id.patch
queue-4.4/crypto-ahash-fix-early-termination-in-hash-walk.patch
queue-4.4/partitions-msdos-unable-to-mount-ufs-44bsd-partitions.patch