lkml.org 
[lkml]   [2020]   [Nov]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: md: dm-writeback: add __noreturn to BUG-ging function
On Wed, Nov 18 2020 at  4:24pm -0500,
Mikulas Patocka <mpatocka@redhat.com> wrote:

>
>
> On Wed, 18 Nov 2020, Mike Snitzer wrote:
>
> > On Wed, Nov 18 2020 at 10:49am -0500,
> > Mike Snitzer <snitzer@redhat.com> wrote:
> >
> > > I don't think my suggestion will help.. given it'd still leave
> > > persistent_memory_claim() without a return statement.
> > >
> > > Think it worthwhile to just add a dummy 'return 0;' after the BUG().
> >
> > Decided to go with this, now staged for 5.11:
> > https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git/commit/?h=dm-5.11&id=a1e4865b4dda7071f3707f7e551289ead66e38b1
>
> Hi
>
> I would just use "return -EOPNOTSUPP;" and drop the "#ifdef
> DM_WRITECACHE_HAS_PMEM" that you added.
>
> That BUG/return -EOPNOTSUPP code can't happen at all - if
> DM_WRITECACHE_HAS_PMEM is not defined, WC_MODE_PMEM(wc) always returns
> false - so persistent_memory_claim and BUG() can't ever be called. And if
> it can't be called, you don't need to add a code that prints an error in
> that case.
>
> If we don't have DM_WRITECACHE_HAS_PMEM, the compiler optimizer will
> remove all the code guarded with if (WC_MODE_PMEM(wc)) as unreachable.
>
> Mikulas

Fair enough.

\
 
 \ /
  Last update: 2020-11-20 15:10    [W:0.069 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site