summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile.rhelver2
-rwxr-xr-xkernel.spec9
-rw-r--r--patch-5.11.1-redhat.patch418
-rw-r--r--sources6
4 files changed, 15 insertions, 420 deletions
diff --git a/Makefile.rhelver b/Makefile.rhelver
index 7fb2464bc..7e6639b94 100644
--- a/Makefile.rhelver
+++ b/Makefile.rhelver
@@ -12,7 +12,7 @@ RHEL_MINOR = 99
#
# Use this spot to avoid future merge conflicts.
# Do not trim this comment.
-RHEL_RELEASE = 1
+RHEL_RELEASE = 2
#
# Early y+1 numbering
diff --git a/kernel.spec b/kernel.spec
index 6a30a38e2..227c819a0 100755
--- a/kernel.spec
+++ b/kernel.spec
@@ -64,7 +64,7 @@ Summary: The Linux kernel
# For a stable, released kernel, released_kernel should be 1.
%global released_kernel 0
-%global distro_build 300
+%global distro_build 301
%if 0%{?fedora}
%define secure_boot_arch x86_64
@@ -105,13 +105,13 @@ Summary: The Linux kernel
%endif
%define rpmversion 5.11.1
-%define pkgrelease 300
+%define pkgrelease 301
# This is needed to do merge window version magic
%define patchlevel 11
# allow pkg_release to have configurable %%{?dist} tag
-%define specrelease 300%{?buildid}%{?dist}
+%define specrelease 301%{?buildid}%{?dist}
%define pkg_release %{specrelease}
@@ -2762,7 +2762,8 @@ fi
#
#
%changelog
-* Tue Feb 23 2021 Justin M. Forbes <jforbes@fedoraproject.org> [5.11.1-300]
+* Fri Feb 26 2021 Justin M. Forbes <jforbes@fedoraproject.org> [5.11.1-2]
+- MARKER needs SUBLEVEL for stable, I need to think of a better longterm solution (Justin M. Forbes)
- Config updates for 5.11.1 (Justin M. Forbes)
- Set CONFIG_DEBUG_HIGHMEM as off for non debug kernels (Justin M. Forbes)
- CONFIG_DEBUG_HIGHMEM should be debug only (Justin M. Forbes)
diff --git a/patch-5.11.1-redhat.patch b/patch-5.11.1-redhat.patch
index 31cb83878..6d69a037f 100644
--- a/patch-5.11.1-redhat.patch
+++ b/patch-5.11.1-redhat.patch
@@ -1,21 +1,18 @@
Documentation/admin-guide/kdump/kdump.rst | 11 +
.../bindings/display/panel/xingbangda,xbd599.yaml | 50 +++
- Makefile | 3 +-
+ Makefile | 1 +
arch/arm/Kconfig | 4 +-
arch/arm/include/asm/uaccess.h | 8 +-
- arch/arm/xen/p2m.c | 6 +-
arch/arm64/Kconfig | 3 +-
arch/s390/include/asm/ipl.h | 1 +
arch/s390/kernel/ipl.c | 5 +
arch/s390/kernel/setup.c | 4 +
arch/x86/kernel/setup.c | 22 +-
- arch/x86/xen/p2m.c | 15 +-
drivers/acpi/apei/hest.c | 8 +
drivers/acpi/irq.c | 17 +-
drivers/acpi/scan.c | 9 +
drivers/ata/libahci.c | 18 +
- drivers/block/xen-blkback/blkback.c | 32 +-
- drivers/bluetooth/btusb.c | 27 +-
+ drivers/bluetooth/btusb.c | 7 +
drivers/char/ipmi/ipmi_dmi.c | 15 +
drivers/char/ipmi/ipmi_msghandler.c | 16 +-
drivers/firmware/efi/Makefile | 1 +
@@ -28,20 +25,14 @@
drivers/hid/hid-rmi.c | 64 ----
drivers/input/rmi4/rmi_driver.c | 124 ++++---
drivers/iommu/iommu.c | 22 ++
- drivers/media/usb/pwc/pwc-if.c | 22 +-
- drivers/net/xen-netback/netback.c | 4 +-
drivers/pci/quirks.c | 24 ++
drivers/scsi/smartpqi/smartpqi_init.c | 16 +
- drivers/tty/tty_io.c | 5 +-
drivers/usb/core/hub.c | 7 +
- drivers/xen/gntdev.c | 37 ++-
- drivers/xen/xen-scsiback.c | 4 +-
include/linux/efi.h | 22 +-
include/linux/lsm_hook_defs.h | 2 +
include/linux/lsm_hooks.h | 6 +
include/linux/rmi.h | 1 +
include/linux/security.h | 5 +
- include/xen/grant_table.h | 1 +
kernel/crash_core.c | 28 +-
kernel/module_signing.c | 9 +-
mm/kmemleak.c | 5 +
@@ -51,7 +42,7 @@
security/security.c | 6 +
sound/hda/Kconfig | 14 +
sound/hda/intel-dsp-config.c | 29 +-
- 53 files changed, 1028 insertions(+), 272 deletions(-)
+ 44 files changed, 951 insertions(+), 201 deletions(-)
diff --git a/Documentation/admin-guide/kdump/kdump.rst b/Documentation/admin-guide/kdump/kdump.rst
index 75a9dd98e76e..3ff3291551f9 100644
@@ -132,18 +123,9 @@ index 000000000000..b27bcf11198f
+
+...
diff --git a/Makefile b/Makefile
-index de1acaefe87e..332b420d1d61 100644
+index 0b9ae470a714..332b420d1d61 100644
--- a/Makefile
+++ b/Makefile
-@@ -1,7 +1,7 @@
- # SPDX-License-Identifier: GPL-2.0
- VERSION = 5
- PATCHLEVEL = 11
--SUBLEVEL = 0
-+SUBLEVEL = 1
- EXTRAVERSION =
- NAME = 💕 Valentine's Day Edition 💕
-
@@ -494,6 +494,7 @@ KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE
KBUILD_CFLAGS := -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs \
-fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE \
@@ -199,23 +181,6 @@ index a13d90206472..6a6aae01755b 100644
})
#define get_user(x, p) \
-diff --git a/arch/arm/xen/p2m.c b/arch/arm/xen/p2m.c
-index e52950a43f2e..fd6e3aafe272 100644
---- a/arch/arm/xen/p2m.c
-+++ b/arch/arm/xen/p2m.c
-@@ -95,8 +95,10 @@ int set_foreign_p2m_mapping(struct gnttab_map_grant_ref *map_ops,
- for (i = 0; i < count; i++) {
- if (map_ops[i].status)
- continue;
-- set_phys_to_machine(map_ops[i].host_addr >> XEN_PAGE_SHIFT,
-- map_ops[i].dev_bus_addr >> XEN_PAGE_SHIFT);
-+ if (unlikely(!set_phys_to_machine(map_ops[i].host_addr >> XEN_PAGE_SHIFT,
-+ map_ops[i].dev_bus_addr >> XEN_PAGE_SHIFT))) {
-+ return -ENOMEM;
-+ }
- }
-
- return 0;
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index f39568b28ec1..794d5413765b 100644
--- a/arch/arm64/Kconfig
@@ -331,43 +296,6 @@ index 740f3bdb3f61..db04c427e35c 100644
reserve_initrd();
-diff --git a/arch/x86/xen/p2m.c b/arch/x86/xen/p2m.c
-index 3301875dd196..b5949e5a83ec 100644
---- a/arch/x86/xen/p2m.c
-+++ b/arch/x86/xen/p2m.c
-@@ -712,7 +712,8 @@ int set_foreign_p2m_mapping(struct gnttab_map_grant_ref *map_ops,
- unsigned long mfn, pfn;
-
- /* Do not add to override if the map failed. */
-- if (map_ops[i].status)
-+ if (map_ops[i].status != GNTST_okay ||
-+ (kmap_ops && kmap_ops[i].status != GNTST_okay))
- continue;
-
- if (map_ops[i].flags & GNTMAP_contains_pte) {
-@@ -750,17 +751,15 @@ int clear_foreign_p2m_mapping(struct gnttab_unmap_grant_ref *unmap_ops,
- unsigned long mfn = __pfn_to_mfn(page_to_pfn(pages[i]));
- unsigned long pfn = page_to_pfn(pages[i]);
-
-- if (mfn == INVALID_P2M_ENTRY || !(mfn & FOREIGN_FRAME_BIT)) {
-+ if (mfn != INVALID_P2M_ENTRY && (mfn & FOREIGN_FRAME_BIT))
-+ set_phys_to_machine(pfn, INVALID_P2M_ENTRY);
-+ else
- ret = -EINVAL;
-- goto out;
-- }
--
-- set_phys_to_machine(pfn, INVALID_P2M_ENTRY);
- }
- if (kunmap_ops)
- ret = HYPERVISOR_grant_table_op(GNTTABOP_unmap_grant_ref,
-- kunmap_ops, count);
--out:
-+ kunmap_ops, count) ?: ret;
-+
- return ret;
- }
- EXPORT_SYMBOL_GPL(clear_foreign_p2m_mapping);
diff --git a/drivers/acpi/apei/hest.c b/drivers/acpi/apei/hest.c
index 6e980fe16772..37bc003e7a83 100644
--- a/drivers/acpi/apei/hest.c
@@ -479,109 +407,11 @@ index ea5bf5f4cbed..71c55cae27ac 100644
/* wait for engine to stop. This could be as long as 500 msec */
tmp = ata_wait_register(ap, port_mmio + PORT_CMD,
PORT_CMD_LIST_ON, PORT_CMD_LIST_ON, 1, 500);
-diff --git a/drivers/block/xen-blkback/blkback.c b/drivers/block/xen-blkback/blkback.c
-index 9ebf53903d7b..da16121140ca 100644
---- a/drivers/block/xen-blkback/blkback.c
-+++ b/drivers/block/xen-blkback/blkback.c
-@@ -794,8 +794,13 @@ static int xen_blkbk_map(struct xen_blkif_ring *ring,
- pages[i]->persistent_gnt = persistent_gnt;
- } else {
- if (gnttab_page_cache_get(&ring->free_pages,
-- &pages[i]->page))
-- goto out_of_memory;
-+ &pages[i]->page)) {
-+ gnttab_page_cache_put(&ring->free_pages,
-+ pages_to_gnt,
-+ segs_to_map);
-+ ret = -ENOMEM;
-+ goto out;
-+ }
- addr = vaddr(pages[i]->page);
- pages_to_gnt[segs_to_map] = pages[i]->page;
- pages[i]->persistent_gnt = NULL;
-@@ -811,10 +816,8 @@ static int xen_blkbk_map(struct xen_blkif_ring *ring,
- break;
- }
-
-- if (segs_to_map) {
-+ if (segs_to_map)
- ret = gnttab_map_refs(map, NULL, pages_to_gnt, segs_to_map);
-- BUG_ON(ret);
-- }
-
- /*
- * Now swizzle the MFN in our domain with the MFN from the other domain
-@@ -830,7 +833,7 @@ static int xen_blkbk_map(struct xen_blkif_ring *ring,
- gnttab_page_cache_put(&ring->free_pages,
- &pages[seg_idx]->page, 1);
- pages[seg_idx]->handle = BLKBACK_INVALID_HANDLE;
-- ret |= 1;
-+ ret |= !ret;
- goto next;
- }
- pages[seg_idx]->handle = map[new_map_idx].handle;
-@@ -882,17 +885,18 @@ static int xen_blkbk_map(struct xen_blkif_ring *ring,
- }
- segs_to_map = 0;
- last_map = map_until;
-- if (map_until != num)
-+ if (!ret && map_until != num)
- goto again;
-
-- return ret;
--
--out_of_memory:
-- pr_alert("%s: out of memory\n", __func__);
-- gnttab_page_cache_put(&ring->free_pages, pages_to_gnt, segs_to_map);
-- for (i = last_map; i < num; i++)
-+out:
-+ for (i = last_map; i < num; i++) {
-+ /* Don't zap current batch's valid persistent grants. */
-+ if(i >= last_map + segs_to_map)
-+ pages[i]->persistent_gnt = NULL;
- pages[i]->handle = BLKBACK_INVALID_HANDLE;
-- return -ENOMEM;
-+ }
-+
-+ return ret;
- }
-
- static int xen_blkbk_map_seg(struct pending_req *pending_req)
diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
-index 03b83aa91277..da57c561642c 100644
+index 1b690164ab5b..da57c561642c 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
-@@ -506,7 +506,6 @@ static const struct dmi_system_id btusb_needs_reset_resume_table[] = {
- #define BTUSB_HW_RESET_ACTIVE 12
- #define BTUSB_TX_WAIT_VND_EVT 13
- #define BTUSB_WAKEUP_DISABLE 14
--#define BTUSB_USE_ALT1_FOR_WBS 15
-
- struct btusb_data {
- struct hci_dev *hdev;
-@@ -1736,15 +1735,12 @@ static void btusb_work(struct work_struct *work)
- new_alts = data->sco_num;
- }
- } else if (data->air_mode == HCI_NOTIFY_ENABLE_SCO_TRANSP) {
-- /* Check if Alt 6 is supported for Transparent audio */
-- if (btusb_find_altsetting(data, 6)) {
-- data->usb_alt6_packet_flow = true;
-- new_alts = 6;
-- } else if (test_bit(BTUSB_USE_ALT1_FOR_WBS, &data->flags)) {
-- new_alts = 1;
-- } else {
-- bt_dev_err(hdev, "Device does not support ALT setting 6");
-- }
-+ /* Bluetooth USB spec recommends alt 6 (63 bytes), but
-+ * many adapters do not support it. Alt 1 appears to
-+ * work for all adapters that do not have alt 6, and
-+ * which work with WBS at all.
-+ */
-+ new_alts = btusb_find_altsetting(data, 6) ? 6 : 1;
- }
-
- if (btusb_switch_alt_setting(hdev, new_alts) < 0)
-@@ -4069,6 +4065,13 @@ static int btusb_setup_qca(struct hci_dev *hdev)
+@@ -4065,6 +4065,13 @@ static int btusb_setup_qca(struct hci_dev *hdev)
info = &qca_devices_table[i];
}
if (!info) {
@@ -595,17 +425,6 @@ index 03b83aa91277..da57c561642c 100644
bt_dev_err(hdev, "don't support firmware rome 0x%x", ver_rom);
return -ENODEV;
}
-@@ -4548,10 +4551,6 @@ static int btusb_probe(struct usb_interface *intf,
- * (DEVICE_REMOTE_WAKEUP)
- */
- set_bit(BTUSB_WAKEUP_DISABLE, &data->flags);
-- if (btusb_find_altsetting(data, 1))
-- set_bit(BTUSB_USE_ALT1_FOR_WBS, &data->flags);
-- else
-- bt_dev_err(hdev, "Device does not support ALT setting 1");
- }
-
- if (!reset)
diff --git a/drivers/char/ipmi/ipmi_dmi.c b/drivers/char/ipmi/ipmi_dmi.c
index bbf7029e224b..cf7faa970dd6 100644
--- a/drivers/char/ipmi/ipmi_dmi.c
@@ -1644,111 +1463,6 @@ index ffeebda8d6de..2314da0ce11c 100644
/*
* Changes the default domain of an iommu group that has *only* one device
*
-diff --git a/drivers/media/usb/pwc/pwc-if.c b/drivers/media/usb/pwc/pwc-if.c
-index 61869636ec61..5e3339cc31c0 100644
---- a/drivers/media/usb/pwc/pwc-if.c
-+++ b/drivers/media/usb/pwc/pwc-if.c
-@@ -155,16 +155,17 @@ static const struct video_device pwc_template = {
- /***************************************************************************/
- /* Private functions */
-
--static void *pwc_alloc_urb_buffer(struct device *dev,
-+static void *pwc_alloc_urb_buffer(struct usb_device *dev,
- size_t size, dma_addr_t *dma_handle)
- {
-+ struct device *dmadev = dev->bus->sysdev;
- void *buffer = kmalloc(size, GFP_KERNEL);
-
- if (!buffer)
- return NULL;
-
-- *dma_handle = dma_map_single(dev, buffer, size, DMA_FROM_DEVICE);
-- if (dma_mapping_error(dev, *dma_handle)) {
-+ *dma_handle = dma_map_single(dmadev, buffer, size, DMA_FROM_DEVICE);
-+ if (dma_mapping_error(dmadev, *dma_handle)) {
- kfree(buffer);
- return NULL;
- }
-@@ -172,12 +173,14 @@ static void *pwc_alloc_urb_buffer(struct device *dev,
- return buffer;
- }
-
--static void pwc_free_urb_buffer(struct device *dev,
-+static void pwc_free_urb_buffer(struct usb_device *dev,
- size_t size,
- void *buffer,
- dma_addr_t dma_handle)
- {
-- dma_unmap_single(dev, dma_handle, size, DMA_FROM_DEVICE);
-+ struct device *dmadev = dev->bus->sysdev;
-+
-+ dma_unmap_single(dmadev, dma_handle, size, DMA_FROM_DEVICE);
- kfree(buffer);
- }
-
-@@ -282,6 +285,7 @@ static void pwc_frame_complete(struct pwc_device *pdev)
- static void pwc_isoc_handler(struct urb *urb)
- {
- struct pwc_device *pdev = (struct pwc_device *)urb->context;
-+ struct device *dmadev = urb->dev->bus->sysdev;
- int i, fst, flen;
- unsigned char *iso_buf = NULL;
-
-@@ -328,7 +332,7 @@ static void pwc_isoc_handler(struct urb *urb)
- /* Reset ISOC error counter. We did get here, after all. */
- pdev->visoc_errors = 0;
-
-- dma_sync_single_for_cpu(&urb->dev->dev,
-+ dma_sync_single_for_cpu(dmadev,
- urb->transfer_dma,
- urb->transfer_buffer_length,
- DMA_FROM_DEVICE);
-@@ -379,7 +383,7 @@ static void pwc_isoc_handler(struct urb *urb)
- pdev->vlast_packet_size = flen;
- }
-
-- dma_sync_single_for_device(&urb->dev->dev,
-+ dma_sync_single_for_device(dmadev,
- urb->transfer_dma,
- urb->transfer_buffer_length,
- DMA_FROM_DEVICE);
-@@ -461,7 +465,7 @@ static int pwc_isoc_init(struct pwc_device *pdev)
- urb->pipe = usb_rcvisocpipe(udev, pdev->vendpoint);
- urb->transfer_flags = URB_ISO_ASAP | URB_NO_TRANSFER_DMA_MAP;
- urb->transfer_buffer_length = ISO_BUFFER_SIZE;
-- urb->transfer_buffer = pwc_alloc_urb_buffer(&udev->dev,
-+ urb->transfer_buffer = pwc_alloc_urb_buffer(udev,
- urb->transfer_buffer_length,
- &urb->transfer_dma);
- if (urb->transfer_buffer == NULL) {
-@@ -524,7 +528,7 @@ static void pwc_iso_free(struct pwc_device *pdev)
- if (urb) {
- PWC_DEBUG_MEMORY("Freeing URB\n");
- if (urb->transfer_buffer)
-- pwc_free_urb_buffer(&urb->dev->dev,
-+ pwc_free_urb_buffer(urb->dev,
- urb->transfer_buffer_length,
- urb->transfer_buffer,
- urb->transfer_dma);
-diff --git a/drivers/net/xen-netback/netback.c b/drivers/net/xen-netback/netback.c
-index bc3421d14576..423667b83751 100644
---- a/drivers/net/xen-netback/netback.c
-+++ b/drivers/net/xen-netback/netback.c
-@@ -1342,13 +1342,11 @@ int xenvif_tx_action(struct xenvif_queue *queue, int budget)
- return 0;
-
- gnttab_batch_copy(queue->tx_copy_ops, nr_cops);
-- if (nr_mops != 0) {
-+ if (nr_mops != 0)
- ret = gnttab_map_refs(queue->tx_map_ops,
- NULL,
- queue->pages_to_map,
- nr_mops);
-- BUG_ON(ret);
-- }
-
- work_done = xenvif_tx_submit(queue);
-
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 653660e3ba9e..98851d00dc4d 100644
--- a/drivers/pci/quirks.c
@@ -1818,26 +1532,6 @@ index c53f456fbd09..ea190660c86e 100644
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
PCI_VENDOR_ID_DELL, 0x1fe0)
-diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
-index 816e709afa56..082da38762fc 100644
---- a/drivers/tty/tty_io.c
-+++ b/drivers/tty/tty_io.c
-@@ -962,11 +962,14 @@ static inline ssize_t do_tty_write(
- if (ret <= 0)
- break;
-
-+ written += ret;
-+ if (ret > size)
-+ break;
-+
- /* FIXME! Have Al check this! */
- if (ret != size)
- iov_iter_revert(from, size-ret);
-
-- written += ret;
- count -= ret;
- if (!count)
- break;
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index 7f71218cc1e5..283fc0f41cd2 100644
--- a/drivers/usb/core/hub.c
@@ -1856,94 +1550,6 @@ index 7f71218cc1e5..283fc0f41cd2 100644
/* Lock the device, then check to see if we were
* disconnected while waiting for the lock to succeed. */
usb_lock_device(hdev);
-diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
-index a36b71286bcf..5447c5156b2e 100644
---- a/drivers/xen/gntdev.c
-+++ b/drivers/xen/gntdev.c
-@@ -309,44 +309,47 @@ int gntdev_map_grant_pages(struct gntdev_grant_map *map)
- * to the kernel linear addresses of the struct pages.
- * These ptes are completely different from the user ptes dealt
- * with find_grant_ptes.
-+ * Note that GNTMAP_device_map isn't needed here: The
-+ * dev_bus_addr output field gets consumed only from ->map_ops,
-+ * and by not requesting it when mapping we also avoid needing
-+ * to mirror dev_bus_addr into ->unmap_ops (and holding an extra
-+ * reference to the page in the hypervisor).
- */
-+ unsigned int flags = (map->flags & ~GNTMAP_device_map) |
-+ GNTMAP_host_map;
-+
- for (i = 0; i < map->count; i++) {
- unsigned long address = (unsigned long)
- pfn_to_kaddr(page_to_pfn(map->pages[i]));
- BUG_ON(PageHighMem(map->pages[i]));
-
-- gnttab_set_map_op(&map->kmap_ops[i], address,
-- map->flags | GNTMAP_host_map,
-+ gnttab_set_map_op(&map->kmap_ops[i], address, flags,
- map->grants[i].ref,
- map->grants[i].domid);
- gnttab_set_unmap_op(&map->kunmap_ops[i], address,
-- map->flags | GNTMAP_host_map, -1);
-+ flags, -1);
- }
- }
-
- pr_debug("map %d+%d\n", map->index, map->count);
- err = gnttab_map_refs(map->map_ops, use_ptemod ? map->kmap_ops : NULL,
- map->pages, map->count);
-- if (err)
-- return err;
-
- for (i = 0; i < map->count; i++) {
-- if (map->map_ops[i].status) {
-+ if (map->map_ops[i].status == GNTST_okay)
-+ map->unmap_ops[i].handle = map->map_ops[i].handle;
-+ else if (!err)
- err = -EINVAL;
-- continue;
-- }
-
-- map->unmap_ops[i].handle = map->map_ops[i].handle;
-- if (use_ptemod)
-- map->kunmap_ops[i].handle = map->kmap_ops[i].handle;
--#ifdef CONFIG_XEN_GRANT_DMA_ALLOC
-- else if (map->dma_vaddr) {
-- unsigned long bfn;
-+ if (map->flags & GNTMAP_device_map)
-+ map->unmap_ops[i].dev_bus_addr = map->map_ops[i].dev_bus_addr;
-
-- bfn = pfn_to_bfn(page_to_pfn(map->pages[i]));
-- map->unmap_ops[i].dev_bus_addr = __pfn_to_phys(bfn);
-+ if (use_ptemod) {
-+ if (map->kmap_ops[i].status == GNTST_okay)
-+ map->kunmap_ops[i].handle = map->kmap_ops[i].handle;
-+ else if (!err)
-+ err = -EINVAL;
- }
--#endif
- }
- return err;
- }
-diff --git a/drivers/xen/xen-scsiback.c b/drivers/xen/xen-scsiback.c
-index 862162dca33c..9cd4fe8ce680 100644
---- a/drivers/xen/xen-scsiback.c
-+++ b/drivers/xen/xen-scsiback.c
-@@ -386,12 +386,12 @@ static int scsiback_gnttab_data_map_batch(struct gnttab_map_grant_ref *map,
- return 0;
-
- err = gnttab_map_refs(map, NULL, pg, cnt);
-- BUG_ON(err);
- for (i = 0; i < cnt; i++) {
- if (unlikely(map[i].status != GNTST_okay)) {
- pr_err("invalid buffer -- could not remap it\n");
- map[i].handle = SCSIBACK_INVALID_HANDLE;
-- err = -ENOMEM;
-+ if (!err)
-+ err = -ENOMEM;
- } else {
- get_page(pg[i]);
- }
diff --git a/include/linux/efi.h b/include/linux/efi.h
index 763b816ba19c..4c55e3aa7e95 100644
--- a/include/linux/efi.h
@@ -2077,18 +1683,6 @@ index c35ea0ffccd9..342d4579bf5c 100644
#endif /* CONFIG_SECURITY */
#if defined(CONFIG_SECURITY) && defined(CONFIG_WATCH_QUEUE)
-diff --git a/include/xen/grant_table.h b/include/xen/grant_table.h
-index b9c937b3a149..0b1182a3cf41 100644
---- a/include/xen/grant_table.h
-+++ b/include/xen/grant_table.h
-@@ -157,6 +157,7 @@ gnttab_set_map_op(struct gnttab_map_grant_ref *map, phys_addr_t addr,
- map->flags = flags;
- map->ref = ref;
- map->dom = domid;
-+ map->status = 1; /* arbitrary positive value */
- }
-
- static inline void
diff --git a/kernel/crash_core.c b/kernel/crash_core.c
index 825284baaf46..0b2b3f510b16 100644
--- a/kernel/crash_core.c
diff --git a/sources b/sources
index 69a4161ac..cabd3b0a1 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (linux-5.11.1.tar.xz) = 64e737d1604737825cb48544b59d756b54707b14e5677cf779592a16f9edc8cc98f76269142ddfe317e9ef032fe95909be02a7dddedf3ae44d4b545a66a404c4
-SHA512 (kernel-abi-whitelists-5.11.1-300.tar.bz2) = 98885f435526b3b3e530fee1b7d1e3be5b2facb794fb294ef6defdfeccd1668d4db65cbf271bbd8bb1d25c3fc184278170a2ab8c79098feb4af4922f57e586ff
-SHA512 (kernel-kabi-dw-5.11.1-300.tar.bz2) = 3d22e0cda145467de5e12caaa5b22b6b3ab49205d0be632c092ac44a11f36aaa82e3d84bd97d01eef643e05174079b4c292830bad78ae6d4fa55b4f25fa3f675
+SHA512 (linux-5.11.1.tar.xz) = 1cac452e716a2a3045b0c419b8bd560c68b110d7a0dbeb0bb6802bc047a0f5dbd4507991f433f067e11acd522441cf79ca818ff3d0cda35abeec4b776b11c390
+SHA512 (kernel-abi-whitelists-5.11.1-301.tar.bz2) = 1e5f2a8aca14350476bff46db01c471ed6b9f7a9c50209e284562a0ad49c17d22a9f0265b17a0f84aaa578526153e11fdce4365026227c2712d5f88d8b4ef352
+SHA512 (kernel-kabi-dw-5.11.1-301.tar.bz2) = bcab6d75c47ee55b7e0e701a85a878c60248e9b7b76cf14a229f8920f56f24cc93c14ae9ce8365e7e70a9d3863abc5930159eda84b5960b8048d5d5643e703dc