linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Matthew Wilcox <willy@infradead.org>
To: Souptick Joarder <jrdr.linux@gmail.com>
Cc: Minchan Kim <minchan@kernel.org>,
	kbuild test robot <lkp@intel.com>,
	kbuild-all@01.org, Nitin Gupta <ngupta@vflare.org>,
	sergey.senozhatsky.work@gmail.com, Linux-MM <linux-mm@kvack.org>
Subject: Re: [PATCH] mm: zsmalloc: Replace return type int with bool
Date: Tue, 20 Feb 2018 05:37:25 -0800	[thread overview]
Message-ID: <20180220133725.GC21243@bombadil.infradead.org> (raw)
In-Reply-To: <20180220125246.GB21243@bombadil.infradead.org>

On Tue, Feb 20, 2018 at 04:52:46AM -0800, Matthew Wilcox wrote:
> On Tue, Feb 20, 2018 at 04:25:15PM +0530, Souptick Joarder wrote:
> > On Tue, Feb 20, 2018 at 2:38 PM, Minchan Kim <minchan@kernel.org> wrote:
> > > Yub, bool could be more appropriate. However, there are lots of other places
> > > in kernel where use int instead of bool.
> > > If we fix every such places with each patch, it would be very painful.
> > > If you believe it's really worth, it would be better to find/fix every
> > > such places in one patch. But I'm not sure it's worth.
> > >
> > 
> > Sure, I will create patch series and send it.
> 
> Please don't.  If you're touching a function for another reason, it's
> fine to convert it to return bool.  A series of patches converting every
> function in the kernel that could be converted will not make friends.

... but if you're looking for something to do, here's something from my
TODO list that's in the same category.

The vm_ops fault, huge_fault, page_mkwrite and pfn_mkwrite handlers are
currently defined to return an int (see linux/mm.h).  Unlike the majority
of functions which return int, these functions are supposed to return
one or more of the VM_FAULT flags.  There's general agreement that this
should become a new typedef, vm_fault_t.  We can do a gradual conversion;
start off by adding

typedef int vm_fault_t;

to linux/mm.h.  Then the individual drivers can be converted (one patch
per driver) to return vm_fault_t from those handlers (probably about
180 patches, so take it slowly).  Once all drivers are converted, we
can change that typedef to:

typedef enum {
	VM_FAULT_OOM	= 1,
	VM_FAULT_SIGBUS	= 2,
	VM_FAULT_MAJOR	= 4,
...
} vm_fault_t;

and then the compiler will warn if anyone tries to introduce a new handler
that returns int.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2018-02-20 13:37 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-19 19:42 [PATCH] mm: zsmalloc: Replace return type int with bool Souptick Joarder
2018-02-19 19:43 ` Randy Dunlap
2018-02-20  3:37 ` [PATCH] mm: zsmalloc: fix boolreturn.cocci warnings kbuild test robot
2018-02-20  3:37 ` [PATCH] mm: zsmalloc: Replace return type int with bool kbuild test robot
2018-02-20  7:39   ` Souptick Joarder
2018-02-20  9:08     ` Minchan Kim
2018-02-20 10:55       ` Souptick Joarder
2018-02-20 12:52         ` Matthew Wilcox
2018-02-20 13:37           ` Matthew Wilcox [this message]
2018-02-20 15:18             ` Souptick Joarder

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180220133725.GC21243@bombadil.infradead.org \
    --to=willy@infradead.org \
    --cc=jrdr.linux@gmail.com \
    --cc=kbuild-all@01.org \
    --cc=linux-mm@kvack.org \
    --cc=lkp@intel.com \
    --cc=minchan@kernel.org \
    --cc=ngupta@vflare.org \
    --cc=sergey.senozhatsky.work@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).