On 12/28/2023 9:39 AM, Linga, Pavan Kumar wrote:
On 12/27/2023 1:45 PM, Paul Menzel wrote:
Dear Pavan,
Thank you for yoru patch.
Am 27.12.23 um 18:37 schrieb Pavan Kumar Linga:
Config option in arm random config file
Sorry, I do not understand this part of the sentence. What Kconfig
option was selected exactly causing this behavior.
> Apologies as I couldn't find the config option that was causing this. As
the driver compilation with arm rand config was failing, posted the fix
first. Will debug further to find the config option that resulted in
this failure. Thanks for the review.
After further debug, found that the arm random config was using OABI
(old ABI) which was inferred from the compiler option '-mabi=apcs-gnu'.
kconfig option 'CONFIG_AEABI' is related to this and was disabled by
default in the config file.
Static assertion check passed when compiled the driver with
'CONFIG_AEABI' enabled. The check also passed on explicitly changing the
compiler option to '-mabi=aapcs-linux'. I will update the commit message
with this info.
Regards,
Pavan
is causing the compiler
to add padding. Avoid it by using "__packed" structure attribute
for virtchnl2_ptype struct.
Did the compiler emit a warning? If so, please paste it.
Here is the compiler error and also will update the commit message with
the error:
include/linux/build_bug.h:78:41: error: static assertion failed: "(6) ==
sizeof(struct virtchnl2_ptype)"
78 | #define __static_assert(expr, msg, ...) _Static_assert(expr,
msg)
| ^~~~~~~~~~~~~~
include/linux/build_bug.h:77:34: note: in expansion of macro
'__static_assert'
77 | #define static_assert(expr, ...) __static_assert(expr,
##__VA_ARGS__, #expr)
| ^~~~~~~~~~~~~~~
drivers/net/ethernet/intel/idpf/virtchnl2.h:26:9: note: in expansion
of macro 'static_assert'
26 | static_assert((n) == sizeof(struct X))
| ^~~~~~~~~~~~~
drivers/net/ethernet/intel/idpf/virtchnl2.h:982:1: note: in
expansion of macro 'VIRTCHNL2_CHECK_STRUCT_LEN'
982 | VIRTCHNL2_CHECK_STRUCT_LEN(6, virtchnl2_ptype);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
Regards,
Pavan
Fixes: 0d7502a9b4a7 ("virtchnl: add virtchnl version 2 ops")
Reported-by: kernel test robot <[email protected]>
Closes:
https://lore.kernel.org/oe-kbuild-all/[email protected]
Reviewed-by: Przemek Kitszel <[email protected]>
Signed-off-by: Pavan Kumar Linga <[email protected]>
---
drivers/net/ethernet/intel/idpf/virtchnl2.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/idpf/virtchnl2.h
b/drivers/net/ethernet/intel/idpf/virtchnl2.h
index 8dc83788972..dd750e6dcd0 100644
--- a/drivers/net/ethernet/intel/idpf/virtchnl2.h
+++ b/drivers/net/ethernet/intel/idpf/virtchnl2.h
@@ -978,7 +978,7 @@ struct virtchnl2_ptype {
u8 proto_id_count;
__le16 pad;
__le16 proto_id[];
-};
+} __packed;
VIRTCHNL2_CHECK_STRUCT_LEN(6, virtchnl2_ptype);
/**
Reviewed-by: Paul Menzel <[email protected]>
Kind regards,
Paul