Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-11-08 Thread Viresh Kumar
On 03-11-21, 15:42, Vincent Whitchurch wrote: > The suggested timeout is not meant to take into account the overhead of > virtualization, but to be used by the virtio device as a timeout for the > transaction on the I2C bus (presumably by programming this value to the > physical I2C controller, if

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-11-03 Thread Vincent Whitchurch
On Wed, Nov 03, 2021 at 07:37:45AM +0100, Viresh Kumar wrote: > On 03-11-21, 06:18, Chen, Conghui wrote: > > >>> Over the long term, I think the backend should provide that timeout > > >>> value and guarantee that its processing time should not exceed that > > >>> value. > > >> If you mean that the

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-11-02 Thread Viresh Kumar
On 03-11-21, 06:18, Chen, Conghui wrote: > >>> Over the long term, I think the backend should provide that timeout > >>> value and guarantee that its processing time should not exceed that > >>> value. > >> If you mean that the spec should be changed to allow the virtio driver > >> to be able to pr

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-31 Thread Jie Deng
On 2021/10/29 20:24, Vincent Whitchurch wrote: On Thu, Oct 21, 2021 at 05:30:28AM +0200, Jie Deng wrote: For this moment, we can solve the problem by using a hardcoded big value or disabling the timeout. Is that an Acked-by on this patch which does the latter? Yes, you can add my Acked-by.

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-29 Thread Vincent Whitchurch
On Thu, Oct 21, 2021 at 05:30:28AM +0200, Jie Deng wrote: > On 2021/10/20 19:03, Viresh Kumar wrote: > > On 20-10-21, 12:55, Vincent Whitchurch wrote: > >> If the timeout cannot be disabled, then the driver should be fixed to > >> always copy buffers and hold on to them to avoid memory corruption i

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-20 Thread Jie Deng
On 2021/10/20 19:03, Viresh Kumar wrote: On 20-10-21, 12:55, Vincent Whitchurch wrote: If the timeout cannot be disabled, then the driver should be fixed to always copy buffers and hold on to them to avoid memory corruption in the case of timeout, as I mentioned in my commit message. That wou

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-20 Thread Viresh Kumar
On 20-10-21, 12:55, Vincent Whitchurch wrote: > If the timeout cannot be disabled, then the driver should be fixed to > always copy buffers and hold on to them to avoid memory corruption in > the case of timeout, as I mentioned in my commit message. That would be > quite a substantial change to th

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-20 Thread Vincent Whitchurch
On Wed, Oct 20, 2021 at 09:04:45AM +0200, Jie Deng wrote: > On 2021/10/20 14:41, Viresh Kumar wrote: > > On 20-10-21, 14:35, Jie Deng wrote: > >> Yes, but we need to know what's the best value to be configured for a > >> specific "other side". > >> > >> I think the "other side" should be more aware

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-20 Thread Jie Deng
On 2021/10/20 14:41, Viresh Kumar wrote: On 20-10-21, 14:35, Jie Deng wrote: Yes, but we need to know what's the best value to be configured for a specific "other side". I think the "other side" should be more aware of what value is reasonable to be used. If we _really_ need that, then it wo

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Viresh Kumar
On 20-10-21, 14:35, Jie Deng wrote: > Yes, but we need to know what's the best value to be configured for a > specific "other side". > > I think the "other side" should be more aware of what value is reasonable to > be used. If we _really_ need that, then it would require an update to the specifi

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Jie Deng
On 2021/10/20 13:36, Greg KH wrote: On Wed, Oct 20, 2021 at 12:20:13PM +0800, Jie Deng wrote: On 2021/10/20 2:14, Wolfram Sang wrote: I think it is set to HZ currently, though I haven't tried big transfers but I still get into some issues with Qemu based stuff. Maybe we can bump it up to few s

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Greg KH
On Wed, Oct 20, 2021 at 12:20:13PM +0800, Jie Deng wrote: > > On 2021/10/20 2:14, Wolfram Sang wrote: > > > I think it is set to HZ currently, though I haven't tried big > > > transfers but I still get into some issues with Qemu based stuff. > > > Maybe we can bump it up to few seconds :) > > If y

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Jie Deng
On 2021/10/20 2:14, Wolfram Sang wrote: I think it is set to HZ currently, though I haven't tried big transfers but I still get into some issues with Qemu based stuff. Maybe we can bump it up to few seconds :) If you use adapter->timeout, this can even be set at runtime using a ioctl. So, it c

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Jie Deng
On 2021/10/19 16:09, Viresh Kumar wrote: Doing this may not be a good thing based on the kernel rules I have understood until now. Maybe Greg and Wolfram can clarify on this. We are waiting here for an external entity (Host kernel) or a firmware that uses virtio for transport. If the other sid

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Viresh Kumar
On 19-10-21, 13:16, Greg KH wrote: > On Tue, Oct 19, 2021 at 03:12:03PM +0530, Viresh Kumar wrote: > > On 19-10-21, 11:36, Greg KH wrote: > > > What is the "other side" here? Is it something that you trust or not? > > > > Other side can be a remote processor (for remoteproc over virtio or > > som

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Viresh Kumar
On 19-10-21, 13:15, Wolfram Sang wrote: > > > The other side is the software that has access to the _Real_ hardware, > > and so we should trust it. So we can have a actually have a completion > > without timeout here, interesting. > > So, if the other side gets a timeout talking to the HW, then t

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Greg KH
On Tue, Oct 19, 2021 at 03:12:03PM +0530, Viresh Kumar wrote: > On 19-10-21, 11:36, Greg KH wrote: > > What is the "other side" here? Is it something that you trust or not? > > Other side can be a remote processor (for remoteproc over virtio or > something similar), or traditionally it can be hos

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Viresh Kumar
On 19-10-21, 11:36, Greg KH wrote: > What is the "other side" here? Is it something that you trust or not? Other side can be a remote processor (for remoteproc over virtio or something similar), or traditionally it can be host OS or host firmware providing virtualisation to a Guest running Linux

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Greg KH
On Tue, Oct 19, 2021 at 01:39:13PM +0530, Viresh Kumar wrote: > +Greg. > > On 19-10-21, 09:46, Vincent Whitchurch wrote: > > If a timeout is hit, it can result is incorrect data on the I2C bus > > and/or memory corruptions in the guest since the device can still be > > operating on the buffers it

Re: [PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Viresh Kumar
+Greg. On 19-10-21, 09:46, Vincent Whitchurch wrote: > If a timeout is hit, it can result is incorrect data on the I2C bus > and/or memory corruptions in the guest since the device can still be > operating on the buffers it was given while the guest has freed them. > > Here is, for example, the s

[PATCH 1/2] i2c: virtio: disable timeout handling

2021-10-19 Thread Vincent Whitchurch
If a timeout is hit, it can result is incorrect data on the I2C bus and/or memory corruptions in the guest since the device can still be operating on the buffers it was given while the guest has freed them. Here is, for example, the start of a slub_debug splat which was triggered on the next trans