Re: issue 272

"Craig Small" <[email protected]> ("csmall") Thu, 2 Mar 2023 19:50:24 +1100
Newsgroups gmane.linux.procps.devel
Message-ID <CALy8Cw7t1AAD8K6JMih1Nee=K3y2Pv4_=+1HRrRombC_Cz0dTw@mail.gmail.com>
--000000000000227d6c05f5e6ecab
Content-Type: text/plain; charset="UTF-8"

Hi Jim,

On Thu, 2 Mar 2023 at 06:18, Jim Warner <[email protected]> wrote:

> Attached is a patch to address some soft spots in the stat.c module
> triggered by issue #272.
>
That seems to have fixed it. I have recently made a fakeproc library that
will use test directories to replace files under /proc.
 ./fakeproc sh4a /bin/ps aux
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.0 168588 13032 ?        Ss/bin/ps: Unable to get
system boot time
$ ./fakeproc sh4a ~/Projects/procps/procps/src/ps/pscommand aux | head -2
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.0 168588 13032 ?        Ss   Feb27   0:03
/sbin/init splash


> It doesn't really impact the API or ABI but would require bumping the
> library 'revision'.
>
OK.


> If you choose to push it, I'll alert John Glaubitz who raised the issue.
>
It's pushed now.


> When you're ready to break those interfaces, I could offer some patches
> implementing these changes:
>
>      1. add 'disk sleep' separated from 'sleeping', <pids> API
>      2. add two new ZSWAP kernel 5.19 fields, <meminfo> API
>      3. add a SCHED_CLASSSTR paralleling ps, <pids> API
>
> Item 1 relates to issue #265. Items 2 and 3 could be added in such a way
> to preserve both the API and ABI.  However, since #1 breaks both I would
> keep the new enumerators alphabetical.
>
I'll let you know when its right to break the API.

 - Craig

--000000000000227d6c05f5e6ecab
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr">Hi Jim,<br></div><br><div class=3D"gmail_=
quote"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, 2 Mar 2023 at 06:18, J=
im Warner &lt;<a href=3D"mailto:[email protected]">james.warner@comc=
ast.net</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"=
margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-lef=
t:1ex">
Attached is a patch to address some soft spots in the stat.c module <br>
triggered by issue #272.<br></blockquote><div>That seems to have fixed it. =
I have recently made a fakeproc library that will use test directories to r=
eplace files under /proc.</div><div>=C2=A0./fakeproc sh4a /bin/ps aux<br>US=
ER =C2=A0 =C2=A0 =C2=A0 =C2=A0 PID %CPU %MEM =C2=A0 =C2=A0VSZ =C2=A0 RSS TT=
Y =C2=A0 =C2=A0 =C2=A0STAT START =C2=A0 TIME COMMAND<br>root =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 1 =C2=A00.0 =C2=A00.0 168588 13032 ? =C2=A0 =C2=A0 =C2=
=A0 =C2=A0Ss/bin/ps: Unable to get system boot time</div><div>$ ./fakeproc =
sh4a ~/Projects/procps/procps/src/ps/pscommand aux | head -2<br>USER =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 PID %CPU %MEM =C2=A0 =C2=A0VSZ =C2=A0 RSS TTY =C2=A0 =
=C2=A0 =C2=A0STAT START =C2=A0 TIME COMMAND<br>root =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 1 =C2=A00.0 =C2=A00.0 168588 13032 ? =C2=A0 =C2=A0 =C2=A0 =C2=
=A0Ss =C2=A0 Feb27 =C2=A0 0:03 /sbin/init splash<br></div><div>=C2=A0<br></=
div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bor=
der-left:1px solid rgb(204,204,204);padding-left:1ex">
It doesn&#39;t really impact the API or ABI but would require bumping the <=
br>
library &#39;revision&#39;.<br></blockquote><div>OK.</div><div>=C2=A0<br></=
div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bor=
der-left:1px solid rgb(204,204,204);padding-left:1ex">
If you choose to push it, I&#39;ll alert John Glaubitz who raised the issue=
.<br></blockquote><div>It&#39;s pushed now.</div><div>=C2=A0<br></div><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:=
1px solid rgb(204,204,204);padding-left:1ex">
When you&#39;re ready to break those interfaces, I could offer some patches=
 <br>
implementing these changes:<br>
<br>
=C2=A0 =C2=A0 =C2=A01. add &#39;disk sleep&#39; separated from &#39;sleepin=
g&#39;, &lt;pids&gt; API<br>
=C2=A0 =C2=A0 =C2=A02. add two new ZSWAP kernel 5.19 fields, &lt;meminfo&gt=
; API<br>
=C2=A0 =C2=A0 =C2=A03. add a SCHED_CLASSSTR paralleling ps, &lt;pids&gt; AP=
I<br>
<br>
Item 1 relates to issue #265. Items 2 and 3 could be added in such a way <b=
r>
to preserve both the API and ABI.=C2=A0 However, since #1 breaks both I wou=
ld <br>
keep the new enumerators alphabetical.<br></blockquote><div>I&#39;ll let yo=
u know when its right to break the API.</div><div><br></div><div>=C2=A0- Cr=
aig</div><br></div></div>

--000000000000227d6c05f5e6ecab--