On Tue, Mar 03, 2020 at 10:57:03PM -0700, Duncan Patton a Campbell wrote:
> 
> I've had problems getting an old Brother printer to work (again)
> and have managed to locate/understand? the source of the problems.
> 
> 1. ulpt must be disabled:
> # config -ef /bsd
> ukc> disable ulpt
> ukc> quit
> 
> 2. modifying the kernel changes the kernel checksum so to get it to relink
> sha256 -h /var/db/kernel.SHA256 /bsd
> 
> 3. relinking the kernel _re-enables_ ulpt.
> 
> So I'm going to have install the build system and run thru the kernel patches
> after I figure out how to disable ulpt in the GENERIC.MP build.  
> 
> Does this sound like it will work?

Pratical advice:

Depending your need, you could also live without kernel relinking (KARL) in
order to keep ulpt(4) disabled using config(8).

I would still relink after an upgrade in order to have an unique /bsd (and not
the one publicly available from internet).

So it would be:
- after an upgrade, reboot and wait relinking to be done (a fresh /bsd will be
  installed)
- run `config -ef /bsd' and disable ulpt in the new (and unique) kernel
- do *NOT* regenerate /var/db/kernel.SHA256 (so sha256 will mismatch)
- reboot again and run on the new /bsd (with ulpt disabled)

System will complains that relinking failed, but your /bsd with ulpt disabled
will stay.


Developer advice:

mpi@ already pointed the right way to deal with it: make ulpt(4) and ugen(4) to
coexist. This way you could use cupsd (using ugen) with a GENERIC kernel.

see https://marc.info/?l=openbsd-tech&m=151618565000531&w=2 for details

Thanks.
-- 
Sebastien Marie

Reply via email to