Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 May 2022 16:33:29 +0200
From:      Mateusz Guzik <mjguzik@gmail.com>
To:        "Alexander V. Chernikov" <melifaro@ipfw.ru>
Cc:        "Alexander V. Chernikov" <melifaro@freebsd.org>,  "src-committers@freebsd.org" <src-committers@freebsd.org>,  "dev-commits-src-all@freebsd.org" <dev-commits-src-all@freebsd.org>,  "dev-commits-src-main@freebsd.org" <dev-commits-src-main@freebsd.org>
Subject:   Re: git: 8c0d1eca7834 - main - sockbuf: retain backward compatibility with userland after d59bc188d652
Message-ID:  <CAGudoHG1v1f86v8mGjs7W5hq1ibrjKaJ4fZTyxAfAufuYD6A0A@mail.gmail.com>
In-Reply-To: <8909171653936542@iva6-17bf07036239.qloud-c.yandex.net>
References:  <202205301510.24UFAxvj014259@gitrepo.freebsd.org> <CAGudoHGptA4h2Nvb06WCTP7iXbWMNGgcUgiCeaFL0cXz=7TGnw@mail.gmail.com> <8909171653936542@iva6-17bf07036239.qloud-c.yandex.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 5/30/22, Alexander V. Chernikov <melifaro@ipfw.ru> wrote:
>
>
> 30.05.2022, 16:18, "Mateusz Guzik" <mjguzik@gmail.com>:
>>
>> should probably CTASSERT on size then
>
> Sorry, I=E2=80=99m afraid I don=E2=80=99t get it. Could you please clarif=
y?
>>

diff --git a/sys/sys/socketvar.h b/sys/sys/socketvar.h
index 249e0800f915..5fc21206b1bf 100644
--- a/sys/sys/socketvar.h
+++ b/sys/sys/socketvar.h
@@ -586,6 +586,14 @@ struct xsocket {
        } so_rcv, so_snd;
 };

+#if _LP64
+_Static_assert(sizeof(struct xsocket) =3D=3D 240, "bad")
+#elsif _LP32
+....
+#else
+#error "port me"
+#endif
+
 #ifdef _KERNEL
 void   sotoxsocket(struct socket *so, struct xsocket *xso);
 void   sbtoxsockbuf(struct sockbuf *sb, struct xsockbuf *xsb);

>> On 5/30/22, Alexander V. Chernikov <melifaro@freebsd.org> wrote:
>>>
>>>  The branch main has been updated by melifaro:
>>>
>>>  URL:
>>>  https://cgit.FreeBSD.org/src/commit/?id=3D8c0d1eca7834bfd5a05c86bf20a7=
600917057492
>>>
>>>  commit 8c0d1eca7834bfd5a05c86bf20a7600917057492
>>>  Author: Alexander V. Chernikov <melifaro@FreeBSD.org>
>>>  AuthorDate: 2022-05-30 14:56:25 +0000
>>>  Commit: Alexander V. Chernikov <melifaro@FreeBSD.org>
>>>  CommitDate: 2022-05-30 15:10:53 +0000
>>>
>>>      sockbuf: retain backward compatibility with userland after
>>> d59bc188d652
>>>
>>>      Add spare fields to xsockbuf in place of sb_mcnt / sb_ccnt to avoi=
d
>>>       rebuilding userland binaries like sockstat(1).
>>>
>>>      Reviewed by: glebius
>>>  ---
>>>   sys/sys/socketvar.h | 2 ++
>>>   1 file changed, 2 insertions(+)
>>>
>>>  diff --git a/sys/sys/socketvar.h b/sys/sys/socketvar.h
>>>  index 52b9376f0559..249e0800f915 100644
>>>  --- a/sys/sys/socketvar.h
>>>  +++ b/sys/sys/socketvar.h
>>>  @@ -577,6 +577,8 @@ struct xsocket {
>>>                   uint32_t sb_cc;
>>>                   uint32_t sb_hiwat;
>>>                   uint32_t sb_mbcnt;
>>>  + uint32_t sb_spare0; /* was sb_mcnt */
>>>  + uint32_t sb_spare1; /* was sb_ccnt */
>>>                   uint32_t sb_mbmax;
>>>                   int32_t sb_lowat;
>>>                   int32_t sb_timeo;
>>>
>>
>>
>> --
>> Mateusz Guzik <mjguzik gmail.com>
>


--=20
Mateusz Guzik <mjguzik gmail.com>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGudoHG1v1f86v8mGjs7W5hq1ibrjKaJ4fZTyxAfAufuYD6A0A>