Re: [PATCH] net/smc: Add autocork support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Feb 17, 2022 at 10:37:28AM +0100, Stefan Raspl wrote:
>On 2/16/22 16:27, dust.li wrote:
>> On Wed, Feb 16, 2022 at 02:58:32PM +0100, Stefan Raspl wrote:
>> > On 2/16/22 04:49, Dust Li wrote:
>> > > diff --git a/net/smc/smc_tx.c b/net/smc/smc_tx.c
>> > > index 5df3940d4543..bc737ac79805 100644
>> > > --- a/net/smc/smc_tx.c
>> > > +++ b/net/smc/smc_tx.c
>> > > @@ -31,6 +31,7 @@
>> > >    #include "smc_tracepoint.h"
>> > >    #define SMC_TX_WORK_DELAY	0
>> > > +#define SMC_DEFAULT_AUTOCORK_SIZE	(64 * 1024)
>> > 
>> > Probably a matter of taste, but why not use hex here?
>> 
>> Yeah, I have no option on this, I will change it in the next version.
>> But I think it should have no real difference since the compiler
>> should do the calculation.
>
>Agreed - this is just to make it a tiny bit easier to digest.
>
>
>> > Are there any fixed plans to make SMC_DEFAULT_AUTOCORK dynamic...? 'cause
>> > otherwise we could simply eliminate this parameter, and use the define within
>> > smc_should_autocork() instead.
>> 
>> Yes! Actually I'd like it to be dynamic variable too...
>> 
>> I didn't do it because I also want to add a control switch for the autocork
>> feature just like TCP. In that case I need to add 2 variables here.
>> But I found adding dynamic variables using netlink would introduce a lot of
>> redundant code and may even bring ABI compatibility issues in the future, as
>> I mentioned here:
>> https://lore.kernel.org/netdev/20220216114618.GA39286@xxxxxxxxxxxxxxxxx/T/#mecfcd3f8c816d07dbe35e4748d17008331c89523
>> 
>> I'm not sure that's the right way to do it. In this case, I prefer using
>> sysctl which I think would be easier, but I would like to listen to your advice.
>
>Extending the Netlink interface should be possible without breaking the API -
>we'd be adding further variables, not modifying or removing existing ones.
>Conceptually, Netlink is the way to go for any userspace interaction with
>SMC, which includes anything config-related.


>Now we understand that cloud workloads are a bit different, and the desire to
>be able to modify the environment of a container while leaving the container
>image unmodified is understandable. But then again, enabling the base image
>would be the cloud way to address this. The question to us is: How do other
>parts of the kernel address this?

I'm not familiar with K8S, but from one of my colleague who has worked
in that area tells me for resources like CPU/MEM and configurations
like sysctl, can be set using K8S configuration:
https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/

I don't know. Maybe because most of the current kernel configurations
are configured through sysfs that for those container orchestration
systems have supported it ?

Thanks



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux