aboutsummaryrefslogtreecommitdiff
path: root/drivers/tty/serial/8250/8250_pci1xxxx.c
diff options
context:
space:
mode:
authorGravatar Kees Cook <keescook@chromium.org> 2023-09-22 10:52:42 -0700
committerGravatar Greg Kroah-Hartman <gregkh@linuxfoundation.org> 2023-10-03 14:57:07 +0200
commitfb110d1b1c52277f6bf1a6918c1ac8774528eee5 (patch)
tree859ec13a5c3ff09e4714b0c3dd257c18709fc9fc /drivers/tty/serial/8250/8250_pci1xxxx.c
parentserial: exar: Add RS-485 support for Sealevel XR17V35X based cards (diff)
downloadlinux-fb110d1b1c52277f6bf1a6918c1ac8774528eee5.tar.gz
linux-fb110d1b1c52277f6bf1a6918c1ac8774528eee5.tar.bz2
linux-fb110d1b1c52277f6bf1a6918c1ac8774528eee5.zip
serial: 8250_pci1xxxx: Annotate struct pci1xxxx_8250 with __counted_by
Prepare for the coming implementation by GCC and Clang of the __counted_by attribute. Flexible array members annotated with __counted_by can have their accesses bounds-checked at run-time checking via CONFIG_UBSAN_BOUNDS (for array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family functions). As found with Coccinelle[1], add __counted_by for struct pci1xxxx_8250. [1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci Cc: Kumaravel Thiagarajan <kumaravel.thiagarajan@microchip.com> Cc: Tharun Kumar P <tharunkumar.pasumarthi@microchip.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Jiri Slaby <jirislaby@kernel.org> Cc: linux-serial@vger.kernel.org Signed-off-by: Kees Cook <keescook@chromium.org> Reviewed-by: "Gustavo A. R. Silva" <gustavoars@kernel.org> Link: https://lore.kernel.org/r/20230922175242.work.442-kees@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/serial/8250/8250_pci1xxxx.c')
-rw-r--r--drivers/tty/serial/8250/8250_pci1xxxx.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/tty/serial/8250/8250_pci1xxxx.c b/drivers/tty/serial/8250/8250_pci1xxxx.c
index 53e238c8cc89..9f9e21981929 100644
--- a/drivers/tty/serial/8250/8250_pci1xxxx.c
+++ b/drivers/tty/serial/8250/8250_pci1xxxx.c
@@ -107,7 +107,7 @@ static const int logical_to_physical_port_idx[][MAX_PORTS] = {
struct pci1xxxx_8250 {
unsigned int nr;
void __iomem *membase;
- int line[];
+ int line[] __counted_by(nr);
};
static int pci1xxxx_get_num_ports(struct pci_dev *dev)