[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZqurACK6FdrxiISt@mini-arch>
Date: Thu, 1 Aug 2024 08:34:24 -0700
From: Stanislav Fomichev <sdf@...ichev.me>
To: Petr Machata <petrm@...dia.com>
Cc: Jakub Kicinski <kuba@...nel.org>, netdev@...r.kernel.org,
davem@...emloft.net, edumazet@...gle.com, pabeni@...hat.com,
Shuah Khan <shuah@...nel.org>, Joe Damato <jdamato@...tly.com>,
linux-kselftest@...r.kernel.org
Subject: Re: [PATCH net-next v2 1/2] selftests: net-drv: exercise queue stats
when the device is down
On 08/01, Petr Machata wrote:
>
> Stanislav Fomichev <sdf@...ichev.me> writes:
>
> > On 07/31, Jakub Kicinski wrote:
> >> On Wed, 31 Jul 2024 13:34:58 +0200 Petr Machata wrote:
> >> > > + qstat = netfam.qstats_get({"ifindex": cfg.ifindex}, dump=True)
> >> > > + except NlError as e:
> >> > > + if e.error == 95:
> >> >
> >> > Could you do this as if e.error == errno.ENOTSUP?
> >>
> >> just to be clear EOPNOTSUPP ..
> >
> > That might be the reason it's coded explicitly as 95? :-D
>
> Both exist, I just didn't notice the latter.
>
> >>> import errno
> >>> errno.ENOTSUP
> 95
> >>> errno.EOPNOTSUPP
> 95
I believe Jakub was talking about kernel's ENOTSUPP (524) vs EOPNOTSUPP (95):
$ grep ENOTSUPP include/linux/errno.h
#define ENOTSUPP 524 /* Operation is not supported */
$ grep EOPNOTSUPP include/uapi/asm-generic/errno.h
#define EOPNOTSUPP 95 /* Operation not supported on transport endpoint */
These two are frequently confused.
OTOH, ENOTSUP looks like a userspace/libc invention:
$ grep -w ENOTSUP /usr/include/bits/errno.h
# ifndef ENOTSUP
# define ENOTSUP EOPNOTSUPP
I'm gonna stick to kernel's EOPNOTSUPP to make it look similar to what
we have on the kernel side.
Powered by blists - more mailing lists