[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK-6q+hx8MNeZCc0T-sTPdMgXH=ZcpLVqc2-5+psMCoQ_W0FxA@mail.gmail.com>
Date: Wed, 21 Aug 2024 09:13:21 -0400
From: Alexander Aring <aahringo@...hat.com>
To: Jakub Kicinski <kuba@...nel.org>
Cc: teigland@...hat.com, gfs2@...ts.linux.dev, song@...nel.org,
yukuai3@...wei.com, agruenba@...hat.com, mark@...heh.com, jlbec@...lplan.org,
joseph.qi@...ux.alibaba.com, gregkh@...uxfoundation.org, rafael@...nel.org,
akpm@...ux-foundation.org, linux-kernel@...r.kernel.org,
linux-raid@...r.kernel.org, ocfs2-devel@...ts.linux.dev,
netdev@...r.kernel.org, vvidic@...entin-vidic.from.hr, heming.zhao@...e.com,
lucien.xin@...il.com
Subject: Re: [PATCH dlm/next 11/12] dlm: add nldlm net-namespace aware UAPI
Hi Jakob,
On Mon, Aug 19, 2024 at 6:12 PM Jakub Kicinski <kuba@...nel.org> wrote:
>
> On Mon, 19 Aug 2024 14:37:41 -0400 Alexander Aring wrote:
> > Recent patches introduced support to separate DLM lockspaces on a per
> > net-namespace basis. Currently the file based configfs mechanism is used
> > to configure parts of DLM. Due the lack of namespace awareness (and it's
> > probably complicated to add support for this) in configfs we introduce a
> > socket based UAPI using "netlink". As the DLM subsystem offers now a
> > config layer it can simultaneously being used with configfs, just that
> > nldlm is net-namespace aware.
> >
> > Most of the current configfs functionality that is necessary to
> > configure DLM is being adapted for now. The nldlm netlink interface
> > offers also a multicast group for lockspace events NLDLM_MCGRP_EVENT.
> > This event group can be used as alternative to the already existing udev
> > event behaviour just it only contains DLM related subsystem events.
> >
> > Attributes e.g. nodeid, port, IP addresses are expected from the user
> > space to fill those numbers as they appear on the wire. In case of DLM
> > fields it is using little endian byte order.
> >
> > The dumps are being designed to scale in future with high numbers of
> > members in a lockspace. E.g. dump members require an unique lockspace
> > identifier (currently only the name) and nldlm is using a netlink dump
> > behaviour to be prepared if all entries may not fit into one netlink
> > message.
>
> Did you consider using the YAML spec stuff to code gen the policies
> and make user space easier?
>
I will try to take a look into that and prepare a spec for PATCHv2. I
saw that there is a documentation about it at [0].
I did a kind of "prototype" libnldlm [1] to have easy access to the
netlink api but if there are more common ways to generate code to
easily access it, I am happy to give it a try.
Thanks.
- Alex
[0] https://docs.kernel.org/userspace-api/netlink/specs.html
[1] https://gitlab.com/netcoder/nldlm/
Powered by blists - more mailing lists