On Fri, Oct 16, 2026 at 01:44:21PM -0700, Deborah Brouwer wrote: > Allow userspace to provide a buffer that is smaller or larger than the > object that the kernel expects to write into it. > > Set a minimum buffer size to match those in PANTHOR_UOBJ_MIN_SIZE. If > userspace provides at least the minimum buffer size, then simply write > until the buffer is full. > > If userspace provides a larger buffer than necessary, then zero out the > remaining buffer. > > This ensures UAPI compatibility with Panthor. > > Signed-off-by: Deborah Brouwer <[email protected]> > --- > drivers/gpu/drm/tyr/file.rs | 47 > +++++++++++++++++++++++++++++++++++++-------- > 1 file changed, 39 insertions(+), 8 deletions(-) > > diff --git a/drivers/gpu/drm/tyr/file.rs b/drivers/gpu/drm/tyr/file.rs > index 9f60a90d4948..a153aa453ed1 100644 > --- a/drivers/gpu/drm/tyr/file.rs > +++ b/drivers/gpu/drm/tyr/file.rs > @@ -1,11 +1,18 @@ > // SPDX-License-Identifier: GPL-2.0 or MIT > > +use core::mem::{ > + offset_of, > + size_of_val, // > +};
size_of_val is present in kernel::prelude::* and does not need explicit import. > + transmute::AsBytes, Use the trait from zerocopy instead. > + let mut writer = UserSlice::new(UserPtr::from_addr(usr_dst as usize), > size).writer(); On 32-bit this will truncate upper bits. I guess that probably matches what Panthor does. Is it what we want? Alice
