On 07/19/2018 12:52 PM, James Bottomley wrote: > The ABI break is the error case as I outlined above. We can't assume > everyone uses the current interface without getting an error and one > error and your hosed is a nasty failure case to change the interface > to. Well, if there is a broken application out there that doesn't work today it will not work after this change neither. > Plus, if you assume everyone is passing 4k buffers, why would you > even need the fragmentation case? So that people don't need to do this anymore and we can run a spec compliant TCTI on top of /dev/tpm<N>. > >>> It might be possible to layer the behaviour you want compatibly >>> into the current device structure (say an ioctl to switch to the >>> fragment behaviour) but I've got to ask why we'd go to the >>> complexity without a use case? >> New IOCTL would add extra complexity, which isn't necessary. > So what's wrong with fragmenting in the layer above the device driver > (in userspace) and not actually changing the kernel? Because it is much easier to implement in the driver, and we can run a spec compliant TCTI on top of /dev/tpm<N>. Thanks, -- Tadeusz