On 30/01/15 10:21, Thierry Reding wrote: > On Fri, Jan 30, 2015 at 11:15:30AM +0100, Erik Faye-Lund wrote: >> On Fri, Jan 30, 2015 at 10:49 AM, Thierry Reding >> <thierry.reding at gmail.com> wrote: >>> On Thu, Jan 29, 2015 at 02:18:41PM -0500, Sean Paul wrote: >>>> On 64-bit targets, tegra_gem_mmap doesn't return the >>>> offset to userspace. As such, subsequent calls to mmap(2) >>>> fail. Add a new tegra_gem_mmap2 ioctl to fix this. >>>> >>>> Signed-off-by: Sean Paul <seanpaul at chromium.org> >>>> --- >>>> drivers/gpu/drm/tegra/drm.c | 21 +++++++++++++++++++++ >>>> include/uapi/drm/tegra_drm.h | 9 +++++++++ >>>> 2 files changed, 30 insertions(+) >>> >>> To be honest, I'd rather just fix the existing IOCTL to do the right >>> thing on 64-bit. All IOCTLs are still protected by the DRM_TEGRA_STAGING >>> Kconfig symbol which depends on STAGING. We originally did that >>> precisely so we'd have some leeway in fixing things up. And we've done >>> precisely that in the past. >>> >>> The only user of this IOCTL is libdrm and I don't think that has any >>> users aside from a few projects that are still under heavy development >>> (like grate or the xf86-video-opentegra driver). >>> >>> Cc'ing Erik, who's probably the only one that's ever worked with this, >>> besides me. >> >> I also saw the patch, and had the same reaction. I'm fine with >> changing the ABI, it was done already anyway >> (cbfbbabb89b37f6bad05f478d906a385149f288d, "drm/tegra: Remove >> gratuitous pad field"). And as you say, this is only in staging so >> nobody is really relying on it, except grate and libdrm (in which this >> is clearly marked as experimental). I'm fine with just changing it, >> and updating grate and libdrm accordingly. > > Okay, I can prepare a patch for libdrm and push it if we decide to go > ahead with this plan. > > Rob, Sean, (anyone,) any objections to just changing the ABI? I made > another pass through the list of IOCTL argument structures and couldn't > spot any others that would have the same issue. Perhaps we're finally > approaching a point where we can remove the dependency on STAGING? > Hi Thierry,
Just a small tip - pahole is nice little helper wrt structure size/padding. Just scan the 32 & 64bit build and grep + diff the struct sizes. Cheers, Emil