On 11 April 2018 at 09:58, Daniel Mack <dan...@zonque.org> wrote:
> On Tuesday, April 10, 2018 08:17 PM, Ramon Fried wrote:
>> On 10 April 2018 at 20:35, Daniel Mack <dan...@zonque.org> wrote:
>>> When accessing shared memory to check for the stat of submitted
>>> descriptors, make sure to use READ_ONCE(). This will guarantee the
>>> compiler treats these memory locations as volatile and doesn't apply
>>> any caching.
>>
>> The structure that is tested is not shared memory. It's accessed only
>> by the apps processor.
>
> Hmm? ctl->desc is of type struct wcn36xx_dxe_desc, which is packed and
> shared with the firmware. The WCN36xx_DXE_CTRL_VLD bit in ctrl bitfield
> is set by the firmware when a frame is valid, and before asserting the
> RX interrupt. So the host CPU must treat it as volatile and expect it to
> change.
>
> Am I reading this wrong?
>
No, you're right. I missed that.
>
> Thanks,
> Daniel

Reply via email to