Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp3366670pxb; Mon, 18 Oct 2021 13:46:10 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwxCE2HvEjWk33lhCKEZj5RqdoRE3Rm94qgERNNvuPnMCGRGJRkbj9v/ef9Honcl38QqslD X-Received: by 2002:aa7:d459:: with SMTP id q25mr47592056edr.236.1634589969914; Mon, 18 Oct 2021 13:46:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1634589969; cv=none; d=google.com; s=arc-20160816; b=yg6d1Yy5kqeDY3ZeTRZnC2qxeL0ccgFRD8OQqN3L2gigIuwOtHxdmIiBvSjnJ/NSMd 4zToeDhP+Im0YOStjPHlZEEp7T2NbtpZOZAecm31tVQHl9rRVbJX1l+HLr0Qup4hrRVI Gg3qjvSSyP06OJUwft4oJCn6dzW+NtNBb0R8DkSakDLXFXxhwQg6Ygzp7eyet/uPbkmP lCbZZtpThwkHDP44nvCAkZRX5ljVEWDKu9LeiAonriCwU8Ozh8CRGpetStCIWMdSepHO Jll0EAYMUg+PuGWnE+TEJ4P3N7HnGRW8a6dT/E+cvmnlO7Sts9htX1Hrk+a6vFo+NzWp 79Nw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=W3+MqdGMNE0ROXON+/dM0kK4akMRB2F5iCUfGesfCO0=; b=pZPkXldMybxnuYqw+WJah2SEEYXEXX5lEGiNWcZa/rO8r/eiAEI/ewAUT2xGQIiait XxukOEAFVasuaosnZl5bqfNODkqbtsmsdsiguAnFtpuptfsYtOnb6gkx3ATMS0oAnTNv Gd0t5JpJs966bJc5e+iu224xUJmdsVMYSP4tGJRTfii/Xh15zu93DNL9Ox/kxNPRzEpQ kAefWgHUSRJ/Jowyw9pHeCKH2zsa0SHo4qHkJJRMvajB2TwsDj+lmX5B657ih7hRiqRq tp74WatrzsDoYKHZicFtJlfNfu6iFiOUnywFsIAXSAgB5cQdpQ43Gtee1MwhRf6UqYt4 D7kQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e3si23381562ejm.466.2021.10.18.13.45.46; Mon, 18 Oct 2021 13:46:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232711AbhJRUoX (ORCPT + 99 others); Mon, 18 Oct 2021 16:44:23 -0400 Received: from brightrain.aerifal.cx ([216.12.86.13]:59816 "EHLO brightrain.aerifal.cx" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232116AbhJRUoV (ORCPT ); Mon, 18 Oct 2021 16:44:21 -0400 Date: Mon, 18 Oct 2021 16:42:04 -0400 From: Rich Felker To: Arnd Bergmann Cc: musl@lists.openwall.com, Takashi Iwai , Michael Forney , ALSA Development Mailing List , Takashi Iwai , Baolin Wang , y2038 Mailman List , Linux Kernel Mailing List , Mark Brown , Baolin Wang Subject: Re: [musl] Re: [alsa-devel] [PATCH v7 8/9] ALSA: add new 32-bit layout for snd_pcm_mmap_status/control Message-ID: <20211018204203.GM7074@brightrain.aerifal.cx> References: <20211007165158.GC7074@brightrain.aerifal.cx> <20211008120736.GF7074@brightrain.aerifal.cx> <20211018144259.GK7074@brightrain.aerifal.cx> <20211018150824.GL7074@brightrain.aerifal.cx> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Oct 18, 2021 at 05:26:35PM +0200, Arnd Bergmann wrote: > On Mon, Oct 18, 2021 at 5:08 PM Rich Felker wrote: > > On Mon, Oct 18, 2021 at 04:58:03PM +0200, Takashi Iwai wrote: > > > On Mon, 18 Oct 2021 16:43:00 +0200, Rich Felker wrote: > > > > No, I don't think so. The musl translator is to translate between the > > time64 ioctl structures and the old time32 ones for the sake of > > executing on an old kernel. Up til now, it has been broken comparably > > to how 32-bit binaries running in compat mode on a 64-bit kernel were > > broken: the code in musl translated the time64 structure to (and back > > from) the time32 one assuming the intended padding. But the > > application was using the actual kernel uapi struct where the padding > > was (and still is) illogical. Thus, nothing was built with the wrong > > ABI; it's only the musl-internal translation logic that was wrong (and > > only pre-time64 kernels are affected). > > > > The attached patch should fix it, I think. > > > > + int adj = BYTE_ORDER==BIG_ENDIAN ? 4 : 0; > > + if (dir==W) { > > + memcpy(old+68, new+72+adj, 4); > > + memcpy(old+72, new+72+4+2*adj, 4); > > I think that should be "new+72+4+3*adj": the "2*adj" would > be what the code does already for the originally intended > format. Well for little endian either would work (because adj is 0 :) but yes there are 3 such paddings before the second member on big endian, so it should be 3. Rich