mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* afs: Improve exception handling in afs_net_init()
@ 2020-06-01 19:34 Markus Elfring
  2020-06-01 21:11 ` David Howells
  0 siblings, 1 reply; 2+ messages in thread
From: Markus Elfring @ 2020-06-01 19:34 UTC (permalink / raw)
  To: linux-afs, David Howells; +Cc: LKML

Hello,

I have accidentally taken another look at the implementation of
the function “afs_net_init”.
I noticed that the statement “net->live = false;” was specified three times
for exception handling at the end.
https://elixir.bootlin.com/linux/v5.7/source/fs/afs/main.c#L127
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/afs/main.c?id=9bf9511e3d9f328c03f6f79bfb741c3d18f2f2c0#n127

Can it be that two of these assignments are redundant then?

Regards,
Markus

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: afs: Improve exception handling in afs_net_init()
  2020-06-01 19:34 afs: Improve exception handling in afs_net_init() Markus Elfring
@ 2020-06-01 21:11 ` David Howells
  0 siblings, 0 replies; 2+ messages in thread
From: David Howells @ 2020-06-01 21:11 UTC (permalink / raw)
  To: Markus Elfring; +Cc: dhowells, linux-afs, LKML

Markus Elfring <Markus.Elfring@web.de> wrote:

> I have accidentally taken another look at the implementation of
> the function "afs_net_init".
> I noticed that the statement "net->live = false;" was specified three times
> for exception handling at the end.
> https://elixir.bootlin.com/linux/v5.7/source/fs/afs/main.c#L127
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/afs/main.c?id=9bf9511e3d9f328c03f6f79bfb741c3d18f2f2c0#n127
> 
> Can it be that two of these assignments are redundant then?

Kind of yes, but no.

I want to set "net->live = false" as soon as an error occurs because there are
various async mechanisms that check for it and abort their operation if they
see it, but there are multiple error labels.

So it needs to be cleared before afs_cell_purge() or afs_purge_servers() is
called and it used to be required for something else as well, but that's now
gone.

In the afs_net_init() function, it now probably only needs to be cleared after
"error_open_socket:".  I'm a bit leary of removing the clearances in case I
add a new dependency on it later.

David


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-06-01 21:11 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-01 19:34 afs: Improve exception handling in afs_net_init() Markus Elfring
2020-06-01 21:11 ` David Howells

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®