On Mon, Nov 07, 2016 at 12:51:52PM +0000, Riku Voipio wrote:
> On Sun, Nov 06, 2016 at 03:59:12PM +0000, James Cowgill wrote:
> > On Thu, 3 Nov 2016 13:15:47 +0300 Michael Tokarev <m...@tls.msk.ru> wrote:
> > > 03.11.2016 12:46, Toby Speight wrote:
> > > > I was able to work around this issue by hand-editing the postinst it to 
> > > > add
> > > > '|mips*' to the end of $omit (luckily, I don't need MIPS emulation on my
> > > > systems).
> > > >
> > > > The one thing that stands out about the MIPS registration is that the 
> > > > magic
> > > > and mask are much longer than for other systems - is it possible that 
> > > > the
> > > > kernel can't handle such long patterns?  If so, can this be detected and
> > > > avoided?
> > >
> > > This change was introduced very recently, see #829243.  But it works fine
> > > on my system.  I wonder if 3.16 kernel is unable to process that binfmt
> > > while 4.1+ can handle it...  Oh well.
> >
> > Looks like this kernel commit added support for longer formats:
> > bbaecc088245e840e59a5abe23d69cf7748b3c88
> >
> > https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/fs/binfmt_misc.c?id=bbaecc088245e840e59a5abe23d69cf7748b3c88
> >
> > This is probably what causes this. The above commit exists only in 3.18+
>
> The attached patch only registers the new longer patterns on 3.18+. I still
> need another round for the patch. The kernel version check requires bash, and
> the naive >> to > change doesn't actually make the script a bash script. But
> before I invest more time into this I'd like to know if others agree this 
> change
> is the right way.
>
> The other option is to revert the change from #829243 until a better way to
> handle the change is done.

Something needs to be done about this in testing. Upgrades from Jessie
to Stretch are currently broken, since those will be running a 3.16
kernel when the upgraded version's postinst script is run. I verified
this on a clean, minimal Jessie install (nothing selected in tasksel):

1. Install qemu-user-static
2. Change APT sources to stretch
3. apt-get update
4. apt-get upgrade - fails

Regards,
James

Reply via email to