Bug 134731

Summary: sysutils/hal - hald uses 100% of CPU
Product: Ports & Packages Reporter: mainland
Component: Individual Port(s)Assignee: freebsd-gnome (Nobody) <gnome>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   

Description mainland 2009-05-20 00:50:03 UTC
In moving from hal-0.5.11_21 to hal-0.5.11_23, hald suddenly took up 100% of my CPU and I was unable to run lshal at all. I recompiled hald with debug flags and noticed that the function hf_storage_device_probe_geom called itself recursively and eventually blew the stack. I'm afraid I don't know enough to debug exactly what the problem is, but after adding a return statement at the beginning of the function hf_storage_device_probe_geom and recompiling, all is well. I suspect the issue is the recently added support for the PART GEOM type.

Here is the output of sysctl -b kern.geom.conftxt on my system:

0 DISK cd0 0 2048 hd 0 sc 0
0 DISK ad14 251000193024 512 hd 16 sc 63
1 PART ad14s2 162062659584 512 i 2 o 32256 ty !5 xs MBR xt 5
2 MBR ad14s2s2 119998609920 512 i 1 o 8192346624 ty 5
3 MBREXT ad14s2s5 119998577664 512 i 0 o 32256 ty 131
2 MBR ad14s2s1 8192314368 512 i 0 o 32256 ty 130
1 PART ad14s1 88937178624 512 i 1 o 162063014400 ty !175 xs MBR xt 175
1 MBR ad14s2 162062659584 512 i 1 o 32256 ty 5
2 PART ad14s2s2 119998609920 512 i 2 o 8192346624 ty !5 xs MBR xt 5
3 MBR ad14s2s2s2 17001653760 512 i 1 o 128190956544 ty 5
3 MBR ad14s2s2s1 119998577664 512 i 0 o 32256 ty 131
2 PART ad14s2s1 8192314368 512 i 1 o 32256 ty !130 xs MBR xt 130
2 MBREXT ad14s8 16870017024 512 i 3 o 145192642560 ty 131
2 MBREXT ad14s7 17001621504 512 i 2 o 128190988800 ty 131
2 MBREXT ad14s6 119998577664 512 i 1 o 8192378880 ty 131
2 MBREXT ad14s5 8192314368 512 i 0 o 32256 ty 130
1 MBR ad14s1 88937178624 512 i 0 o 162063014400 ty 175
0 DISK ad12 1000204886016 512 hd 16 sc 63
1 MBR ad12s1 824633639424 512 i 0 o 32256 ty 165
2 BSD ad12s1g 64424428032 512 i 6 o 760209211392 ty 7
2 BSD ad12s1f 68719476736 512 i 5 o 691489734656 ty 7
2 BSD ad12s1e 68719476736 512 i 4 o 622770257920 ty 7
2 BSD ad12s1d 536870912000 512 i 3 o 17179869184 ty 7
2 BSD ad12s1c 824633639424 512 i 2 o 0 ty 0
3 PART ad12s1cg 64424428032 512 i 7 o 760209211392 ty freebsd-ufs xs BSD xt 7
3 PART ad12s1cf 68719476736 512 i 6 o 691489734656 ty freebsd-ufs xs BSD xt 7
3 PART ad12s1ce 68719476736 512 i 5 o 622770257920 ty freebsd-ufs xs BSD xt 7
3 PART ad12s1cd 536870912000 512 i 4 o 17179869184 ty freebsd-ufs xs BSD xt 7
3 PART ad12s1cb 17179869184 512 i 2 o 0 ty freebsd-swap xs BSD xt 1
3 PART ad12s1ca 68719476736 512 i 1 o 554050781184 ty freebsd-ufs xs BSD xt 7
2 BSD ad12s1b 17179869184 512 i 1 o 0 ty 1
2 BSD ad12s1a 68719476736 512 i 0 o 554050781184 ty 7
0 DISK ad10 400088457216 512 hd 16 sc 63
1 PART ad10s1 400085812224 512 i 1 o 32256 ty !7 xs MBR xt 7
1 MBR ad10s1 400085812224 512 i 0 o 32256 ty 7
Comment 1 Edwin Groothuis freebsd_committer 2009-05-20 08:35:07 UTC
Responsible Changed
From-To: freebsd-ports-bugs->gnome

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 2 Joe Marcus Clarke freebsd_committer 2009-05-23 22:19:13 UTC
State Changed
From-To: open->closed

Fixed, thanks for reporting.
Comment 3 dfilter service freebsd_committer 2009-05-23 22:19:14 UTC
marcus      2009-05-23 21:19:03 UTC

  FreeBSD ports repository

  Modified files:
    sysutils/hal         Makefile 
    sysutils/hal/files   patch-configure patch-configure.in 
                         patch-hald_freebsd_probing_probe-usb2-device.c 
                         patch-hald_hf-storage.c 
  Log:
  * Correct a potential infinite recursion loop triggered by the new GEOM
    classes [1]
  * Fix some minor issues with usb2 support [2]
  
  PR:             134731 [1]
  Submitted by:   hselasky [2]
  
  Revision  Changes    Path
  1.55      +1 -1      ports/sysutils/hal/Makefile
  1.3       +1 -1      ports/sysutils/hal/files/patch-configure
  1.3       +1 -1      ports/sysutils/hal/files/patch-configure.in
  1.3       +5 -4      ports/sysutils/hal/files/patch-hald_freebsd_probing_probe-usb2-device.c
  1.4       +25 -20    ports/sysutils/hal/files/patch-hald_hf-storage.c
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"