History log of /linux-master/drivers/staging/vme_user/vme_tsi148.c
Revision Date Author Comments
# e26511f6 23-Oct-2023 Michael Straube <straube.linux@gmail.com>

staging: vme_user: prefer strscpy over strcpy

Using strcpy has potential for buffer overflows. It should be replaced
with strscpy where possible. In this case the return value of strcpy is
not used, so we can safely replace it with strscpy.

Signed-off-by: Michael Straube <straube.linux@gmail.com>
Link: https://lore.kernel.org/r/20231023090001.7273-1-straube.linux@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# 2a7f242e 13-Oct-2023 Soumya Negi <soumya.negi97@gmail.com>

staging: vme_user: Fix unbalanced {} in if-else blocks

Add missing braces so that {} are balanced in all arms of if-else
statements as per Linux coding style. Issue found by checkpatch.pl

Signed-off-by: Soumya Negi <soumya.negi97@gmail.com>
Link: https://lore.kernel.org/r/b0fad6de7405a105235b3b595e0bb2c51be7dcf0.1697240381.git.soumya.negi97@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# 56d098b7 15-Mar-2023 Menna Mahmoud <eng.mennamahmoud.mm@gmail.com>

staging: vme_user: remove unnecessary blank lines

Remove unnecessary blank lines before a close brace
as reported by checkpatch script

"CHECK: Blank lines aren't necessary before a close brace '}'"

Signed-off-by: Menna Mahmoud <eng.mennamahmoud.mm@gmail.com>
Link: https://lore.kernel.org/r/c8fedfeca9a56dba26846a5bed56642cc694bcbe.1678899549.git.eng.mennamahmoud.mm@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# a5931966 15-Mar-2023 Menna Mahmoud <eng.mennamahmoud.mm@gmail.com>

staging: vme_user: add space around operators

Add a space before and after the operator, for readability.

Reported by checkpatch script:

" CHECK: spaces preferred around that '+', '<<' and '>>' ".

Signed-off-by: Menna Mahmoud <eng.mennamahmoud.mm@gmail.com>
Link: https://lore.kernel.org/r/57006c151d4d95550b987143a6650f8b3594ddea.1678899549.git.eng.mennamahmoud.mm@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# bf44039f 04-Dec-2022 Matt Jan <zoo868e@gmail.com>

staging: vme_user: remove multiple blank lines

Remove multiple unnecessary blank lines in accordance with the Linux
kernel coding-style regulations. The issues were reported by the
checkpatch script.

Signed-off-by: Matt Jan <zoo868e@gmail.com>
Link: https://lore.kernel.org/r/20221204101916.GA51992@zoo868e
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# 357057ee 16-Nov-2022 Gaosheng Cui <cuigaosheng1@huawei.com>

staging: vme_user: Fix possible UAF in tsi148_dma_list_add

Smatch report warning as follows:

drivers/staging/vme_user/vme_tsi148.c:1757 tsi148_dma_list_add() warn:
'&entry->list' not removed from list

In tsi148_dma_list_add(), the error path "goto err_dma" will not
remove entry->list from list->entries, but entry will be freed,
then list traversal may cause UAF.

Fix by removeing it from list->entries before free().

Fixes: b2383c90a9d6 ("vme: tsi148: fix first DMA item mapping")
Signed-off-by: Gaosheng Cui <cuigaosheng1@huawei.com>
Link: https://lore.kernel.org/r/20221117035914.2954454-1-cuigaosheng1@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# f13bd29c 29-Jul-2022 Mingyi Kang <jerrykang026@gmail.com>

staging: vme_user: Fix checkpatch warnings in vme_tsi148.c

This patch fix the follwing checkpatch warnings:

WARNING: quoted string split across lines
#129: FILE: drivers/staging/vme_user/vme_tsi148.c:129:
+ dev_err(tsi148_bridge->parent, "VME Mailbox %d received"
+ ": 0x%x\n", i, val);

WARNING: quoted string split across lines
#147: FILE: drivers/staging/vme_user/vme_tsi148.c:147:
+ dev_err(tsi148_bridge->parent, "PCI Exception at address: 0x%08x:%08x, "
+ "attributes: %08x\n",

WARNING: quoted string split across lines
#153: FILE: drivers/staging/vme_user/vme_tsi148.c:153:
+ dev_err(tsi148_bridge->parent, "PCI-X attribute reg: %08x, PCI-X split "
+ "completion reg: %08x\n",

WARNING: quoted string split across lines
#185: FILE: drivers/staging/vme_user/vme_tsi148.c:185:
+ dev_err(tsi148_bridge->parent, "VME Bus Exception Overflow "
+ "Occurred\n");

WARNING: quoted string split across lines
#321: FILE: drivers/staging/vme_user/vme_tsi148.c:321:
+ dev_err(tsi148_bridge->parent, "Can't get assigned pci irq "
+ "vector %02X\n", pdev->irq);

WARNING: quoted string split across lines
#533: FILE: drivers/staging/vme_user/vme_tsi148.c:533:
+ dev_err(tsi148_bridge->parent, "Invalid PCI Offset "
+ "alignment\n");

WARNING: space prohibited before semicolon
#591: FILE: drivers/staging/vme_user/vme_tsi148.c:591:
+ temp_ctl |= TSI148_LCSR_ITAT_SUPR ;

WARNING: quoted string split across lines
#766: FILE: drivers/staging/vme_user/vme_tsi148.c:766:
+ dev_err(tsi148_bridge->parent, "Failed to allocate mem "
+ "resource for window %d size 0x%lx start 0x%lx\n",

WARNING: quoted string split across lines
#831: FILE: drivers/staging/vme_user/vme_tsi148.c:831:
+ dev_err(tsi148_bridge->parent, "Invalid VME Window "
+ "alignment\n");
WARNING: quoted string split across lines
#838: FILE: drivers/staging/vme_user/vme_tsi148.c:838:
+ dev_err(tsi148_bridge->parent, "Size must be non-zero for "
+ "enabled windows\n");

WARNING: quoted string split across lines
#853: FILE: drivers/staging/vme_user/vme_tsi148.c:853:
+ dev_err(tsi148_bridge->parent, "Unable to allocate memory for "
+ "resource\n");

WARNING: quoted string split across lines
#894: FILE: drivers/staging/vme_user/vme_tsi148.c:894:
+ dev_err(tsi148_bridge->parent, "Invalid VME Offset "
+ "alignment\n");

WARNING: quoted string split across lines
#941: FILE: drivers/staging/vme_user/vme_tsi148.c:941:
+ dev_warn(tsi148_bridge->parent, "Currently not setting "
+ "Broadcast Select Registers\n");

WARNING: quoted string split across lines
#1455: FILE: drivers/staging/vme_user/vme_tsi148.c:1455:
+ dev_err(dev, "Currently not setting Broadcast Select "
+ "Registers\n");

WARNING: quoted string split across lines
#1554: FILE: drivers/staging/vme_user/vme_tsi148.c:1554:
+ dev_err(dev, "Currently not setting Broadcast Select "
+ "Registers\n");

WARNING: quoted string split across lines
#1643: FILE: drivers/staging/vme_user/vme_tsi148.c:1643:
+ dev_err(tsi148_bridge->parent, "Descriptor not aligned to 8 "
+ "byte boundary as required: %p\n",

WARNING: else is not generally useful after a break or return
#1830: FILE: drivers/staging/vme_user/vme_tsi148.c:1830:
+ return -EBUSY;
+ } else {

warning: quoted string split across lines
#1939: file: drivers/staging/vme_user/vme_tsi148.c:1939:
+ dev_err(tsi148_bridge->parent, "location monitor "
+ "callback attached, can't reset\n");

WARNING: space prohibited before semicolon
#1964: FILE: drivers/staging/vme_user/vme_tsi148.c:1964:
+ lm_ctl |= TSI148_LCSR_LMAT_SUPR ;

WARNING: quoted string split across lines
#2055: FILE: drivers/staging/vme_user/vme_tsi148.c:2055:
+ dev_err(tsi148_bridge->parent, "Location monitor not properly "
+ "configured\n");

WARNING: quoted string split across lines
#2200: FILE: drivers/staging/vme_user/vme_tsi148.c:2200:
+ dev_err(tsi148_bridge->parent, "Failed to allocate memory for "
+ "CR/CSR image\n");

WARNING: quoted string split across lines
#2241: FILE: drivers/staging/vme_user/vme_tsi148.c:2241:
+ dev_err(tsi148_bridge->parent, "Configuring flush image"
+ " failed\n");

Signed-off-by: Mingyi Kang <jerrykang026@gmail.com>
Link: https://lore.kernel.org/r/20220730045726.55452-1-jerrykang026@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# 35ba63b8 06-Jun-2022 Arnd Bergmann <arnd@arndb.de>

vme: move back to staging

The VME subsystem graduated from staging into a top-level subsystem in
2012, with commit db3b9e990e75 ("Staging: VME: move VME drivers out of
staging") stating:

The VME device drivers have not moved out yet due to some API
questions they are still working through, that should happen soon,
hopefully.

However, this never happened: maintenance of drivers/vme effectively
stopped in 2017, with all subsequent changes being treewide cleanups.
No hardware driver remains in staging, only the limited user-level
access, and I just removed one of the two bridge drivers and the only
remaining board.

drivers/staging/vme/devices/ was recently moved to
drivers/staging/vme_user/, but as the vme_user driver is the only one
remaining for this subsystem, it is easier to just move the remaining
three source files into this directory rather than keeping the original
hierarchy.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20220606084109.4108188-3-arnd@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>