On Tuesday, May 16, 2023 2:14 AM, florian@bezdeka.de florian@bezdeka.de wrote:
Am 2023-05-11 08:56, schrieb Song, Yoong Siang:
On Thursday, May 11, 2023 6:46 AM , Greg KH gregkh@linuxfoundation.org wrote:
On Thu, May 11, 2023 at 12:01:36AM +0200, Florian Bezdeka wrote:
Hi all,
On 07.05.23 08:44, gregkh@linuxfoundation.org wrote:
The patch below does not apply to the 6.1-stable tree. If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to stable@vger.kernel.org.
To reproduce the conflict and resubmit, you may use the following
commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.1.y git checkout FETCH_HEAD git cherry-pick -x 3ce29c17dc847bf4245e16aad78a7617afa96297 # <resolve conflicts, build, test, etc.> git commit -s git send-email --to 'stable@vger.kernel.org' --in-reply-to '2023050749-
deskwork-snowboard-82cf@gregkh' --subject-prefix 'PATCH 6.1.y' HEAD^..
Is someone already working on that? I would love to see this patch in 6.1. If no further activities are planned I might have the option/time to supply a backport as well.
Please supply a backport, I don't think anyone is working on it :)
Hi Florian,
I not yet got plan to backport the patch, so I am more than happy if you could supply a backport.
Most probably the issue is due to missing "#include <linux/bitfield.h>".
Exactly.
The build failure:
In file included from drivers/net/ethernet/intel/igc/igc_hw.h:17, from drivers/net/ethernet/intel/igc/igc.h:17, from drivers/net/ethernet/intel/igc/igc_main.c:19: drivers/net/ethernet/intel/igc/igc_main.c: In function ‘igc_configure_rx_ring’: drivers/net/ethernet/intel/igc/igc_base.h:92:41: error: implicit declaration of function ‘FIELD_PREP’ [-Werror=implicit-function-declaration] 92 | #define IGC_SRRCTL_BSIZEHDR(x) FIELD_PREP(IGC_SRRCTL_BSIZEHDR_MASK, \ | ^~~~~~~~~~ drivers/net/ethernet/intel/igc/igc_main.c:647:19: note: in expansion of macro ‘IGC_SRRCTL_BSIZEHDR’ 647 | srrctl |= IGC_SRRCTL_BSIZEHDR(IGC_RX_HDR_LEN); |
For 6.3 on-wards we have the following include chain:
In file included from ./include/net/xdp.h:11, from ./include/linux/netdevice.h:43, from ./include/linux/if_vlan.h:10, from drivers/net/ethernet/intel/igc/igc_main.c:6:
I think <linux/bitfield.h> is available "by accident" and your mainline patch is faulty. igc_base.h now depends on bitfield.h but you forgot to include it.
How do we deal with that? I think it should be fixed in mainline as well.
I fear that adding the missing include in igc_base.h within the backport breaks any further auto-backporting for the igc driver as patches might not apply cleanly when stable diverges from mainline.
Florian
Yes, I agree that proper fix should be adding "#include <linux/bitfield.h>" into igc_base.h. Do you got plan to submit the fix upstream?
Recently, there is a bug fix patch merged into bpf-next. That patch will add "#include <linux/bitfield.h>" into igc.h, which I think should indirectly solve the problem. Thus, backport this patch will be alternate solution: https://lore.kernel.org/all/168182464270.616355.11391652654430626584.stgit@f...
Thanks & Regards Siang
Will you do it for 5.15 and 6.2 as well?
Thanks & Regards Siang