While digging around here I saw that update-grub will lead to a lockup
every time. So I simply changed  /usr/sbin/grub-mkconfig  script to
allow me to see everything that happens.

That gets me to :

     /usr/sbin/grub-probe --device /dev/sda2 --target=fs_uuid

which falls to pieces perfectly :

root@eros:~#
root@eros:~# uptime
 01:09:40 up 20 min,  2 users,  load average: 0.07, 0.14, 0.48
root@eros:~# /usr/sbin/grub-mkconfig -o /boot/grub/grub.cfg
+ prefix=/usr
+ exec_prefix=/usr
+ datarootdir=/usr/share
+ prefix=/usr
+ exec_prefix=/usr
+ sbindir=/usr/sbin
+ bindir=/usr/bin
+ sysconfdir=/etc
+ PACKAGE_NAME=GRUB
+ PACKAGE_VERSION=2.04-16
+ host_os=linux-gnu
+ datadir=/usr/share
+ [ x = x ]
+ pkgdatadir=/usr/share/grub
+ export pkgdatadir
+ grub_cfg=
+ grub_mkconfig_dir=/etc/grub.d
+ basename /usr/sbin/grub-mkconfig
+ self=grub-mkconfig
+ grub_probe=/usr/sbin/grub-probe
+ grub_file=/usr/bin/grub-file
+ grub_editenv=/usr/bin/grub-editenv
+ grub_script_check=/usr/bin/grub-script-check
+ export TEXTDOMAIN=grub
+ export TEXTDOMAINDIR=/usr/share/locale
+ . /usr/share/grub/grub-mkconfig_lib
+ prefix=/usr
+ exec_prefix=/usr
+ datarootdir=/usr/share
+ datadir=/usr/share
+ bindir=/usr/bin
+ sbindir=/usr/sbin
+ [ x/usr/share/grub = x ]
+ test x/usr/sbin/grub-probe = x
+ test x/usr/bin/grub-file = x
+ test x = x
+ grub_mkrelpath=/usr/bin/grub-mkrelpath
+ which gettext
+ :
+ grub_tab=
+ test 2 -gt 0
+ option=-o
+ shift
+ argument -o /boot/grub/grub.cfg
+ opt=-o
+ shift
+ test 1 -eq 0
+ echo /boot/grub/grub.cfg
+ grub_cfg=/boot/grub/grub.cfg
+ shift
+ test 0 -gt 0
+ [ x = x ]
+ id -u
+ EUID=0
+ [ 0 != 0 ]
+ set /usr/sbin/grub-probe dummy
+ test -f /usr/sbin/grub-probe
+ :
+ /usr/sbin/grub-probe --target=device /
+ GRUB_DEVICE=/dev/sda2
+ /usr/sbin/grub-probe --device /dev/sda2 --target=fs_uuid
[ 1330.951329] watchdog: BUG: soft lockup - CPU#0 stuck for 22s!
[grub-probe:443]
[ 1331.046350] Modules linked in: drm(E) drm_panel_orientation_quirks(E)
i2c_core(E) sg(E) envctrl(E) display7seg(E) flash(E) fuse(E) configfs(E)
ip_tables(E) x_tables(E) autofs4(E) ext4(E) crc16(E) mbcache(E) jbd2(E)
crc32c_generic(E) sd_mod(E) t10_pi(E) crc_t10dif(E) st(E)
crct10dif_generic(E) crct10dif_common(E) sym53c8xx(E)
scsi_transport_spi(E) scsi_mod(E) sunhme(E)
[ 1331.475596] CPU: 0 PID: 443 Comm: grub-probe Tainted: G            E
    5.10.0-4-sparc64 #1 Debian 5.10.19-1
[ 1331.606055] TSTATE: 0000009911001601 TPC: 0000000000950920 TNPC:
0000000000950924 Y: 00000000    Tainted: G            E
[ 1331.753728] TPC: <misc_open+0x40/0x180>
[ 1331.804124] g0: fffff800065e3140 g1: 000000001005a830 g2:
0000000000000000 g3: 000000000149fa90
[ 1331.918504] g4: fffff80009bde780 g5: 00000000604a4edc g6:
fffff8000a1ac000 g7: 000000000fa664c8
[ 1332.032984] o0: 0000000000f2c960 o1: fffff8000a1af8ec o2:
fffff80004275b50 o3: 0000000000000000
[ 1332.147464] o4: 0000000000000000 o5: 0000000000000000 sp:
fffff8000a1aef81 ret_pc: 0000000000950900
[ 1332.266539] RPC: <misc_open+0x20/0x180>
[ 1332.316950] l0: 0000000000f2c800 l1: 0000000000000000 l2:
0000000000668200 l3: 000000064b73605f
[ 1332.431439] l4: 0000000000020000 l5: fffff8000a1af8f0 l6:
0000000000e1a000 l7: 0000000000000001
[ 1332.545917] i0: fffff8000b813d90 i1: fffff80009bad100 i2:
0000000000f2c800 i3: 0000000000f2c978
[ 1332.660398] i4: 00000000000000ec i5: 000000001005a818 i6:
fffff8000a1af031 i7: 0000000000668e38
[ 1332.774892] I7: <chrdev_open+0x98/0x1e0>
[ 1332.826436] Call Trace:
[ 1332.858473] [<0000000000668e38>] chrdev_open+0x98/0x1e0
[ 1332.927215] [<000000000065e430>] do_dentry_open+0x170/0x420
[ 1333.000505] [<0000000000660068>] vfs_open+0x28/0x40
[ 1333.064670] [<0000000000674948>] path_openat+0x988/0x1100
[ 1333.135679] [<00000000006773d0>] do_filp_open+0x50/0x100
[ 1333.205549] [<0000000000660330>] do_sys_openat2+0x70/0x180
[ 1333.277710] [<0000000000660868>] sys_openat+0x48/0xc0
[ 1333.344164] [<0000000000406174>] linux_sparc_syscall+0x34/0x44
~
Type  'go' to resume
ok

If I could install gdb then perhaps ... maybe ... I can see what is
happening here.  However that will have to wait until tomorrow or
so :

eros# apt-get install gdb
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 gdb : Depends: libpython3.8 (>= 3.8.2) but it is not installable
       Recommends: libc-dbg
E: Unable to correct problems, you have held broken packages.
eros#

I would compile my own grub-probe but at the moment I can not get a
compiler installed.  So I will look into this tomorrow.


-- 
Dennis Clarke
RISC-V/SPARC/PPC/ARM/CISC
UNIX and Linux spoken
GreyBeard and suspenders optional

Reply via email to