On Mon, Sep 07, 2020 at 06:25:35PM +0200, Markus Boehme wrote: > When failing to send a command we don't expect a response. Clear the > `null_user_handler` like is done in the success path.
This is correct. I guess, from the next two patches, I know how you found this. I can incude this, but I will ask some questions in the later patches. -corey > > Signed-off-by: Markus Boehme <mark...@amazon.com> > --- > drivers/char/ipmi/ipmi_msghandler.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/char/ipmi/ipmi_msghandler.c > b/drivers/char/ipmi/ipmi_msghandler.c > index 737c0b6..2b213c9 100644 > --- a/drivers/char/ipmi/ipmi_msghandler.c > +++ b/drivers/char/ipmi/ipmi_msghandler.c > @@ -2433,7 +2433,7 @@ static int __get_device_id(struct ipmi_smi *intf, > struct bmc_device *bmc) > > rv = send_get_device_id_cmd(intf); > if (rv) > - return rv; > + goto out_reset_handler; > > wait_event(intf->waitq, bmc->dyn_id_set != 2); > > @@ -2443,6 +2443,7 @@ static int __get_device_id(struct ipmi_smi *intf, > struct bmc_device *bmc) > /* dyn_id_set makes the id data available. */ > smp_rmb(); > > +out_reset_handler: > intf->null_user_handler = NULL; > > return rv; > @@ -3329,6 +3330,7 @@ static int __scan_channels(struct ipmi_smi *intf, > struct ipmi_device_id *id) > dev_warn(intf->si_dev, > "Error sending channel information for channel > 0, %d\n", > rv); > + intf->null_user_handler = NULL; > return -EIO; > } > > -- > 2.7.4 >