Repository navigation
audio: buffer: do not mix cached and non-cached access in buffer_init - #7786
Conversation
02c8a16 to
0bf1fd8
Compare
There was a problem hiding this comment.
now these two lines kind of break the concept. On the one hand they're useless, because those list objects are members in lists, not list heads, OTOH we always do that and in some places we actually use the fact that list members are "empty heads" when they aren't on any list. And here it breaks the concept because it assigns
head->next = head;
where head now is a cached address and those lists are always linked with uncached addresses
There was a problem hiding this comment.
@lyakh pushed these out to uncached ops at the end in V3 version
No reason to mix cached and noncached operations when initializing the buffer in buffer_alloc(). We take a cached reference, so let's use that to initialize the object. Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
0bf1fd8 to
9040da6
Compare
lyakh
left a comment
There was a problem hiding this comment.
I don't see any actual problem that this would fix, but it seems to happen to fix a tough so far inexplicable bug...
|
This fix seems super-generic. Should it be backported? I mean after a while without noticing any regression. |
This comment was marked as resolved.
This comment was marked as resolved.
My bad, https://sof-ci.01.org/softestpr/PR1058/build447/devicetest/index.html is very recent YET it ran with some old SOF commit 8fb011d that predates this PR?!? This PR was merged on June 14 16:19:49 UTC and that test run was started on June 14 23:06:05 UTC, yet the test run used June 13 SOF commit 8fb011d. I have no idea why; will discuss and investigate in thesofproject/sof-test#1058. Other recent test runs look better! Crossing fingers. EDIT: it seems all sof-test PRs run with yesterday's SOF commit, this is new to me... |
No reason to mix cached and noncached operations when initializing the buffer in buffer_ini(). We take a cached reference, so let's use that to initialize the object.