Summary:  Not a bug.

Antoine Jacoutot <ajacou...@bsdfrog.org> wrote:

> On Fri, Jun 07, 2019 at 02:49:32AM +0300, cho...@jtan.com wrote:
> > Antoine Jacoutot writes:
> > > That is because 001 only includes kernel object files which you do not 
> > > have
> > > since you run under a chroot and didn't extract 
> > > /usr/share/relink/kernel.tgz
> > > So syspatch(8) considers you don't have that "set" installed.
> > > syspatch-003 on the other end includes a header change and that header 
> > > *is*
> > > installed on your system. So syspatch installs it. But you are missing 
> > > all the
> > > other pieces to actually relink your kernel and that's why it fails.
> > 
> > Thank-you that makes sense.
> > 
> > It did throw me a little though; I would expect a tool such as this to 
> > report its inaction as well as its action.
> > 
> > I take it that syspatch performs these checks also with the other sets? eg. 
> > It would skip an X patch if the X sets were not installed?
> 
> Yes that's correct.
>  
> > > You are running syspatch under a totally unsupported setup.
> > 
> > This is a common refrain and I do understand why it's used but it's not a 
> > concern. I'm not after support, I can put the pieces back together when I 
> > break them.
> > 
> > But is 'all the sets' the only configuration which OpenBSD's tools consider 
> > valid in general? 'Supported'?
> 
> Well, it's not really about the sets.
> 
> From the man page:
> 
> CAVEATS
>      syspatch is designed to work solely on official OpenBSD releases.
> 
> What you are running is not.
> An official release comes with a kernel.
> One can skip a set but if I think it's fair for the tools to assume one has
> at least one kernel and baseXX installed...
> 
> > In any case I still do think there's a bug here but now it's clear that 
> > it's one of:
> > 
> >  * syspatch doesn't report skipping patches (it also skipped a kernel patch 
> > when it recognised the lack of kernel but attempted to relink it later 
> > anyway for another patch, which will boil down to the same test).
> I explained why.
> It sees that there's a candidate for replacement (in this case some headers), 
> so
> it extracts the patch. Since it also contains kernel objects files, it will 
> run
> reorder_kernel, but you didn't extract the release object files in your chroot
> (which the installer does)... so boom.
> 
> >  * syspatch's manpage doesn't fully describe its behaviour when one or more 
> > sets are mising.
> 
> We accept patches for man pages :-) 
> 
> > Please note that I'm not whinging that OpenBSD doesn't work the way I 
> > demand and insisting on change. I've noticed there's been a lot of that 
> > recently. I've found what I deem to be a fault and, if anyone else agrees, 
> > would like suggestions on how I could fix it (chiefly, which of the above 
> > is the real bug) and I will follow up with a patch.
> 
> Documentation is clear that syspatch only works on releases. Your chroot is 
> not
> because you didn't extract some sets from the baseXX set (and again, IMHO it's
> fine for our tools to assume you have at least that particular set installed).
> 
> -- 
> Antoine
> 

Reply via email to