diff for duplicates of <1502285688.2759.41.camel@baylibre.com> diff --git a/a/1.txt b/N1/1.txt index 648db23..4d05b77 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -6,7 +6,7 @@ On Wed, 2017-08-09 at 12:45 +0100, Russell King - ARM Linux wrote: > > speculation/rounding phase would be different if some other > > consumer goes and changes some rate high up in the tree. > -> That's probably because people tend to get this stuff wrong.??It is +> That's probably because people tend to get this stuff wrong. It is > _not_ supposed to be: > > rounded_rate = clk_round_rate(clk, requested_rate); @@ -22,7 +22,7 @@ On Wed, 2017-08-09 at 12:45 +0100, Russell King - ARM Linux wrote: > The former is wrong for two reasons: > > 1. it's completely wasteful of CPU resources to do all the calculations -> ???that need to be done within clk_set_rate(). +> that need to be done within clk_set_rate(). > > 2. it's racy - there is no guarantee that you'll end up with "rounded_rate" > @@ -33,13 +33,13 @@ On Wed, 2017-08-09 at 12:45 +0100, Russell King - ARM Linux wrote: > I'm not sure that the clock rate protection API is really the right > solution - if we're trying to stop others from changing the clock rate, > that implies we have multiple different threads potentially changing -> the rate at any time.??If a driver does this: +> the rate at any time. If a driver does this: > > clk_set_rate(clk, foo); > clk_rate_protect(clk); > > what prevents another thread from changing the clock rate between these -> two calls???The only way to do this safely would be something like: +> two calls? The only way to do this safely would be something like: > > r = clk_round_rate(clk, foo); > while (1) { @@ -65,12 +65,12 @@ is explained in the cover letter: """ With this series there is 3 use-case: -?- the provider is not protected: nothing changes -?- the provider is protected by only 1 consumer (and only once), then only -???this consumer will be able to alter the rate of the clock, as it is the -???only one depending on it. -?- If the provider is protected more than once, or by the provider itself, -???the rate is basically locked and protected against reparenting. + - the provider is not protected: nothing changes + - the provider is protected by only 1 consumer (and only once), then only + this consumer will be able to alter the rate of the clock, as it is the + only one depending on it. + - If the provider is protected more than once, or by the provider itself, + the rate is basically locked and protected against reparenting. """ So what you should do if you have to protect the clock is: diff --git a/a/content_digest b/N1/content_digest index bcebe98..49b3269 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -6,10 +6,17 @@ "ref\0150223186723.22158.11617219588466426777@resonance\0" "ref\020170809021906.GA2146@codeaurora.org\0" "ref\020170809114548.GD20805@n2100.armlinux.org.uk\0" - "From\0jbrunet@baylibre.com (Jerome Brunet)\0" - "Subject\0[PATCH v3 05/10] clk: add support for clock protection\0" + "From\0Jerome Brunet <jbrunet@baylibre.com>\0" + "Subject\0Re: [PATCH v3 05/10] clk: add support for clock protection\0" "Date\0Wed, 09 Aug 2017 15:34:48 +0200\0" - "To\0linus-amlogic@lists.infradead.org\0" + "To\0Russell King - ARM Linux <linux@armlinux.org.uk>" + " Stephen Boyd <sboyd@codeaurora.org>\0" + "Cc\0Michael Turquette <mturquette@baylibre.com>" + linux-clk@vger.kernel.org + Kevin Hilman <khilman@baylibre.com> + linux-amlogic@lists.infradead.org + Linus Walleij <linus.walleij@linaro.org> + " Boris Brezillon <boris.brezillon@free-electrons.com>\0" "\00:1\0" "b\0" "On Wed, 2017-08-09 at 12:45 +0100, Russell King - ARM Linux wrote:\n" @@ -20,7 +27,7 @@ "> > speculation/rounding phase would be different if some other\n" "> > consumer goes and changes some rate high up in the tree.\n" "> \n" - "> That's probably because people tend to get this stuff wrong.??It is\n" + "> That's probably because people tend to get this stuff wrong.\302\240\302\240It is\n" "> _not_ supposed to be:\n" "> \n" "> \trounded_rate = clk_round_rate(clk, requested_rate);\n" @@ -36,7 +43,7 @@ "> The former is wrong for two reasons:\n" "> \n" "> 1. it's completely wasteful of CPU resources to do all the calculations\n" - "> ???that need to be done within clk_set_rate().\n" + "> \302\240\302\240\302\240that need to be done within clk_set_rate().\n" "> \n" "> 2. it's racy - there is no guarantee that you'll end up with \"rounded_rate\"\n" "> \n" @@ -47,13 +54,13 @@ "> I'm not sure that the clock rate protection API is really the right\n" "> solution - if we're trying to stop others from changing the clock rate,\n" "> that implies we have multiple different threads potentially changing\n" - "> the rate at any time.??If a driver does this:\n" + "> the rate at any time.\302\240\302\240If a driver does this:\n" "> \n" "> \tclk_set_rate(clk, foo);\n" "> \tclk_rate_protect(clk);\n" "> \n" "> what prevents another thread from changing the clock rate between these\n" - "> two calls???The only way to do this safely would be something like:\n" + "> two calls?\302\240\302\240The only way to do this safely would be something like:\n" "> \n" "> \tr = clk_round_rate(clk, foo);\n" "> \twhile (1) {\n" @@ -79,12 +86,12 @@ "\n" "\"\"\"\n" "With this series there is 3 use-case:\n" - "?- the provider is not protected: nothing changes\n" - "?- the provider is protected by only 1 consumer (and only once), then only\n" - "???this consumer will be able to alter the rate of the clock, as it is the\n" - "???only one depending on it.\n" - "?- If the provider is protected more than once, or by the provider itself,\n" - "???the rate is basically locked and protected against reparenting.\n" + "\302\240- the provider is not protected: nothing changes\n" + "\302\240- the provider is protected by only 1 consumer (and only once), then only\n" + "\302\240\302\240\302\240this consumer will be able to alter the rate of the clock, as it is the\n" + "\302\240\302\240\302\240only one depending on it.\n" + "\302\240- If the provider is protected more than once, or by the provider itself,\n" + "\302\240\302\240\302\240the rate is basically locked and protected against reparenting.\n" "\"\"\"\n" "\n" "So what you should do if you have to protect the clock is:\n" @@ -112,4 +119,4 @@ "> driver authors don't have to get involved in details like the above.\n" > -05b7efdfdcd714faf60c793f9b11353e9b2c0a23567d25e27174d30db6ec37e7 +89bf86c6fccdaf86f3fcc8d21da26d5690782c56334fd6273eea87103d2c8940
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.