• Tony Camuso's avatar
    ipmi_si: use smi_num for init_name · 3f724c40
    Tony Camuso authored
    Commit 1abf71ee moved the creation of new_smi->dev to earlier in the init
    sequence in order to provide infrastructure for log printing.
    
    However, the init_name was created with a hard-coded value of zero. This
    presents a problem in systems with more than one interface, producing a
    call trace in dmesg.
    
    To correct the problem, simply use smi_num instead of the hard-coded
    value of zero.
    
    Tested on a lenovo x3950.
    Signed-off-by: default avatarTony Camuso <tcamuso@redhat.com>
    
    There was actually a more general problem, the platform device wasn't
    being set correctly, either, and there was a possible (though extremely
    unlikely) race on smi_num.  Add locks to clean up the race and use the
    proper value for the platform device, too.
    
    Tested on qemu in various configurations.
    Signed-off-by: default avatarCorey Minyard <cminyard@mvista.com>
    3f724c40
ipmi_si_intf.c 97.4 KB