I've updated the iprb driver with a hopeful fix for this problem.  I 
also fixed a problem with the way the code uses properties to determine 
forced mode.  (It relied on attach order of instance numbers... a no-no 
in Solaris.  Some of that code is really byzantine, and I'll be glad 
when we can open source it so someone else can give it a little TLC.)

The updated binaries (this time with an install script like the fdc 
updates) is located here:

http://www.opensolaris.org/os/community/device_drivers/files

Please have another go at it.  Thanks!

    -- Garrett

J?rgen Keil wrote:
> Garrett D'Amore wrote:
>
>   
>> Today I posted some updates for iprb and fdc.  These
>> drivers, available from
>>
>> http://www.opensolaris.org/os/community/device_drivers/files/
>>
>> have made it possible for me to use suspend/resume nicely on my Dell 
>> Precision M390 workstation.  I'm using build 100 of Solaris.  These 
>> drivers also support quiesce, and I'm able to use reboot -f on this 
>> platform now, as well.
>>
>> Look for files named "iprb-2008-11-01.tar.gz" ...
>>     
>
> Using the new iprb module. suspend and resume works
> on my Toshiba Tecra S1 laptop.  But there is a memory leak
> somewhere in the iprb suspend/resume code.  After several
> S3 suspend/resume cycles and a "reboot -d":
>
>
>   
>> ::findleaks
>>     
> CACHE     LEAKED   BUFCTL CALLER
> b1043018       1 ca96e808 _nsc_setval+0x2ed
> b1036018       1 b6047ae0 kcf_soft_config_init+0x41
> b1037018       1 b62914e0 kcf_soft_config_init+0x41
> b1036018       9 b6047b58 kcf_soft_config_init+0x41
> b1043018       1 b900feb0 mii_create+0x12
> b1043018       1 b8c999f8 mii_create+0x12
> b1043018       5 b670a650 mii_create+0x12
> b103a018       1 b5d498b8 mii_init_phy+0x40
> b103a018       5 cd3f3410 mii_init_phy+0x40
> b103a018       1 b8888900 mii_init_phy+0x40
> b1043018       1 b9b18b90 modinstall+0xff
> ------------------------------------------------------------------------
>    Total      27 buffers, 1816 bytes
>
>   
>> cd3f3410$<bufctl_audit
>>     
>             ADDR          BUFADDR        TIMESTAMP           THREAD
>                             CACHE          LASTLOG         CONTENTS
>         cd3f3410         cd15a890      114e126f2ff         cc662ee0
>                          b103a018         b170b298         b326f180
>                  kmem_cache_alloc_debug+0x252
>                  kmem_cache_alloc+0x92
>                  kmem_zalloc+0x57
>                  mii_init_phy+0x40
>                  iprb_phyinit+0xba
>                  iprbresume+0x62
>                  iprbattach+0x4af
>                  devi_attach+0x82
>                  cpr_resume_devices+0xd6
>                  cpr_resume_devices+0x162
>                  cpr_resume_devices+0x162
>                  cpr_resume_devices+0x162
>                  cpr_resume+0x3a8
>                  cpr_main+0x21e
>                  cpr+0x194
>
>   
>> b670a650$<bufctl_audit
>>     
>             ADDR          BUFADDR        TIMESTAMP           THREAD
>                             CACHE          LASTLOG         CONTENTS
>         b670a650         b65cf018      114e125d487         cc662ee0
>                          b1043018         b170b234         b31c0988
>                  kmem_cache_alloc_debug+0x252
>                  kmem_cache_alloc+0x92
>                  kmem_zalloc+0x57
>                  mii_create+0x12
>                  iprb_phyinit+0x21
>                  iprbresume+0x62
>                  iprbattach+0x4af
>                  devi_attach+0x82
>                  cpr_resume_devices+0xd6
>                  cpr_resume_devices+0x162
>                  cpr_resume_devices+0x162
>                  cpr_resume_devices+0x162
>                  cpr_resume+0x3a8
>                  cpr_main+0x21e
>                  cpr+0x194
>   


Reply via email to