lkml.org 
[lkml]   [2022]   [Jun]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: linux-next: build warning after merge of the bluetooth tree
    On Mon, Jun 06, 2022 at 08:06:31AM +1000, Stephen Rothwell wrote:
    > Hi all,
    >
    > On Tue, 24 May 2022 08:22:56 +1000 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
    > >
    > > On Mon, 16 May 2022 17:57:57 +1000 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
    > > >
    > > > After merging the bluetooth tree, today's linux-next build (arm
    > > > multi_v7_defconfig) produced this warning:
    > > >
    > > > In file included from include/linux/cpumask.h:12,
    > > > from include/linux/mm_types_task.h:14,
    > > > from include/linux/mm_types.h:5,
    > > > from include/linux/buildid.h:5,
    > > > from include/linux/module.h:14,
    > > > from net/bluetooth/mgmt.c:27:
    > > > In function 'bitmap_copy',
    > > > inlined from 'bitmap_copy_clear_tail' at include/linux/bitmap.h:270:2,
    > > > inlined from 'bitmap_from_u64' at include/linux/bitmap.h:622:2,
    > > > inlined from 'set_device_flags' at net/bluetooth/mgmt.c:4534:4:
    > > > include/linux/bitmap.h:261:9: warning: 'memcpy' forming offset [4, 7] is out of the bounds [0, 4] of object 'flags' with type 'long unsigned int[1]' [-Warray-bounds]
    > > > 261 | memcpy(dst, src, len);
    > > > | ^~~~~~~~~~~~~~~~~~~~~
    > > > In file included from include/linux/kasan-checks.h:5,
    > > > from include/asm-generic/rwonce.h:26,
    > > > from ./arch/arm/include/generated/asm/rwonce.h:1,
    > > > from include/linux/compiler.h:248,
    > > > from include/linux/build_bug.h:5,
    > > > from include/linux/container_of.h:5,
    > > > from include/linux/list.h:5,
    > > > from include/linux/module.h:12,
    > > > from net/bluetooth/mgmt.c:27:
    > > > net/bluetooth/mgmt.c: In function 'set_device_flags':
    > > > net/bluetooth/mgmt.c:4532:40: note: 'flags' declared here
    > > > 4532 | DECLARE_BITMAP(flags, __HCI_CONN_NUM_FLAGS);
    > > > | ^~~~~
    > > > include/linux/types.h:11:23: note: in definition of macro 'DECLARE_BITMAP'
    > > > 11 | unsigned long name[BITS_TO_LONGS(bits)]
    > > > | ^~~~
    > > >
    > > > Introduced by commit
    > > >
    > > > a9a347655d22 ("Bluetooth: MGMT: Add conditions for setting HCI_CONN_FLAG_REMOTE_WAKEUP")
    > > >
    > > > Bitmaps consist of unsigned longs (in this case 32 bits) ...
    > > >
    > > > (This warning only happens due to chnges in the bitmap tree.)
    > >
    > > I still got this warning yesterday ...
    >
    > And today, I get this warning when build Linus' tree :-(

    Hi Stephen,

    I completely forgot about this bug, and sent a quick fix when this
    was spotted by Sudip [1]. Linus proposed another fix [2] that drops
    bitmap API in net/bluetooth/mgmt.c.

    I would prefer Linus' version, and this is the way I already suggested
    to Luiz before in this thread.

    Thanks,
    Yury

    [1] https://lore.kernel.org/lkml/YpyJ9qTNHJzz0FHY@debian/t/
    [2] https://lore.kernel.org/lkml/CAHk-=whqgEA=OOPQs7JF=xps3VxjJ5uUnfXgzTv4gqTDhraZFA@mail.gmail.com/T/#mcf29754f405443ca7d2a18db863c7a20439bd5a0

    \
     
     \ /
      Last update: 2022-06-06 00:40    [W:3.366 / U:0.516 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site