With gcc 8.2.0: drivers/dio/dio.c: In function ‘dio_init’: drivers/dio/dio.c:240:17: warning: ‘strcpy’ writing 69 or more bytes into a region of size 64 overflows the destination [-Wstringop-overflow=] strcpy(dev->name,dio_getname(dev->id)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Indeed, if an unknown board is present, the target buffer will overflow. Shorten the unknown board name string to fix this, and declare it as an array while at it. Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> --- v2: - Declare unknowndioname as an array. --- drivers/dio/dio.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/dio/dio.c b/drivers/dio/dio.c index 92e78d16b476550c..c9aa15fb86a9aed0 100644 --- a/drivers/dio/dio.c +++ b/drivers/dio/dio.c @@ -89,8 +89,8 @@ static struct dioname names[] = #undef DIONAME #undef DIOFBNAME -static const char *unknowndioname - = "unknown DIO board -- please email <linux-m68k@xxxxxxxxxxxxxxxxxxxx>!"; +static const char unknowndioname[] + = "unknown DIO board, please email linux-m68k@xxxxxxxxxxxxxxxxxxxx"; static const char *dio_getname(int id) { -- 2.17.1