mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "andriy.shevchenko@linux.intel.com"  <andriy.shevchenko@linux.intel.com>
To: "Ma, Jianpeng" <jianpeng.ma@intel.com>,
	Yury Norov <yury.norov@gmail.com>
Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	linux-kernel@vger.kernel.org
Subject: Re: Why not use kvcalloc in bitmap_zalloc/bitmap_alloc?
Date: Thu, 3 Feb 2022 17:48:11 +0200	[thread overview]
Message-ID: <Yfv5OxhDdfLHETkt@smile.fi.intel.com> (raw)
In-Reply-To: <BN7PR11MB26099D11661A8D4D968CC646FDA90@BN7PR11MB2609.namprd11.prod.outlook.com>

On Wed, Jan 13, 2021 at 01:02:30AM +0000, Ma, Jianpeng wrote:
> Hi Andy:
>      Currently, I want to use bitmap_zalloc. But because I need large space(pages > 1024). So met the following message.
>      From the code, I know bitmap_zalloc use kmalloc.  To fix this problem, I change the code use "kvcalloc(BITS_TO_LONGS(ns->pages_total), sizeof(unsigned long), GFP_KERNEL);"
>      Because you introduced bitmap_zalloc, so I wanted to know why use kvcalloc in bitmap_zalloc?  Are there other considerations?

+Cc: maintainer and mailing list

> 2114 Jan 12 08:44:46 ceph kernel: [19770.801510] Modules linked in: test_nvm(E+) bcache(E) crc64 btrfs blake2b_generic xor zstd_compress raid6_pq ufs qnx4 hfsplus hfs minix ntfs msdos jfs intel_rapl_msr intel_rapl_common dax_pmem_compat  device_dax nd_pmem dax_pmem_core nd_btt skx_edac ipmi_ssif x86_pkg_temp_thermal binfmt_misc intel_powerclamp coretemp crct10dif_pclmul crc32_pclmul ghash_clmulni_intel aesni_intel crypto_simd cryptd glue_helper nls_iso8859_1 raplxfs intel_cstate libcrc32c input_leds efi_pstore ast drm_vram_helper drm_ttm_helper ttm drm_kms_helper cec drm i2c_algo_bit fb_sys_fops syscopyarea sysfillrect sysimgblt switchtec lpc_ich mei_me mei ioatdma acpi_ipmi ipmi_si ipmi_devintf ipmi_msghandler nfit acpi_pad acpi_power_meter mac_hid sch_fq_codel parport_pc ppdev lp parport ip_tables x_tables autofs4 hid_generic usbhid hid ixgbe megaraid_sas xfrm_algo i40e dca mdio nvme nvme_core ahci libahci wmi [last unloaded: bcache]
>  2115 Jan 12 08:44:46 ceph kernel: [19770.801568] CPU: 72 PID: 74351 Comm: insmod Tainted: G            E     5.10.0-rc5+ #1
>  2116 Jan 12 08:44:46 ceph kernel: [19770.801569] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.02.01.0008.031920191559 03/19/2019
>  2117 Jan 12 08:44:46 ceph kernel: [19770.801572] RIP: 0010:__alloc_pages_nodemask+0x297/0x330
>  2118 Jan 12 08:44:46 ceph kernel: [19770.801574] Code: 08 44 89 f9 44 89 ea 4c 89 f6 e8 54 96 fc ff e9 4c ff ff ff e8 fa 17 fc ff 48 89 c7 e9 b8 fe ff ff 41 81 e4 00 20 00 00 75 a7 <0f> 0b eb a3 31 c0 e9 1b fe ff ff 65 48 8b 04 25 c0 7b       01 00 8b 40
>  2119 Jan 12 08:44:46 ceph kernel: [19770.801575] RSP: 0018:ffffb2afcd4e39d8 EFLAGS: 00010246
>  2120 Jan 12 08:44:46 ceph kernel: [19770.801577] RAX: 0000000000000000 RBX: 0000000000000dc0 RCX: 0000000000000000
>  2121 Jan 12 08:44:46 ceph kernel: [19770.801578] RDX: 0000000000000001 RSI: 000000000000000b RDI: 0000000000040dc0
>  2122 Jan 12 08:44:46 ceph kernel: [19770.801579] RBP: ffffb2afcd4e3a30 R08: ffffffffb29c83c8 R09: 0000000000000000
>  2123 Jan 12 08:44:46 ceph kernel: [19770.801580] R10: 0000000000000000 R11: fefefefefefefeff R12: 0000000000000000
>  2124 Jan 12 08:44:46 ceph kernel: [19770.801581] R13: ffffffffb29c83c8 R14: 000000000000000b R15: 0000000000000000
>  2125 Jan 12 08:44:46 ceph kernel: [19770.801583] FS:  00007f24f731b540(0000) GS:ffff89abc1800000(0000) knlGS:0000000000000000
>  2126 Jan 12 08:44:46 ceph kernel: [19770.801584] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
>  2127 Jan 12 08:44:46 ceph kernel: [19770.801585] CR2: 00007f24f6e9f450 CR3: 00000040fc79e004 CR4: 00000000007706e0
>  2128 Jan 12 08:44:46 ceph kernel: [19770.801586] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
>  2129 Jan 12 08:44:46 ceph kernel: [19770.801587] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
>  2130 Jan 12 08:44:46 ceph kernel: [19770.801588] PKRU: 55555554
>  2131 Jan 12 08:44:46 ceph kernel: [19770.801589] Call Trace:
>  2132 Jan 12 08:44:46 ceph kernel: [19770.801598]  alloc_pages_current+0x87/0xe0
>  2133 Jan 12 08:44:46 ceph kernel: [19770.801602]  kmalloc_order+0x2c/0x90
>  2134 Jan 12 08:44:46 ceph kernel: [19770.801604]  kmalloc_order_trace+0x1d/0x80
>  2135 Jan 12 08:44:46 ceph kernel: [19770.801608]  __kmalloc+0x271/0x300
>  2136 Jan 12 08:44:46 ceph kernel: [19770.801612]  bitmap_zalloc+0x1d/0x20
>  2137 Jan 12 08:44:46 ceph kernel: [19770.801630]  bch_register_namespace+0x387/0x4e0 [bcache]
>  2138 Jan 12 08:44:46 ceph kernel: [19770.801636]  ? __wake_up_common_lock+0x8a/0xc0
>  2139 Jan 12 08:44:46 ceph kernel: [19770.801639]  ? 0xffffffffc04e3000
>  2140 Jan 12 08:44:46 ceph kernel: [19770.801641]  test_nvm_init+0x2f/0x1000 [test_nvm]
>  2141 Jan 12 08:44:46 ceph kernel: [19770.801646]  ? netlink_broadcast_filtered+0x13e/0x480
>  2142 Jan 12 08:44:46 ceph kernel: [19770.801649]  ? _cond_resched+0x19/0x30
>  2143 Jan 12 08:44:46 ceph kernel: [19770.801651]  ? unmap_kernel_range_noflush+0x2e7/0x360
>  2144 Jan 12 08:44:46 ceph kernel: [19770.801653]  ? free_pcp_prepare+0x80/0x160
>  2145 Jan 12 08:44:46 ceph kernel: [19770.801654]  ? 0xffffffffc04e3000
>  2146 Jan 12 08:44:46 ceph kernel: [19770.801658]  do_one_initcall+0x48/0x1d0
>  2147 Jan 12 08:44:46 ceph kernel: [19770.801659]  ? _cond_resched+0x19/0x30
>  2148 Jan 12 08:44:46 ceph kernel: [19770.801661]  ? kmem_cache_alloc_trace+0x153/0x2b0
>  2149 Jan 12 08:44:46 ceph kernel: [19770.801664]  do_init_module+0x62/0x240
>  2150 Jan 12 08:44:46 ceph kernel: [19770.801666]  load_module+0x28a0/0x2c50
>  2151 Jan 12 08:44:46 ceph kernel: [19770.801672]  ? security_kernel_post_read_file+0x5c/0x70
>  2152 Jan 12 08:44:46 ceph kernel: [19770.801674]  __do_sys_finit_module+0xc2/0x120
>  2153 Jan 12 08:44:46 ceph kernel: [19770.801676]  ? __do_sys_finit_module+0xc2/0x120

-- 
With Best Regards,
Andy Shevchenko



       reply	other threads:[~2022-02-03 15:49 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <BN7PR11MB26099D11661A8D4D968CC646FDA90@BN7PR11MB2609.namprd11.prod.outlook.com>
2022-02-03 15:48 ` andriy.shevchenko [this message]
2022-02-03 16:32   ` Yury Norov

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=Yfv5OxhDdfLHETkt@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=jianpeng.ma@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@rasmusvillemoes.dk \
    --cc=yury.norov@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

all inboxes | Powered by JetHome®