lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Fri, 4 Mar 2016 14:06:10 +0300
From:	Maxim Syrchin <syrchin@....rtsoft.ru>
To:	Wolfram Sang <wsa@...-dreams.de>,
	Dmitriy Baranov <dbaranov@....rtsoft.ru>
Cc:	linux-i2c@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] i2c: imx: add slave support. v2

Hi Wolfram,
I'm now working on creating new driver version. I think I'll be able to 
sent it soon.

04.03.2016 0:35, Wolfram Sang пишет:
>> There are might be race conditions.
> Can you name them
Most of races are fixed already. There were some issues with interrupt 
latencies  - sometimes slave interrupt appears in process of starting 
master xfer.
>> +enum imx_i2c_slave_state {
>> +	I2C_IMX_SLAVE_IDLE,
>> +	I2C_IMX_SLAVE_IRQ,
>> +	I2C_IMX_SLAVE_POLLING
> Highlevel question first: Why do you have polling? Why would anyone not
> want to use interrupts here?
Since imx doesn't generate interrupt on "bus stop" condition we'd had to 
implement polling scheme. Interrupts are used for starting polling and 
for  waking polling loop on new slave request. Without polling we can't 
handle "end-of-packet" event correctly.

In current version states are:

	I2C_IMX_SLAVE_IDLE // default state. slave process is waiting for interrupt
	I2C_IMX_SLAVE_POLLING // slave transfer is in process.
	I2C_IMX_MASTER   // master transfer is in process.


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ