On Mon, Apr 28, 2025 at 02:37:22PM +0530, Naman Jain wrote:
> 
> 
> On 4/25/2025 7:30 PM, Greg Kroah-Hartman wrote:
> > On Thu, Apr 24, 2025 at 11:05:22AM +0530, Naman Jain wrote:
> > > Hi,
> > > This patch series aims to address the sysfs creation issue for the ring
> > > buffer by reorganizing the code. Additionally, it updates the ring sysfs
> > > size to accurately reflect the actual ring buffer size, rather than a
> > > fixed static value.
> > > 
> > > PFB change logs:
> > > 
> > > Changes since v5:
> > > https://lore.kernel.org/all/20250415164452.170239-1-namj...@linux.microsoft.com/
> > > * Added Reviewed-By tags from Dexuan. Also, addressed minor comments in
> > >    commit msg of both patches.
> > > * Missed to remove check for "primary_channel->device_obj->channels_kset" 
> > > in
> > >    hv_create_ring_sysfs in earlier patch, as suggested by Michael. Did it
> > >    now.
> > > * Changed type for declaring bin_attrs due to changes introduced by
> > >    commit 9bec944506fa ("sysfs: constify attribute_group::bin_attrs") 
> > > which
> > >    merged recently. Did not use bin_attrs_new since another change is in
> > >    the queue to change usage of bin_attrs_new to bin_attrs
> > >    (sysfs: finalize the constification of 'struct bin_attribute').
> > 
> > Please fix up to apply cleanly without build warnings:
> > 
> > drivers/hv/vmbus_drv.c:1893:15: error: initializing 'struct bin_attribute 
> > **' with an expression of type 'const struct bin_attribute *const[2]' 
> > discards qualifiers in nested pointer types 
> > [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
> >   1893 |         .bin_attrs = vmbus_chan_bin_attrs,
> >        |                      ^~~~~~~~~~~~~~~~~~~~
> > 1 error generated.
> 
> Hi Greg,
> I tried reproducing this error but could not see it. Should I rebase the
> change to some other tree or use some specific config option, gcc version,
> compilation flag etc.?
> 
> I tried the following:
> * Rebased to latest linux-next tip with below base commit:
> 393d0c54cae31317deaa9043320c5fd9454deabc
> * Regular compilation with gcc: make -j8
> * extra flags:
>   make -j8  EXTRA_CFLAGS="-Wall -O2"
>   make -j8 EXTRA_CFLAGS="-Wincompatible-pointer-types-discards-qualifiers
> -Werror"
> * Tried gcc 11.4, 13.3
> * Tried clang/LLVM with version 18.1.3 : make LLVM=1

I tried this against my char-misc-linus branch (which is pretty much
just 6.15.0-rc4 plus some iio patches), and it fails with that error
above.

> BTW I had to edit the type for bin_attrs as this change got merged recently:
> 9bec944506fa ("sysfs: constify attribute_group::bin_attrs")
> 
> diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h
> index 576b8b3c60af..f418aae4f113 100644
> --- a/include/linux/sysfs.h
> +++ b/include/linux/sysfs.h
> @@ -107,7 +107,7 @@ struct attribute_group {
>                                             int);
>         struct attribute        **attrs;
>         union {
> -               struct bin_attribute            **bin_attrs;
> +               const struct bin_attribute      *const *bin_attrs;
>                 const struct bin_attribute      *const *bin_attrs_new;
>         };
>  };

That commit is not in my char-misc branches, that's coming from
somewhere else.

thanks,

greg k-h

Reply via email to