From: Dan Carpenter <dan.carpenter@oracle.com>
To: Coly Li <colyli@suse.de>
Cc: axboe@kernel.dk, linux-bcache@vger.kernel.org,
linux-block@vger.kernel.org, Jianpeng Ma <jianpeng.ma@intel.com>,
kernel test robot <lkp@intel.com>,
Qiaowei Ren <qiaowei.ren@intel.com>,
Christoph Hellwig <hch@lst.de>,
Dan Williams <dan.j.williams@intel.com>,
Hannes Reinecke <hare@suse.de>
Subject: Re: [PATCH v13 03/12] bcache: initialization of the buddy
Date: Wed, 15 Dec 2021 19:20:05 +0300 [thread overview]
Message-ID: <20211215162005.GA1978@kadam> (raw)
In-Reply-To: <20211212170552.2812-4-colyli@suse.de>
On Mon, Dec 13, 2021 at 01:05:43AM +0800, Coly Li wrote:
> + /*
> + * parameters of bitmap_set/clear are unsigned int.
> + * Given currently size of nvm is far from exceeding this limit,
> + * so only add a WARN_ON message.
> + */
> + WARN_ON(BITS_TO_LONGS(ns->pages_total) > UINT_MAX);
> + ns->pages_bitmap = kvcalloc(BITS_TO_LONGS(ns->pages_total),
> + sizeof(unsigned long), GFP_KERNEL);
BITS_TO_LONGS() has a potential integer overflow if we're talking about
truly giant numbers. It will return zero if ns->pages_total is more
than U64_MAX - 64. In that case kvcalloc() will return ZERO_SIZE_PTR.
Btw, kvcalloc() will never let you allocate more than INT_MAX. It will
trigger a WARN_ONCE(). If people want to allocate more than 2GB of RAM
then they have to plan ahead of time and use vmalloc().
regards,
dan carpenter
next prev parent reply other threads:[~2021-12-15 16:21 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-12 17:05 [PATCH v13 00/12] bcache for 5.17: enable NVDIMM for bcache journal Coly Li
2021-12-12 17:05 ` [PATCH v13 01/12] bcache: add initial data structures for nvm pages Coly Li
2021-12-12 17:05 ` [PATCH v13 02/12] bcache: initialize the nvm pages allocator Coly Li
2021-12-12 19:34 ` Jens Axboe
2021-12-28 5:29 ` Coly Li
2021-12-12 17:05 ` [PATCH v13 03/12] bcache: initialization of the buddy Coly Li
2021-12-12 20:10 ` Jens Axboe
2021-12-28 5:29 ` Coly Li
2021-12-15 16:20 ` Dan Carpenter [this message]
2021-12-28 5:12 ` Coly Li
2021-12-12 17:05 ` [PATCH v13 04/12] bcache: bch_nvmpg_alloc_pages() " Coly Li
2021-12-12 20:14 ` Jens Axboe
2021-12-28 5:29 ` Coly Li
2021-12-12 17:05 ` [PATCH v13 05/12] bcache: bch_nvmpg_free_pages() of the buddy allocator Coly Li
2021-12-12 20:16 ` Jens Axboe
2021-12-28 5:29 ` Coly Li
2022-02-21 12:36 ` yukuai (C)
2022-02-22 5:03 ` Ma, Jianpeng
2021-12-12 17:05 ` [PATCH v13 06/12] bcache: get recs list head for allocated pages by specific uuid Coly Li
2021-12-12 20:18 ` Jens Axboe
2021-12-12 17:05 ` [PATCH v13 07/12] bcache: use bucket index to set GC_MARK_METADATA for journal buckets in bch_btree_gc_finish() Coly Li
2021-12-12 17:05 ` [PATCH v13 08/12] bcache: add BCH_FEATURE_INCOMPAT_NVDIMM_META into incompat feature set Coly Li
2021-12-12 17:05 ` [PATCH v13 09/12] bcache: initialize bcache journal for NVDIMM meta device Coly Li
2021-12-12 17:05 ` [PATCH v13 10/12] bcache: support storing bcache journal into " Coly Li
2021-12-12 17:05 ` [PATCH v13 11/12] bcache: read jset from NVDIMM pages for journal replay Coly Li
2021-12-12 17:05 ` [PATCH v13 12/12] bcache: add sysfs interface register_nvdimm_meta to register NVDIMM meta device Coly Li
2021-12-12 20:20 ` [PATCH v13 00/12] bcache for 5.17: enable NVDIMM for bcache journal Jens Axboe
2021-12-28 5:29 ` Coly Li
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=20211215162005.GA1978@kadam \
--to=dan.carpenter@oracle.com \
--cc=axboe@kernel.dk \
--cc=colyli@suse.de \
--cc=dan.j.williams@intel.com \
--cc=hare@suse.de \
--cc=hch@lst.de \
--cc=jianpeng.ma@intel.com \
--cc=linux-bcache@vger.kernel.org \
--cc=linux-block@vger.kernel.org \
--cc=lkp@intel.com \
--cc=qiaowei.ren@intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.