From: Jiri Pirko <email@example.com> To: Jakub Kicinski <firstname.lastname@example.org> Cc: Moshe Shemesh <email@example.com>, Jacob Keller <firstname.lastname@example.org>, email@example.com, firstname.lastname@example.org, "David S. Miller" <email@example.com>, Jiri Pirko <firstname.lastname@example.org>, Vasundhara Volam <email@example.com> Subject: Re: [PATCH net-next RFC 01/13] devlink: Add reload level option to devlink reload command Date: Wed, 5 Aug 2020 13:02:58 +0200 Message-ID: <20200805110258.GA2169@nanopsycho> (raw) In-Reply-To: <firstname.lastname@example.org> Tue, Aug 04, 2020 at 10:39:46PM CEST, email@example.com wrote: >On Tue, 4 Aug 2020 12:04:18 +0200 Jiri Pirko wrote: >> Mon, Aug 03, 2020 at 10:57:03PM CEST, firstname.lastname@example.org wrote: >> >I was trying to avoid having to provide a Cartesian product of >> >operation and system disruption level, if any other action can >> >be done "live" at some point. >> > >> >But no strong feelings about that one. >> > >> >Really, as long as there is no driver-specific defaults (or as >> >little driver-specific anything as possible) and user actions >> >are clearly expressed (fw-reset does not necessarily imply >> >fw-activation) - the API will be fine IMO. >> >> Clear actions, that is what I'm fine with. >> >> But not sure how you think we can achieve no driver-specific defaults. >> We have them already :/ I don't think we can easily remove them and not >> break user expectations. > >AFAIU the per-driver default is needed because we went too low >level with what the action constitutes. We need maintain the higher >level actions. > >The user clearly did not care if FW was reset during devlink reload >before this set, so what has changed? The objective user has is to Well for mlxsw, the user is used to this flow: devlink dev flash - flash new fw devlink dev reload - new fw is activated and reset and driver instances are re-created. >activate their config / FW / move to different net ns. > >Reloading the driver or resetting FW is a low level detail which >achieves different things for different implementations. So it's >not a suitable abstraction -> IOW we need the driver default. I'm confused. So you think we need the driver default? > > >The work flow for the user is: > >0. download fw to /lib/firmware >1. devlink flash $dev $fw >2. if live activation is enabled > yes - devlink reload $dev $live-activate > no - report machine has to be drained for reboot > >fw-reset can't be $live-activate, because as Jake said fw-reset does >not activate the new image for Intel. So will we end up per-driver >defaults in the kernel space, and user space maintaining a mapping from Well, that is what what is Moshe's proposal. Per-driver kernel default.. I'm not sure what we are arguing about then :/ >a driver to what a "level" of reset implies. > >I hope this makes things crystal clear. Please explain what problems >you're seeing and extensions you're expecting. A list of user scenarios >you foresee would be v. useful.
next prev parent reply index Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-07-27 11:02 [PATCH net-next RFC 00/13] Add devlink reload level option Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 01/13] devlink: Add reload level option to devlink reload command Moshe Shemesh 2020-07-28 0:58 ` Jakub Kicinski 2020-07-28 13:58 ` Jiri Pirko 2020-07-28 16:47 ` Jacob Keller 2020-07-28 18:44 ` Jakub Kicinski 2020-07-28 19:18 ` Jacob Keller 2020-07-28 20:06 ` Jakub Kicinski 2020-07-29 14:54 ` Moshe Shemesh 2020-07-29 21:07 ` Jakub Kicinski 2020-07-30 12:30 ` Moshe Shemesh 2020-07-30 23:11 ` Jakub Kicinski 2020-08-01 21:32 ` Moshe Shemesh 2020-08-03 14:14 ` Jiri Pirko 2020-08-03 20:57 ` Jakub Kicinski 2020-08-04 10:04 ` Jiri Pirko 2020-08-04 20:39 ` Jakub Kicinski 2020-08-05 11:02 ` Jiri Pirko [this message] 2020-08-06 18:25 ` Jakub Kicinski 2020-08-06 22:56 ` Jacob Keller 2020-08-09 13:21 ` Moshe Shemesh 2020-08-10 16:53 ` Jakub Kicinski 2020-08-10 17:09 ` Jacob Keller 2020-08-10 18:17 ` Jakub Kicinski 2020-08-11 5:46 ` Jiri Pirko 2020-07-27 11:02 ` [PATCH net-next RFC 02/13] devlink: Add reload levels data to dev get Moshe Shemesh 2020-07-28 0:58 ` Jakub Kicinski 2020-07-29 14:37 ` Moshe Shemesh 2020-07-29 21:11 ` Jakub Kicinski 2020-07-30 12:05 ` Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 03/13] net/mlx5: Add functions to set/query MFRL register Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 04/13] net/mlx5: Set cap for pci sync for fw update event Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 05/13] net/mlx5: Handle sync reset request event Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 06/13] net/mlx5: Handle sync reset now event Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 07/13] net/mlx5: Handle sync reset abort event Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 08/13] net/mlx5: Add support for devlink reload level fw reset Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 09/13] devlink: Add enable_remote_dev_reset generic parameter Moshe Shemesh 2020-07-28 0:59 ` Jakub Kicinski 2020-07-29 14:42 ` Moshe Shemesh 2020-07-29 20:57 ` Jakub Kicinski 2020-07-30 12:08 ` Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 10/13] net/mlx5: Add devlink param enable_remote_dev_reset support Moshe Shemesh 2020-07-28 0:59 ` Jakub Kicinski 2020-07-27 11:02 ` [PATCH net-next RFC 11/13] net/mlx5: Add support for fw live patch event Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 12/13] net/mlx5: Add support for devlink reload level live patch Moshe Shemesh 2020-07-27 11:02 ` [PATCH net-next RFC 13/13] devlink: Add Documentation/networking/devlink/devlink-reload.rst Moshe Shemesh 2020-07-28 5:25 ` [PATCH net-next RFC 00/13] Add devlink reload level option Vasundhara Volam 2020-07-28 16:43 ` Jacob Keller 2020-08-03 10:24 ` Vasundhara Volam 2020-08-03 12:17 ` Moshe Shemesh 2020-08-03 12:47 ` Vasundhara Volam 2020-08-03 13:52 ` Moshe Shemesh 2020-08-04 10:13 ` Vasundhara Volam 2020-08-05 6:32 ` Moshe Shemesh 2020-08-05 6:55 ` Vasundhara Volam 2020-08-05 8:20 ` Moshe Shemesh 2020-08-12 9:34 ` Vasundhara Volam 2020-07-28 16:37 ` Jacob Keller
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20200805110258.GA2169@nanopsycho \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
LKML Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/lkml/0 lkml/git/0.git git clone --mirror https://lore.kernel.org/lkml/1 lkml/git/1.git git clone --mirror https://lore.kernel.org/lkml/2 lkml/git/2.git git clone --mirror https://lore.kernel.org/lkml/3 lkml/git/3.git git clone --mirror https://lore.kernel.org/lkml/4 lkml/git/4.git git clone --mirror https://lore.kernel.org/lkml/5 lkml/git/5.git git clone --mirror https://lore.kernel.org/lkml/6 lkml/git/6.git git clone --mirror https://lore.kernel.org/lkml/7 lkml/git/7.git git clone --mirror https://lore.kernel.org/lkml/8 lkml/git/8.git git clone --mirror https://lore.kernel.org/lkml/9 lkml/git/9.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 lkml lkml/ https://lore.kernel.org/lkml \ firstname.lastname@example.org public-inbox-index lkml Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git