lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGsJ_4yEmSGGKFxCT_wioEOaLxAzxNiryR42_hW9-vbu8WgBUg@mail.gmail.com>
Date: Wed, 7 May 2025 14:08:04 +1200
From: Barry Song <21cnbao@...il.com>
To: Qinxin Xia <xiaqinxin@...wei.com>
Cc: yangyicong@...wei.com, hch@....de, iommu@...ts.linux.dev, 
	jonathan.cameron@...wei.com, prime.zeng@...wei.com, fanghao11@...wei.com, 
	linux-kernel@...r.kernel.org, linuxarm@...wei.com
Subject: Re: [PATCH v2 1/4] dma-mapping: benchmark: Add padding to ensure uABI
 remained consistent

On Wed, May 7, 2025 at 1:52 PM Barry Song <21cnbao@...il.com> wrote:
>
> On Tue, May 6, 2025 at 3:01 PM Qinxin Xia <xiaqinxin@...wei.com> wrote:
> >
> > Fix a problem about commit (8ddde07a3d285a0f3cec, "dma-mapping:benchmark:
> > extract a common header file for map_benchmark definition") accidentally
> > removed that padding, which has completely broken the ABIs.
> >
> > Signed-off-by: Qinxin Xia <xiaqinxin@...wei.com>
>
> Please add Fixes tags and cc stable.

We are *NOT* adding any field.

Also, the subject and changelog are not appropriate. They should be something
like the following:

Previously, we had a padding field in this structure to allow for future
extension without breaking compatibility with user-space shared data
structures. In other words, the padding was reserved to maintain a stable
interface for potential new fields.

However, in one of the commits, tiantao accidentally removed this padding,
which could lead to incompatibility issues between user space and the
kernel.

This patch restores the padding to bring back the original structure layout
and ensure compatibility is preserved.

>
> > ---
> >  include/linux/map_benchmark.h | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/include/linux/map_benchmark.h b/include/linux/map_benchmark.h
> > index 62674c83bde4..2ac2fe52f248 100644
> > --- a/include/linux/map_benchmark.h
> > +++ b/include/linux/map_benchmark.h
> > @@ -27,5 +27,6 @@ struct map_benchmark {
> >         __u32 dma_dir; /* DMA data direction */
> >         __u32 dma_trans_ns; /* time for DMA transmission in ns */
> >         __u32 granule;  /* how many PAGE_SIZE will do map/unmap once a time */
> > +       __u8 expansion[76];     /* For future use */
> >  };
> >  #endif /* _KERNEL_DMA_BENCHMARK_H */
> > --
> > 2.33.0
> >
>
Thanks
Barry

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ