> On 9 Nov 2022, at 14:18, Edwin Torok <edvin.to...@citrix.com> wrote:
> 
> 
> 
>> On 9 Nov 2022, at 02:40, Henry Wang <henry.w...@arm.com> wrote:
>> 
>> Hi Julien,
>> 
>>> -----Original Message-----
>>> From: Julien Grall <jul...@xen.org>
>>> Subject: Re: [PATCH for-4.17 v3 07/15] CODING_STYLE(tools/ocaml): add
>>> 'make format' and remove tabs
>>> While I understand the goal and support, this seems to be a bit too late
>>> to do it in Xen 4.17 (we are only a couple of weeks away). At this stage
>>> of the release we should only do bug fix.
>>> 
>>> This is clearly only a comesmetic change and there I would argue this
>>> should be deferred to 4.18. That said the last call is from the RM.
>> 
>> I agree with your point. I think maybe defer the patch to 4.18 is better,
>> given the deep freeze state we are currently in.
> 
> 
> Indentation can't really be trusted to humans :)
> 


It might be better to consider oxenstored unsupported in 4.17 at this point and 
try again for 4.17.1 or 4.18, it is probably too late to fix up all the bugs 
that I keep finding in it in a way in which it can be (security) supported, 
although I thought the goal of a release candidate is to try and find bugs and 
fix them before release.

But doing that while also trying to keep whitespace and indentation changes out 
of the patches (or trying to keep the patches small), is more likely to 
introduce more bugs into it at this point rather than fix things.

I was not able to do or send any of these patches sooner because the XSA-326 
and XSA-115/etc. work in the past years has prevented any other kind of work 
from being sent (it'd have made rebasing the XSA series more difficult, and/or 
reveal the XSA as part of various other changes and commits), it is unfortunate 
that there is a release quite so close after an oxenstored XSA

I tried fixing up the rest of the series to not depend on this patch, but 
without an actual 'make format' rule to give it consistent indentation
it is just too error-prone or risky to fix it up at this point (I don't really 
mind whether indentation is tabs vs spaces, it is the inconsistency and 
non-automated nature of it that is the problem),
e.g. it is quite easy to accidentally duplicate code, or get the code in the 
wrong scope, or introduce bugs like the one I just mentioned before when a new 
statement gets inserted and the code seemingly looks ok but its semantics is 
entirely changed (and that is hidden by the inconsistent/non-automated 
indentation).


Perhaps by trying to merge some of the changes/fixes from 
https://github.com/mirage/ocaml-xenstore and getting that production ready, 
which is a much better codebase to start from than
the current one in the Xen tree.:
* it has actual unit tests (which I tried to introduce as part of a security 
fix for the intree version of oxenstored but got repeatedly discouraged from 
including it to not make the security fix too large)
* it was not vulnerable XSA-353
* it has fixed part of XSA-326 together with a unit test nearly 10 years before 
Xen project rediscovered the same bug and realized it is a security bug in the 
in-tree version: 
https://github.com/mirage/ocaml-xenstore/commit/21e96654c27c01cf52e5d7aabc5ee53e07f2cbb7
* (of course mirage version has never been used in production so it is entirely 
likely it has *different* bugs)
* in-tree Xen is difficult to contribute to: 
  * it has a broken build system that keeps throwing 'inconsistent assumptions'
  * it has inconsistent and as we can see sometimes wrong indentation
  * patches get posted to the mailing list and sometimes lost (e.g. 
https://patchwork.kernel.org/project/xen-devel/list/?series=339731&archive=both 
is still not committed), and I'm fairly sure I've seen an ack somewhere, but 
patchwork can't find it now

So I think oxenstored in 4.18+ will likely be sufficiently different than 4.17 
that direct backports won't be possible anyway (indentation changes or not), so 
having this indentation patch in 4.17 wouldn't really help much.
The disadvantage is that we lose all the bugfixes in the patch series after the 
indentation change, but if we consider oxenstored unsupported in 4.17 that may 
not matter.

I can resend this patch series for master without a 'for-4.17 tag' and keep 
doing development there.

Best regards,
--Edwin


Reply via email to