[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <355b43c3-fb0b-4e94-b49f-a008843f1267@molgen.mpg.de>
Date: Tue, 7 Oct 2025 14:06:55 +0200
From: Paul Menzel <pmenzel@...gen.mpg.de>
To: Larysa Zaremba <larysa.zaremba@...el.com>
Cc: intel-wired-lan@...ts.osuosl.org, Tony Nguyen
<anthony.l.nguyen@...el.com>, Przemek Kitszel
<przemyslaw.kitszel@...el.com>, Andrew Lunn <andrew+netdev@...n.ch>,
"David S. Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Joshua Hay <joshua.a.hay@...el.com>, Chittim Madhu
<madhu.chittim@...el.com>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, Emil Tantilov <emil.s.tantilov@...el.com>,
Michal Swiatkowski <michal.swiatkowski@...ux.intel.com>,
Aleksandr Loktionov <aleksandr.loktionov@...el.com>
Subject: Re: [Intel-wired-lan] [PATCH iwl-net] idpf: fix LAN memory regions
command on some NVMs
Dear Larysa,
Am 07.10.25 um 13:46 schrieb Larysa Zaremba:
> IPU SDK versions 1.9 through 2.0.5 require send buffer to contain a single
> empty memory region. Set number of regions to 1 and use appropriate send
> buffer size to satisfy this requirement.
Where are the SDK requirements documented?
What are the current SDK versions?
Do you have a reproducer?
> Suggested-by: Michal Swiatkowski <michal.swiatkowski@...ux.intel.com>
> Reviewed-by: Aleksandr Loktionov <aleksandr.loktionov@...el.com>
> Signed-off-by: Larysa Zaremba <larysa.zaremba@...el.com>
> ---
> drivers/net/ethernet/intel/idpf/idpf_virtchnl.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
> index fa3ce1e4f6ac..af8b3ebee4d4 100644
> --- a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
> +++ b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
> @@ -1016,6 +1016,9 @@ static int idpf_send_get_lan_memory_regions(struct idpf_adapter *adapter)
> struct idpf_vc_xn_params xn_params = {
> .vc_op = VIRTCHNL2_OP_GET_LAN_MEMORY_REGIONS,
> .recv_buf.iov_len = IDPF_CTLQ_MAX_BUF_LEN,
> + .send_buf.iov_len =
> + sizeof(struct virtchnl2_get_lan_memory_regions) +
> + sizeof(struct virtchnl2_mem_region),
> .timeout_ms = IDPF_VC_XN_DEFAULT_TIMEOUT_MSEC,
> };
> int num_regions, size;
> @@ -1028,6 +1031,8 @@ static int idpf_send_get_lan_memory_regions(struct idpf_adapter *adapter)
> return -ENOMEM;
>
> xn_params.recv_buf.iov_base = rcvd_regions;
> + rcvd_regions->num_memory_regions = cpu_to_le16(1);
> + xn_params.send_buf.iov_base = rcvd_regions;
> reply_sz = idpf_vc_xn_exec(adapter, &xn_params);
> if (reply_sz < 0)
> return reply_sz;
Kind regards,
Paul
Powered by blists - more mailing lists