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