--- Begin Message ---
Package: efivar
Version: 0.15-3
Severity: serious
I'm afraid the patch 07-num_bits.patch breaks the case of 32-bit userland
on a 64-bit kernel. As far as I know, this is how i386 would get installed
on any non-ancient machine if d-i could get that far (it doesn't for me in
qemu-kvm.x86-64, though).
The bad assumption is that an 64-bit kernel would give the same data to any
process. This seems to be obvious, but it's not the case:
Here's a set of sample dumps of
/sys/firmware/efi/vars/Boot0005-8be4df61-93ca-11d2-aa0d-00e098032b8c/raw_var
-- all done on the same virtual machine, same kernel, same boot-up, all that
differs is the ABI of the cat process:
cat is amd64:
00000000 42 00 6f 00 6f 00 74 00 30 00 30 00 30 00 35 00 |B.o.o.t.0.0.0.5.|
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000400 61 df e4 8b ca 93 d2 11 aa 0d 00 e0 98 03 2b 8c |a.............+.|
00000410 76 00 00 00 00 00 00 00 01 00 00 00 62 00 64 00 |v...........b.d.|
^^^^^^^^^^^^^^^^^^^^^^^
00000420 65 00 62 00 69 00 61 00 6e 00 00 00 04 01 2a 00 |e.b.i.a.n.....*.|
00000430 01 00 00 00 00 08 00 00 00 00 00 00 00 00 10 00 |................|
00000440 00 00 00 00 14 ab c8 38 14 e4 68 40 89 28 2a 27 |.......8..h@.(*'|
00000450 8b 45 06 d2 02 02 04 04 34 00 5c 00 45 00 46 00 |.E......4.\.E.F.|
00000460 49 00 5c 00 64 00 65 00 62 00 69 00 61 00 6e 00 |I.\.d.e.b.i.a.n.|
00000470 5c 00 67 00 72 00 75 00 62 00 78 00 36 00 34 00 |\.g.r.u.b.x.6.4.|
00000480 2e 00 65 00 66 00 69 00 00 00 7f ff 04 00 00 00 |..e.f.i.........|
00000490 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000820 07 00 00 00 |....|
00000824
cat is x32:
00000000 42 00 6f 00 6f 00 74 00 30 00 30 00 30 00 35 00 |B.o.o.t.0.0.0.5.|
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000400 61 df e4 8b ca 93 d2 11 aa 0d 00 e0 98 03 2b 8c |a.............+.|
00000410 76 00 00 00 01 00 00 00 62 00 64 00 65 00 62 00 |v.......b.d.e.b.|
^^^^^^^^^^^
00000420 69 00 61 00 6e 00 00 00 04 01 2a 00 01 00 00 00 |i.a.n.....*.....|
00000430 00 08 00 00 00 00 00 00 00 00 10 00 00 00 00 00 |................|
00000440 14 ab c8 38 14 e4 68 40 89 28 2a 27 8b 45 06 d2 |...8..h@.(*'.E..|
00000450 02 02 04 04 34 00 5c 00 45 00 46 00 49 00 5c 00 |....4.\.E.F.I.\.|
00000460 64 00 65 00 62 00 69 00 61 00 6e 00 5c 00 67 00 |d.e.b.i.a.n.\.g.|
00000470 72 00 75 00 62 00 78 00 36 00 34 00 2e 00 65 00 |r.u.b.x.6.4...e.|
00000480 66 00 69 00 00 00 7f ff 04 00 00 00 00 00 00 00 |f.i.............|
00000490 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000810 00 00 00 00 00 00 00 00 07 00 00 00 |............|
0000081c
cat is i386:
00000000 42 00 6f 00 6f 00 74 00 30 00 30 00 30 00 35 00 |B.o.o.t.0.0.0.5.|
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000400 61 df e4 8b ca 93 d2 11 aa 0d 00 e0 98 03 2b 8c |a.............+.|
00000410 76 00 00 00 01 00 00 00 62 00 64 00 65 00 62 00 |v.......b.d.e.b.|
^^^^^^^^^^^
00000420 69 00 61 00 6e 00 00 00 04 01 2a 00 01 00 00 00 |i.a.n.....*.....|
00000430 00 08 00 00 00 00 00 00 00 00 10 00 00 00 00 00 |................|
00000440 14 ab c8 38 14 e4 68 40 89 28 2a 27 8b 45 06 d2 |...8..h@.(*'.E..|
00000450 02 02 04 04 34 00 5c 00 45 00 46 00 49 00 5c 00 |....4.\.E.F.I.\.|
00000460 64 00 65 00 62 00 69 00 61 00 6e 00 5c 00 67 00 |d.e.b.i.a.n.\.g.|
00000470 72 00 75 00 62 00 78 00 36 00 34 00 2e 00 65 00 |r.u.b.x.6.4...e.|
00000480 66 00 69 00 00 00 7f ff 04 00 00 00 00 00 00 00 |f.i.............|
00000490 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000810 00 00 00 00 00 00 00 00 07 00 00 00 |............|
0000081c
Note that, surprisingly, the kernel detects the ABI of the running process
and presents different contents of that file on the sys fs. This means,
runtime detection is bad as any 32-bit process will get 32-bit fields
(actually, just one, the rest is arch-independent).
Thus, to fix the issue, it seems you can drop 07-num_bits.patch and install
the patch I attached instead. I'm afraid I can't test it save for qemu and
virtualbox at this time, though.
And while we're here... could you please add x32 to the list of architectures
in debian/control? This would fix a FTBFS on an unofficial arch.
--
// If you believe in so-called "intellectual property", please immediately
// cease using counterfeit alphabets. Instead, contact the nearest temple
// of Amon, whose priests will provide you with scribal services for all
// your writing needs, for Reasonable and Non-Discriminatory prices.
--- End Message ---
--- Begin Message ---
Source: efivar
Source-Version: 30-1
We believe that the bug you reported is fixed in the latest version of
efivar, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 777261@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Mario Limonciello <mario.limonciello@dell.com> (supplier of updated efivar package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 1.8
Date: Fri, 23 Sep 2016 15:00:08 -0500
Source: efivar
Binary: libefivar-dev libefiboot-dev efivar libefiboot1 libefivar1
Architecture: source amd64
Version: 30-1
Distribution: unstable
Urgency: medium
Maintainer: Debian UEFI Maintainers <debian-efi@lists.debian.org>
Changed-By: Mario Limonciello <mario.limonciello@dell.com>
Description:
efivar - Tools to manage UEFI variables
libefiboot-dev - Development headers for libefiboot
libefiboot1 - Library to manage UEFI variables
libefivar-dev - Development headers for libefivar
libefivar1 - Library to manage UEFI variables
Closes: 777261
Changes:
efivar (30-1) unstable; urgency=medium
.
* new upstream version (30)
* Update dell email addresses (_ -> .)
* Move to new SONAME based upon upstream commit b729026
- Additional details are available in debian/NEWS.
* Add x32 to architectures (Closes: #777261)
* Build with -flto by default, to avoid efivar issue #60
Checksums-Sha1:
c9bd22862442f5a6e4479bc6609021fe9442311f 2394 efivar_30-1.dsc
3f80e20f3ad706d47f2001ac71756de45b54dc59 85543 efivar_30.orig.tar.gz
17d89a1b16080159c34c3fa4a96bcfc7234a874b 6480 efivar_30-1.debian.tar.xz
6617c094870c1c5d48c931ca288c1303b5f22266 11792 efivar-dbgsym_30-1_amd64.deb
3562dbeff7f51cccfa9a35d1c9c0258d9fe72eec 11394 efivar_30-1_amd64.deb
a5bd41f82f1756ef945cd63f8ad8770b83f44aa8 6758 libefiboot-dev_30-1_amd64.deb
6bd4182daf64d001e5b5dad72fa0620a27a186b0 61416 libefiboot1-dbgsym_30-1_amd64.deb
3bb9fc50685ab59eeb806378cb6928bfda57ecad 24216 libefiboot1_30-1_amd64.deb
e4619b0ac19ce97c5d4cbcb27bbb65aa4b20c308 17734 libefivar-dev_30-1_amd64.deb
d6405080ec4cc11e3f90c417463ad7b9376046c4 122346 libefivar1-dbgsym_30-1_amd64.deb
6080dc61d24584991acafa95caaae0cc4beeb1f5 40698 libefivar1_30-1_amd64.deb
Checksums-Sha256:
80774d569be0a0b77c364a5c3d6be96fbdcffa98f191dc6c483096fcae5d0927 2394 efivar_30-1.dsc
e4bf446330f728d3658d08fe44c6501a90e47ceeb1cd6511e131b2e870bc821c 85543 efivar_30.orig.tar.gz
8d8ae23dee56453987eca93779b2f68dbeb4686c2e698723e4b8d0dd1c5bac61 6480 efivar_30-1.debian.tar.xz
c8c35b97d24c36e52c52615b2518ae10057c9f15295031e5cd619bac39119edf 11792 efivar-dbgsym_30-1_amd64.deb
0748ed2f2aa653b37bc973ece0ba13a5aa475d4d7e14e8a08213adeeb017de91 11394 efivar_30-1_amd64.deb
db59090b606edec247ee968f0247f3d487fa6d651751c3299a203d7e69dde69a 6758 libefiboot-dev_30-1_amd64.deb
f0e8013448271a165aa73b4d9b95409dc1f948313badb1ef80cf84d08d6e77a2 61416 libefiboot1-dbgsym_30-1_amd64.deb
5b33c88f05ebc0816d40812a58aed674eee9fcbffab297a80d591cc5f6b998d1 24216 libefiboot1_30-1_amd64.deb
cefc887b19f35925aab1666455ac6c2a36c081713f6f32152701b6d9b02dc06b 17734 libefivar-dev_30-1_amd64.deb
4c3502916c58cee5478dbcbf79b691ba2d25850be6655e64027611ecc2436216 122346 libefivar1-dbgsym_30-1_amd64.deb
a236d26e596496fa34113298e8fcbfa2abe70afb356c011870c6de7d73b54623 40698 libefivar1_30-1_amd64.deb
Files:
669df9645a4a6e1dab4a848a79afc7b4 2394 libs optional efivar_30-1.dsc
7d70c2ddc36aa3021d83810ad8d4eee6 85543 libs optional efivar_30.orig.tar.gz
2c684b6bedcdb816e92397c40467face 6480 libs optional efivar_30-1.debian.tar.xz
8b0131a4254390a45bd7b2cd374f13d0 11792 debug extra efivar-dbgsym_30-1_amd64.deb
b280326c9dc538cc3590f5b13c2ad445 11394 admin optional efivar_30-1_amd64.deb
217fe90989847f103137169edccd83e5 6758 libdevel optional libefiboot-dev_30-1_amd64.deb
d584e9ddd68c029ef65800aba0b737d5 61416 debug extra libefiboot1-dbgsym_30-1_amd64.deb
d6ef15e6b2ea91bb4f2805669d81feaa 24216 libs optional libefiboot1_30-1_amd64.deb
7c3a78558c5634c32d4a5bd6e4d7c66e 17734 libdevel optional libefivar-dev_30-1_amd64.deb
c6080c9101f956692183f543aadbd43c 122346 debug extra libefivar1-dbgsym_30-1_amd64.deb
aa9f0add7187db35cbc399c9d691e214 40698 libs optional libefivar1_30-1_amd64.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAEBCAAGBQJX8op5AAoJEFh5eVc0QmhOWgwP+QH8BGVgsGHms4BrPifHOZGZ
qSZoQtl4LNql0k4SyoYYIlDTC0K7hwOEPEq1NCiGCZPvaEn/x9m6+GQDjzii7rk6
wjEa9luO1i/NWNOEyYp1xuDBwC0mHCDbpg0bm+5TFK3yltWDkn7qzjMc5ZMFMZVq
gKZAVDEryZpLKMDTethwVEfxPNqOQiNM0eKZdU0uN58hthKKvNSl5FdkVEPubmq8
nGpk2MApgkuAIiLTJ8IJBn1HkzvaA/ZUFOgX1CDN17uGTxt76hqenRj0egCT7qs6
uv9IRXvJkjxfiw1ez4cjydKKskpXTzP6+oiPJ2jmaOnfrBmzQWTgaQ+mLTcY429D
63u8yq+UOLBY7cCXMFF1xGSuo/kVp4Zq0oCM2ic+lKTpyueVM56zwf4YMUcKG+y5
q0kCpUlSToMA+io+rthNQ4ePmPTkfmAsD08A9mWqzWbKDD0uoJaVcEswvXIn7Tgv
0tcAp7j69SNLfCX/7zNFCZvLJ/NpPctdklt3ST2/nIYZ7RvqGUkxwDszryuWRa8g
2mtrdnqFvtmyIBsqTPUV+hFpAUmwtnuFim+VLx76E22vBxKkX50VG0HIjl5fdSiI
W/XsWZ7N/gKy6SB0ezu1BiQuiplkbJBF74Co6GJ2i1SaeHFrWolmo7qfiVhoRyxH
HE4ecIbc9vptLj/iJV7+
=pa7U
-----END PGP SIGNATURE-----
--- End Message ---