lkml.org 
[lkml]   [2023]   [Mar]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH net-next] net: mana: Add support for jumbo frame
Haiyang Zhang <haiyangz@microsoft.com> :
> > From: Francois Romieu <romieu@fr.zoreil.com>
[...]
> > I do not see where the driver could depend on the MTU. Even if it fails,
> > a single call to mana_change_mtu should thus never wreck the old working
> > state/configuration.
> >
> > Stated differently, the detach/attach implementation is simple but
> > it makes the driver less reliable than it could be.
> >
> > No ?
>
> No, it doesn't make the driver less reliable. To safely remove and reallocate
> DMA buffers with different size, we have to stop the traffic. So, mana_detach()
> is called. We also call mana_detach() in mana_close(). So the process in
> mana_change_mtu() is no more risky than ifdown/ifup of the NIC.
>
> In some rare cases, if the system memory is running really low, the bigger
> buffer allocation may fail, so we re-try with the previous MTU. I don't expect
> it to fail again. But we still check & log the error code for completeness and
> debugging.

In a ideal world, I would expect change_mtu() to allocate the new resources,
bail out if some allocation fails, stop the traffic, swap the old and new
resources, then restart the traffic and release the old resources.
This way the device is never left in a failed state.

--
Ueimor

\
 
 \ /
  Last update: 2023-03-27 01:08    [W:0.043 / U:0.240 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site