• Ming Lei's avatar
    driver core: check bus->match without holding device lock · 49b420a1
    Ming Lei authored
    This patch moves bus->match out from driver_probe_device and
    does not hold device lock to check the match between a device
    and a driver.
    
    The idea has been verified by the commit 6cd49586,
    which leads to a faster boot. But the commit 6cd49586 has
    the following drawbacks: 1),only does the quick check in
    the path of __driver_attach->driver_probe_device, not in other
    paths; 2),for a matched device and driver, check the same match
    twice. It is a waste of cpu ,especially for some drivers with long
    device id table (eg. usb-storage driver).
    
    This patch adds a helper of driver_match_device to check the match
    in all paths, and testes the match only once.
    Signed-off-by: default avatarMing Lei <tom.leiming@gmail.com>
    Acked-by: default avatarCornelia Huck <cornelia.huck@de.ibm.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    49b420a1
dd.c 8.98 KB