On 2021/3/4 17:15, Jason Wang wrote:
The msg[i].buf is passed by the I2C core. I just noticed that these bufs are not+ } + + if (msgs[i].flags & I2C_M_RD) + memcpy(msgs[i].buf, req->buf, msgs[i].len);Sorry if I had asked this before but any rason not to use msg[i].buf directly?
always allocated by kmalloc. They may come from the stack, which may causethe check "sg_init_one -> sg_set_buf -> virt_addr_valid" to fail. Therefore the
msg[i].buf is not suitable for direct use here. Regards.