On 6/10/22 02:31, Frode Nordahl wrote:
> On Fri, Jun 3, 2022 at 4:16 PM Frode Nordahl
> <frode.nord...@canonical.com> wrote:
>>
>> On Thu, Jun 2, 2022 at 6:58 PM Ilya Maximets <i.maxim...@ovn.org> wrote:
>>>
>>> On 6/1/22 22:53, Gregory Rose wrote:
>>>>
>>>>
>>>> On 5/31/2022 12:22 PM, Frode Nordahl wrote:
>>>>> On Tue, May 31, 2022 at 7:05 PM Ilya Maximets <i.maxim...@ovn.org> wrote:
>>>>>>
>>>>>> On 5/31/22 17:36, Gregory Rose wrote:
>>>>>>>
>>>>>>>
>>>>>>> On 5/25/2022 6:47 AM, Flavio Leitner wrote:
>>>>>>>>
>>>>>>>> Hi Greg,
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, May 23, 2022 at 09:10:36PM +0200, Ilya Maximets wrote:
>>>>>>>>> On 5/19/22 20:04, Gregory Rose wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 4/15/2022 2:42 PM, Greg Rose wrote:
>>>>>>>>>>> It is time to remove support for the OVS kernel driver and push
>>>>>>>>>>> towards use of the upstream Linux openvswitch kernel driver
>>>>>>>>>>> in it's place [1].
>>>>>>>>>>>
>>>>>>>>>>> This patch series represents a first attempt but there are a few
>>>>>>>>>>> primary remaining issues that I have yet to address.
>>>>>>>>>>>
>>>>>>>>>>> A) Removal of debian packing support for the dkms kernel driver
>>>>>>>>>>>       module. The debian/rules are not well known to me - I've never
>>>>>>>>>>>       actually made any changes in that area and do not have a
>>>>>>>>>>>       well formed understanding of how debian packaging works.  I 
>>>>>>>>>>> wil
>>>>>>>>>>>       attempt to fix that up in upcoming patch series.
>>>>>>>>>>> B) Figuring out how the github workflow - I removed the tests I
>>>>>>>>>>>       could find that depend on the Linux kernel (i.e. they use
>>>>>>>>>>>       install_kernel() function.  Several other tests are  failing
>>>>>>>>>>>       that would not seem to depend on the Linux kernel.  I need to
>>>>>>>>>>>       read and understand that code better.
>>>>>>>>>>> C) There are many Linux specific source modules in the datapath that
>>>>>>>>>>>       will need eventual removal but some headers are still 
>>>>>>>>>>> required for
>>>>>>>>>>>       the userspace code (which seems counterintuitive but...)
>>>>>>>>>>>
>>>>>>>>>>> Reviews, suggestions, etc. are appreciated!
>>>>>>>>>>>
>>>>>>>>>>> 1.  
>>>>>>>>>>> https://mail.openvswitch.org/pipermail/ovs-dev/2022-April/393292.html
>>>>>>>>>>
>>>>>>>>>> I would like to suggest at this time that rather than removing the 
>>>>>>>>>> OVS
>>>>>>>>>> Linux kernel path that we "freeze" it at Linux 5.8. This will make it
>>>>>>>>>> easier for some consumers of OVS that are continuing to support the
>>>>>>>>>> Linux kernel datapath in old distributions.
>>>>>>>>>>
>>>>>>>>>> The ultimate goal of shifting toward DPDK and AFXDP datapaths is 
>>>>>>>>>> still
>>>>>>>>>> preserved but we are placing less burden on some consumers of OVS for
>>>>>>>>>> older Linux distributions.
>>>>>>>>>>
>>>>>>>>>> Perhaps in suggesting removal of the kernel datapath I was being a 
>>>>>>>>>> bit
>>>>>>>>>> overly aggressive.
>>>>>>>>>>
>>>>>>>>>> Thoughts? Concerns? Other suggestions?
>>>>>>>>>
>>>>>>>>> Hi.  I think we discussed that before.  Removal from the master branch
>>>>>>>>> doesn't mean that we will stop supporting the kernel module 
>>>>>>>>> immediately.
>>>>>>>>> It will remain in branch 2.17 which will become our new LTS series 
>>>>>>>>> soon.
>>>>>>>>> This branch will be supported until 2025.  And we also talked about
>>>>>>>>> possibility of extending the support just for a kernel module on that
>>>>>>>>> branch, if required.  It's not necassary to use the kernel module and
>>>>>>>>> OVS form the same branch, obviously.
>>>>>>>>>
>>>>>>>>> Removal from the master branch will just make it possible to remove
>>>>>>>>> the maintenance burden eventually, not right away.
>>>>>>>>>
>>>>>>>>> And FWIW, the goal is not to force everyone to use userspace datapath,
>>>>>>>>> but remove a maintenance burden and push users to use a better 
>>>>>>>>> supported
>>>>>>>>> version of a code.  Frankly, we're not doing a great job supporting 
>>>>>>>>> the
>>>>>>>>> out-of-tree module these days.  It's getting hard to backport bug 
>>>>>>>>> fixes.
>>>>>>>>> And will be even harder over time since the code drifts away from the
>>>>>>>>> version in the upstream kernel.  Mainly because we're not backporting
>>>>>>>>> new features for a few years already.
>>>>>>>>>
>>>>>>>>> Does that make sense?
>>>>>>>>
>>>>>>>> Any thoughts on this? The freeze time is approaching, so it would
>>>>>>>> be great to know your plans for this patch set.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> fbl
>>>>>>>>
>>>>>>>
>>>>>>> Hi Flavio and Ilya,
>>>>>>>
>>>>>>> I'll go ahead with the plans as per previous agreements - having issues
>>>>>>> with removing the debian kernel module support since I have never
>>>>>>> worked on debian rules type make environments.  I seem to break
>>>>>>> something with every attempt but I will keep at it.
>>>>>>>
>>>>>>> What's my time frame before the freeze?
>>>>>>
>>>>>> The "soft-freeze" supposed to be on July 1st.  The branch creation
>>>>>> for a new release - mid July.  It would be great if we can get this
>>>>>> in before the soft freeze, but branching point is also fine.
>>>>>> So, we have about 6 weeks.
>>>>>>
>>>>>> If you can think of any part of the work that can be done separately
>>>>>> by someone else, we could try and find someone to help you out.  I'm
>>>>>> not sure if we have experts on debian packaging though.  Maybe we
>>>>>> can ask some folks from Canonical.  They do their own packaging, but
>>>>>> should know a thing or two about packaging in general.
>>>>>
>>>>> We'd be happy to help out with the packaging bits.
>>>>>
>>>>> Both Debian and Ubuntu have drifted away from what is currently in the
>>>>> debian/ folder in the OVS and OVN repositories.  This state is
>>>>> problematic because from time to time someone tries to build packages
>>>>> from the OVS/OVN debian package source and then expect that package to
>>>>> work with up-/down-grades from-/to/ distro versions.
>>>>>
>>>>> So we would prefer to either remove what's there and replace it with a
>>>>> README pointing to Debian and Ubuntu package sources, or update what's
>>>>> there to match packaging state du jour.
>>>>>
>>>>
>>>> I'm fine with either solution but someone else would have to update the
>>>> debian packaging.  If just removing then I could do that and then update
>>>> the documentation.
>>>>
>>>> I'll wait to see what the consensus is.
>>>
>>> I think, you may go ahead and work on/submit the rest of the changes
>>> without debian packaging.  And we'll figure this part out separately,
>>> either by fixing up our packaging in a separate patch or by replacing
>>> it altogether with a version close to the current state in distros.
>>> What do you think?
>>>
>>>
>>> Frode, thanks for looking at this problem!  I think that having a way
>>> to build packages right from the sources is beneficial for some users,
>>> e.g. to quickly try new features/releases.  Re-building of the
>>> packages from the distribution is not a very straightforward process.
>>
>> Thank you for weighing in with your opinion on this. We'll work in
>> this direction then.
>>
>>> But, yes, there are several issues with the current debian packaging
>>> in OVS repo.  e.g. our python packaging is mostly broken and some
>>> other things are not in a very good shape.
>>>
>>> I think that updating the packaging code to match what is currently
>>> in Ubuntu/Debian should be a good move, as long as it is not tied
>>> to one particular distribution.  Patches are very welcome!
>>
>> That sounds feasible to me. We have a tradition for upstreaming
>> package sources to Debian so that the diff in Ubuntu is as small as
>> possible. So upstreaming it all the way to the origin project would
>> not be at odds with that. I'll work on a proposal and seek agreement
>> with the Debian maintainers and see where we get with that.
>>
>>> Do you know what are the main differences between current OVS upstream
>>> version and Ubuntu/Debian packaging code?  AFAIU, you're not building
>>> the dkms module already?
>>
>> The dkms package was removed from Ubuntu in 2014, Debian did the same [0].
>>
>> The main differences from upstream OVS would be:
>> - Debian/Ubuntu provide a openvswitch-switch-dpdk package that
>> integrates with a dpdk package in the distributions so that end users
>> can opt into a DPDK-enabled Open vSwitch binary
>> - Debian/Ubuntu use systemd and the package provides systemd service files
>> - Debian/Ubuntu provide openvswitch-source package for use when doing
>> integrated build of OVN
>> - None of them provide the libopenvswitch and libopenvswitch-dev packages
>>
>> The main difference between Debian and Ubuntu would be:
>> - Ubuntu builds OVS statically while Debian use `--enable-shared`
>> - Ubuntu provides systemd services to delay recording of hostname
>> until network is up ref [1]
>>
>> 0: 
>> https://salsa.debian.org/openstack-team/third-party/openvswitch/-/blob/c4c329b15cafee9ccc7ce724c0fc8aa5b7d33881/debian/changelog#L922-L937
>> 1: 
>> https://github.com/openvswitch/ovs/commit/2ad201659cedbb1134a9d27af132e491173c7e40
> 
> An update on this: We're currently in conversations with Debian
> maintainers of OVS and OVN to more closely coordinate the packaging
> between the Debian and Ubuntu projects. I however do not know if those
> conversations will conclude before the OVS 2.18 freeze.
> 
> To support the proposed removal of the out of tree build of dkms
> packages and unblock this thread of work I would propose to push the
> current state of OVS packaging from Ubuntu to the upstream repository.
> I would be ready to work on this in the week of June 27th through July
> 1st. Both projects currently override the upstream debian/ folder with
> their own sauce so we would not be breaking Debian nor Ubuntu with
> such a change, and we would at the same time support you moving
> forward with this work.
> 
> What do you think?
> 

Thanks, Frode!  I see you submitted patches, I'll take a look at
them somewhere soon.

@Greg, are there any news on the main kernel module removal work?
We're getting close to branching for the next release in ~2 weeks,
it would be great to have this work finalized before that.
If you don't have enough time, we could also find someone to take
this task over.  Just let us know.

Best regards, Ilya Maximets.
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to