The check for old hardware versions that did not have SMCDv2 support was using suspicious pointer magic. Address the fields using an array. Signed-off-by: Karsten Graul <kgraul@xxxxxxxxxxxxx> --- net/smc/smc_ism.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/smc/smc_ism.c b/net/smc/smc_ism.c index e9a6487a42cb..6abbdd09a580 100644 --- a/net/smc/smc_ism.c +++ b/net/smc/smc_ism.c @@ -335,7 +335,7 @@ int smcd_register_dev(struct smcd_dev *smcd) u8 *system_eid = NULL; smc_ism_get_system_eid(smcd, &system_eid); - if ((*system_eid) + 24 != '0' || (*system_eid) + 28 != '0') + if (system_eid[24] != '0' || system_eid[28] != '0') smc_ism_v2_capable = true; } /* sort list: devices without pnetid before devices with pnetid */ -- 2.17.1