Commit 8b4f70ba authored by Stefan Richter's avatar Stefan Richter

firewire: cdev: fix fw_cdev_event_bus_reset emission after local config ROM changes

When a descriptor was added or removed to the local node's config ROM,
userspace clients which had a local node's /dev/fw* open did not receive
any fw_cdev_event_bus_reset for poll()/read() consumption.

The cause was that the core-device.c facility which re-reads the config
ROM of the bus reset initiator node missed to call the fw_device update
function.  The fw_units are destroyed and newly added, but their parent
stays and needs to be updated.
Reported-by: default avatarJay Fenlason <fenlason@redhat.com>
Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
parent eb5b35a5
...@@ -1136,6 +1136,7 @@ static void fw_device_refresh(struct work_struct *work) ...@@ -1136,6 +1136,7 @@ static void fw_device_refresh(struct work_struct *work)
goto give_up; goto give_up;
} }
fw_device_cdev_update(device);
create_units(device); create_units(device);
/* Userspace may want to re-read attributes. */ /* Userspace may want to re-read attributes. */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment