diff options
Diffstat (limited to 'drivers/staging')
-rw-r--r-- | drivers/staging/erofs/super.c | 1 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/asyncdata.c | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/bas-gigaset.c | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/capi.c | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/common.c | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/dummyll.c | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/ev-layer.c | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/gigaset.h | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/interface.c | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/isocdata.c | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/proc.c | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/ser-gigaset.c | 5 | ||||
-rw-r--r-- | drivers/staging/isdn/gigaset/usb-gigaset.c | 5 | ||||
-rw-r--r-- | drivers/staging/kpc2000/Kconfig | 2 | ||||
-rw-r--r-- | drivers/staging/kpc2000/kpc_dma/fileops.c | 4 | ||||
-rw-r--r-- | drivers/staging/vc04_services/bcm2835-camera/controls.c | 4 | ||||
-rw-r--r-- | drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c | 9 | ||||
-rw-r--r-- | drivers/staging/wilc1000/wilc_wlan.c | 8 | ||||
-rw-r--r-- | drivers/staging/wlan-ng/hfa384x_usb.c | 3 |
19 files changed, 35 insertions, 56 deletions
diff --git a/drivers/staging/erofs/super.c b/drivers/staging/erofs/super.c index 399847d21146..f580d4ef77a1 100644 --- a/drivers/staging/erofs/super.c +++ b/drivers/staging/erofs/super.c @@ -457,6 +457,7 @@ static int erofs_read_super(struct super_block *sb, */ err_devname: dput(sb->s_root); + sb->s_root = NULL; err_iget: #ifdef EROFS_FS_HAS_MANAGED_CACHE iput(sbi->managed_cache); diff --git a/drivers/staging/isdn/gigaset/asyncdata.c b/drivers/staging/isdn/gigaset/asyncdata.c index c0cbee06bc21..a34b3c9d8a71 100644 --- a/drivers/staging/isdn/gigaset/asyncdata.c +++ b/drivers/staging/isdn/gigaset/asyncdata.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* * Common data handling layer for ser_gigaset and usb_gigaset * @@ -6,10 +7,6 @@ * Stefan Eilers. * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/bas-gigaset.c b/drivers/staging/isdn/gigaset/bas-gigaset.c index 149b1aca52a2..c334525a5f63 100644 --- a/drivers/staging/isdn/gigaset/bas-gigaset.c +++ b/drivers/staging/isdn/gigaset/bas-gigaset.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* * USB driver for Gigaset 307x base via direct USB connection. * @@ -6,10 +7,6 @@ * Stefan Eilers. * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/capi.c b/drivers/staging/isdn/gigaset/capi.c index 9cb2ab57fa4a..83d7dd48c61d 100644 --- a/drivers/staging/isdn/gigaset/capi.c +++ b/drivers/staging/isdn/gigaset/capi.c @@ -1,13 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* * Kernel CAPI interface for the Gigaset driver * * Copyright (c) 2009 by Tilman Schmidt <tilman@imap.cc>. * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/common.c b/drivers/staging/isdn/gigaset/common.c index 76b5407b5277..3bb8092858ab 100644 --- a/drivers/staging/isdn/gigaset/common.c +++ b/drivers/staging/isdn/gigaset/common.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* * Stuff used by all variants of the driver * @@ -6,10 +7,6 @@ * Tilman Schmidt <tilman@imap.cc>. * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/dummyll.c b/drivers/staging/isdn/gigaset/dummyll.c index 570c2d53b84e..4b9637e5da6e 100644 --- a/drivers/staging/isdn/gigaset/dummyll.c +++ b/drivers/staging/isdn/gigaset/dummyll.c @@ -1,13 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* * Dummy LL interface for the Gigaset driver * * Copyright (c) 2009 by Tilman Schmidt <tilman@imap.cc>. * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/ev-layer.c b/drivers/staging/isdn/gigaset/ev-layer.c index 182826e9d07c..f8bb1869c600 100644 --- a/drivers/staging/isdn/gigaset/ev-layer.c +++ b/drivers/staging/isdn/gigaset/ev-layer.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* * Stuff used by all variants of the driver * @@ -6,10 +7,6 @@ * Tilman Schmidt <tilman@imap.cc>. * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/gigaset.h b/drivers/staging/isdn/gigaset/gigaset.h index 166537e2dfca..0ecc2b5ea553 100644 --- a/drivers/staging/isdn/gigaset/gigaset.h +++ b/drivers/staging/isdn/gigaset/gigaset.h @@ -1,3 +1,4 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Siemens Gigaset 307x driver * Common header file for all connection variants @@ -6,10 +7,6 @@ * and Hansjoerg Lipp <hjlipp@web.de> * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/interface.c b/drivers/staging/isdn/gigaset/interface.c index d9a578ac32cd..17fa615a8c68 100644 --- a/drivers/staging/isdn/gigaset/interface.c +++ b/drivers/staging/isdn/gigaset/interface.c @@ -1,13 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* * interface to user space for the gigaset driver * * Copyright (c) 2004 by Hansjoerg Lipp <hjlipp@web.de> * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/isocdata.c b/drivers/staging/isdn/gigaset/isocdata.c index f9264ba0fe77..3ecf6e33ed15 100644 --- a/drivers/staging/isdn/gigaset/isocdata.c +++ b/drivers/staging/isdn/gigaset/isocdata.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* * Common data handling layer for bas_gigaset * @@ -5,10 +6,6 @@ * Hansjoerg Lipp <hjlipp@web.de>. * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/proc.c b/drivers/staging/isdn/gigaset/proc.c index e3f9d0f089fa..8914439a4237 100644 --- a/drivers/staging/isdn/gigaset/proc.c +++ b/drivers/staging/isdn/gigaset/proc.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* * Stuff used by all variants of the driver * @@ -6,10 +7,6 @@ * Tilman Schmidt <tilman@imap.cc>. * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/ser-gigaset.c b/drivers/staging/isdn/gigaset/ser-gigaset.c index e1de8b1a1001..5587e9e7fc73 100644 --- a/drivers/staging/isdn/gigaset/ser-gigaset.c +++ b/drivers/staging/isdn/gigaset/ser-gigaset.c @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* This is the serial hardware link layer (HLL) for the Gigaset 307x isdn * DECT base (aka Sinus 45 isdn) using the RS232 DECT data module M101, * written as a line discipline. * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/isdn/gigaset/usb-gigaset.c b/drivers/staging/isdn/gigaset/usb-gigaset.c index eade36dafa34..1b9b43659bdf 100644 --- a/drivers/staging/isdn/gigaset/usb-gigaset.c +++ b/drivers/staging/isdn/gigaset/usb-gigaset.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-or-later /* * USB driver for Gigaset 307x directly or using M105 Data. * @@ -8,10 +9,6 @@ * Greg Kroah-Hartman <greg@kroah.com> * * ===================================================================== - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. * ===================================================================== */ diff --git a/drivers/staging/kpc2000/Kconfig b/drivers/staging/kpc2000/Kconfig index fb5922928f47..3bb2efd511c4 100644 --- a/drivers/staging/kpc2000/Kconfig +++ b/drivers/staging/kpc2000/Kconfig @@ -2,7 +2,9 @@ config KPC2000 bool "Daktronics KPC Device support" + select MFD_CORE depends on PCI + depends on UIO help Select this if you wish to use the Daktronics KPC PCI devices diff --git a/drivers/staging/kpc2000/kpc_dma/fileops.c b/drivers/staging/kpc2000/kpc_dma/fileops.c index 5741d2b49a7d..616658709bd9 100644 --- a/drivers/staging/kpc2000/kpc_dma/fileops.c +++ b/drivers/staging/kpc2000/kpc_dma/fileops.c @@ -8,7 +8,7 @@ #include <linux/errno.h> /* error codes */ #include <linux/types.h> /* size_t */ #include <linux/cdev.h> -#include <asm/uaccess.h> /* copy_*_user */ +#include <linux/uaccess.h> /* copy_*_user */ #include <linux/aio.h> /* aio stuff */ #include <linux/highmem.h> #include <linux/pagemap.h> @@ -116,13 +116,11 @@ int kpc_dma_transfer(struct dev_private_data *priv, struct kiocb *kcb, unsigned if (desc_needed >= ldev->desc_pool_cnt){ dev_warn(&priv->ldev->pldev->dev, " mapped_entry_count = %d num_descrs_needed = %d num_descrs_avail = %d TOO MANY to ever complete!\n", acd->mapped_entry_count, desc_needed, num_descrs_avail); rv = -EAGAIN; - unlock_engine(ldev); goto err_descr_too_many; } if (desc_needed > num_descrs_avail){ dev_warn(&priv->ldev->pldev->dev, " mapped_entry_count = %d num_descrs_needed = %d num_descrs_avail = %d Too many to complete right now.\n", acd->mapped_entry_count, desc_needed, num_descrs_avail); rv = -EMSGSIZE; - unlock_engine(ldev); goto err_descr_too_many; } diff --git a/drivers/staging/vc04_services/bcm2835-camera/controls.c b/drivers/staging/vc04_services/bcm2835-camera/controls.c index 9841c30450ce..dade79738a29 100644 --- a/drivers/staging/vc04_services/bcm2835-camera/controls.c +++ b/drivers/staging/vc04_services/bcm2835-camera/controls.c @@ -572,7 +572,7 @@ exit: dev->colourfx.enable ? "true" : "false", dev->colourfx.u, dev->colourfx.v, ret, (ret == 0 ? 0 : -EINVAL)); - return (ret == 0 ? 0 : EINVAL); + return (ret == 0 ? 0 : -EINVAL); } static int ctrl_set_colfx(struct bm2835_mmal_dev *dev, @@ -596,7 +596,7 @@ static int ctrl_set_colfx(struct bm2835_mmal_dev *dev, "%s: After: mmal_ctrl:%p ctrl id:0x%x ctrl val:%d ret %d(%d)\n", __func__, mmal_ctrl, ctrl->id, ctrl->val, ret, (ret == 0 ? 0 : -EINVAL)); - return (ret == 0 ? 0 : EINVAL); + return (ret == 0 ? 0 : -EINVAL); } static int ctrl_set_bitrate(struct bm2835_mmal_dev *dev, diff --git a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c index a9a22917ecdb..c557c9953724 100644 --- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c +++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c @@ -368,9 +368,18 @@ create_pagelist(char __user *buf, size_t count, unsigned short type) int dma_buffers; dma_addr_t dma_addr; + if (count >= INT_MAX - PAGE_SIZE) + return NULL; + offset = ((unsigned int)(unsigned long)buf & (PAGE_SIZE - 1)); num_pages = DIV_ROUND_UP(count + offset, PAGE_SIZE); + if (num_pages > (SIZE_MAX - sizeof(struct pagelist) - + sizeof(struct vchiq_pagelist_info)) / + (sizeof(u32) + sizeof(pages[0]) + + sizeof(struct scatterlist))) + return NULL; + pagelist_size = sizeof(struct pagelist) + (num_pages * sizeof(u32)) + (num_pages * sizeof(pages[0]) + diff --git a/drivers/staging/wilc1000/wilc_wlan.c b/drivers/staging/wilc1000/wilc_wlan.c index 0a713409ea98..95eaf8fdf4f2 100644 --- a/drivers/staging/wilc1000/wilc_wlan.c +++ b/drivers/staging/wilc1000/wilc_wlan.c @@ -1076,13 +1076,17 @@ void wilc_wlan_cleanup(struct net_device *dev) acquire_bus(wilc, WILC_BUS_ACQUIRE_AND_WAKEUP); ret = wilc->hif_func->hif_read_reg(wilc, WILC_GP_REG_0, ®); - if (!ret) + if (!ret) { release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); + return; + } ret = wilc->hif_func->hif_write_reg(wilc, WILC_GP_REG_0, (reg | ABORT_INT)); - if (!ret) + if (!ret) { release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); + return; + } release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); wilc->hif_func->hif_deinit(NULL); diff --git a/drivers/staging/wlan-ng/hfa384x_usb.c b/drivers/staging/wlan-ng/hfa384x_usb.c index 6fde75d4f064..ab734534093b 100644 --- a/drivers/staging/wlan-ng/hfa384x_usb.c +++ b/drivers/staging/wlan-ng/hfa384x_usb.c @@ -3119,7 +3119,9 @@ static void hfa384x_usbin_callback(struct urb *urb) break; } + /* Save values from the RX URB before reposting overwrites it. */ urb_status = urb->status; + usbin = (union hfa384x_usbin *)urb->transfer_buffer; if (action != ABORT) { /* Repost the RX URB */ @@ -3136,7 +3138,6 @@ static void hfa384x_usbin_callback(struct urb *urb) /* Note: the check of the sw_support field, the type field doesn't * have bit 12 set like the docs suggest. */ - usbin = (union hfa384x_usbin *)urb->transfer_buffer; type = le16_to_cpu(usbin->type); if (HFA384x_USB_ISRXFRM(type)) { if (action == HANDLE) { |