From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.5 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_PASS,USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 58011C43381 for ; Fri, 29 Mar 2019 04:31:44 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id DEB05206BA for ; Fri, 29 Mar 2019 04:31:43 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org DEB05206BA Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 786F46B0007; Fri, 29 Mar 2019 00:31:43 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 736FC6B0008; Fri, 29 Mar 2019 00:31:43 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5FD836B000C; Fri, 29 Mar 2019 00:31:43 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from mail-pg1-f200.google.com (mail-pg1-f200.google.com [209.85.215.200]) by kanga.kvack.org (Postfix) with ESMTP id 113AD6B0007 for ; Fri, 29 Mar 2019 00:31:43 -0400 (EDT) Received: by mail-pg1-f200.google.com with SMTP id d128so778724pgc.8 for ; Thu, 28 Mar 2019 21:31:43 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-original-authentication-results:x-gm-message-state:date:from:to :cc:subject:message-id:mime-version:content-disposition:user-agent; bh=T3dtvTRGNFMwVHumRNS3paZzsXzWAI6EA55ZG5Z2PIw=; b=TTakhpytUrotl8os9JFvO43wHc/4SpnoOL2E4PWRUefhIZmzFdpjpXpXEiopoezw2a nLzUyVgsEUoBr29xXkcjOEGiKPLs4FIymCpKJDMYBP2dKIj0skOJ+miEl8bY4zko1ZfI 8xpJsuP5qxtU7qfbunzicRXjCQrPJuJOwB6Li+2mbR6J23EAKtObvD5X2DEpoLVOsOdg qxvtjlNieiG8eSYCF7z0Hk89UmYkuH9oos77hiTPcHrNS51BYH8HBMmF6aeCZX9Zvfn1 FyoNdCW37VetOaODfb6VUs2KHgnRQwxZR6l+0q2ZIgH7fpytxqNWwP82+4uDagjLb7dm BLZg== X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of lkp@intel.com designates 192.55.52.43 as permitted sender) smtp.mailfrom=lkp@intel.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com X-Gm-Message-State: APjAAAVgcliRoDbwDPhmUklF2C6kEpsEXLvIxRRgekzmRvVw7G8LF8F+ XPrCtWlhojQGEdz1diVeHJmN/ciod2vvqi9zEtzOhRd2l6v1wYdQEPFaTbxVLpaol9zUZ0ajiR4 vw4a/3rSlJpIywbtOeGBR38wMY4K1xUubf7XiOL8gxSu5sEWLUvBS1HbKgM7VKuCURQ== X-Received: by 2002:a62:4553:: with SMTP id s80mr44522062pfa.141.1553833902455; Thu, 28 Mar 2019 21:31:42 -0700 (PDT) X-Google-Smtp-Source: APXvYqw9qe1/hTXQVJdvVkMho2jodipkod3M7oViS6go+3IFVYbmVU2CGdF8eeVeet7S2TOAzz4C X-Received: by 2002:a62:4553:: with SMTP id s80mr44521950pfa.141.1553833900583; Thu, 28 Mar 2019 21:31:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1553833900; cv=none; d=google.com; s=arc-20160816; b=o8w81z1ucgEPGemo5J7J4E3JuIlt6efidORtrVafMNN1/acSkBhe6nuFK2dCOCrOPB qUtKCV0ioh0Sr+4/tTTGkXh4ztiB7DGpF5s0Thism4kc7OrbigpLTBxRajh2T2FO68yD 8eyvO2ZbLWu0JnkVaTW5RTjCKAdqZVfaOcCYwYmEwp9NknMoBF0pvBGjJhNy1twVW7bt DLh3cWnpFJ1fu0bsFCY68LcgmQ433yb8QZc75OTYjxLP2bAvdGxmWcfVIxi1xfd4Eyis O9SomU66cGdbIzhKkVE8RqeTMsVA0/tbp7BqehvPxD/vUufMCwfgE3qwzRsWhwx/Enp5 0jzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=user-agent:content-disposition:mime-version:message-id:subject:cc :to:from:date; bh=T3dtvTRGNFMwVHumRNS3paZzsXzWAI6EA55ZG5Z2PIw=; b=hu0zBpVWjKNkf99niKNUV+FiDT1eBTJ1YkOJC15YpNOq2MOMH/fsapp44b36TNjU4Y 7HFMo7e/93N+rljAAirxUwaXt/bYqpeMK/Si4EZwjhPk/KF/g856PGCANWSsUoSifnW3 AbbOuVArzEzUWVM4RKCjNtXr2n9QwK0yDMQIf0lQiYWS07G1SZwx1KQgy37KQT5d6pVN 1aER0GTi++iclas+YVrXcVRUrAmQZSzw4mJMr3fkmmjhgkibQPyxb+Qh5xAmnVxBLWbS iDrH/aJGuieZOaAOZvaKYHC/9Wxq3yr2uyY8BBTH3evIblWB0DL+boD3FRjBT2Bd+4qu R84g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of lkp@intel.com designates 192.55.52.43 as permitted sender) smtp.mailfrom=lkp@intel.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from mga05.intel.com (mga05.intel.com. [192.55.52.43]) by mx.google.com with ESMTPS id q4si879707pfh.157.2019.03.28.21.31.40 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 28 Mar 2019 21:31:40 -0700 (PDT) Received-SPF: pass (google.com: domain of lkp@intel.com designates 192.55.52.43 as permitted sender) client-ip=192.55.52.43; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lkp@intel.com designates 192.55.52.43 as permitted sender) smtp.mailfrom=lkp@intel.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Mar 2019 21:31:39 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,283,1549958400"; d="gz'50?scan'50,208,50";a="129656641" Received: from lkp-server01.sh.intel.com (HELO lkp-server01) ([10.239.97.150]) by orsmga008.jf.intel.com with ESMTP; 28 Mar 2019 21:31:37 -0700 Received: from kbuild by lkp-server01 with local (Exim 4.89) (envelope-from ) id 1h9jB3-000H1J-Cz; Fri, 29 Mar 2019 12:31:37 +0800 Date: Fri, 29 Mar 2019 12:30:44 +0800 From: kbuild test robot To: Yury Norov Cc: kbuild-all@01.org, Johannes Weiner , Andrew Morton , Linux Memory Management List Subject: [mmotm:master 158/210] htmldocs: lib/bitmap.c:679: warning: Function parameter or member 'end' not described in '__bitmap_parselist' Message-ID: <201903291240.XVjRdQ8g%lkp@intel.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="gKMricLos+KVdGMg" Content-Disposition: inline User-Agent: Mutt/1.5.23 (2014-03-12) X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: --gKMricLos+KVdGMg Content-Type: text/plain; charset=us-ascii Content-Disposition: inline tree: git://git.cmpxchg.org/linux-mmotm.git master head: ecb428ddd7449905d371074f509d08475eef43f0 commit: 599c8c59b97e91e98b2bfcc80070cdb9e1bbdf3b [158/210] lib: bitmap_parselist: rework input string parser reproduce: make htmldocs All warnings (new ones prefixed by >>): WARNING: convert(1) not found, for SVG to PDF conversion install ImageMagick (https://www.imagemagick.org) include/linux/generic-radix-tree.h:1: warning: no structured comments found lib/bitmap.c:678: warning: Excess function parameter 'buflen' description in '__bitmap_parselist' lib/bitmap.c:679: warning: Excess function parameter 'buflen' description in '__bitmap_parselist' >> lib/bitmap.c:679: warning: Function parameter or member 'end' not described in '__bitmap_parselist' lib/bitmap.c:679: warning: Excess function parameter 'buflen' description in '__bitmap_parselist' lib/sort.c:59: warning: Excess function parameter 'size' description in 'swap_words_32' lib/sort.c:83: warning: Excess function parameter 'size' description in 'swap_words_64' lib/sort.c:110: warning: Excess function parameter 'size' description in 'swap_bytes' kernel/rcu/tree_plugin.h:1: warning: no structured comments found kernel/rcu/tree_plugin.h:1: warning: no structured comments found include/linux/firmware/intel/stratix10-svc-client.h:1: warning: no structured comments found include/linux/gpio/driver.h:371: warning: Function parameter or member 'init_valid_mask' not described in 'gpio_chip' include/linux/i2c.h:343: warning: Function parameter or member 'init_irq' not described in 'i2c_client' include/linux/iio/hw-consumer.h:1: warning: no structured comments found include/linux/input/sparse-keymap.h:46: warning: Function parameter or member 'sw' not described in 'key_entry' include/linux/regulator/machine.h:199: warning: Function parameter or member 'max_uV_step' not described in 'regulation_constraints' include/linux/regulator/driver.h:228: warning: Function parameter or member 'resume' not described in 'regulator_ops' drivers/slimbus/stream.c:1: warning: no structured comments found include/linux/spi/spi.h:188: warning: Function parameter or member 'driver_override' not described in 'spi_device' drivers/target/target_core_device.c:1: warning: no structured comments found drivers/usb/typec/bus.c:1: warning: no structured comments found drivers/usb/typec/class.c:1: warning: no structured comments found include/linux/w1.h:281: warning: Function parameter or member 'of_match_table' not described in 'w1_family' fs/direct-io.c:257: warning: Excess function parameter 'offset' description in 'dio_complete' fs/file_table.c:1: warning: no structured comments found fs/libfs.c:477: warning: Excess function parameter 'available' description in 'simple_write_end' fs/posix_acl.c:646: warning: Function parameter or member 'inode' not described in 'posix_acl_update_mode' fs/posix_acl.c:646: warning: Function parameter or member 'mode_p' not described in 'posix_acl_update_mode' fs/posix_acl.c:646: warning: Function parameter or member 'acl' not described in 'posix_acl_update_mode' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:294: warning: Excess function parameter 'mm' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:294: warning: Excess function parameter 'start' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:294: warning: Excess function parameter 'end' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:343: warning: Excess function parameter 'mm' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:343: warning: Excess function parameter 'start' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:343: warning: Excess function parameter 'end' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:183: warning: Function parameter or member 'blockable' not described in 'amdgpu_mn_read_lock' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:295: warning: Function parameter or member 'range' not described in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:295: warning: Excess function parameter 'mm' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:295: warning: Excess function parameter 'start' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:295: warning: Excess function parameter 'end' description in 'amdgpu_mn_invalidate_range_start_hsa' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:344: warning: Function parameter or member 'range' not described in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:344: warning: Excess function parameter 'mm' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:344: warning: Excess function parameter 'start' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:344: warning: Excess function parameter 'end' description in 'amdgpu_mn_invalidate_range_end' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:374: warning: cannot understand function prototype: 'struct amdgpu_vm_pt_cursor ' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:375: warning: cannot understand function prototype: 'struct amdgpu_vm_pt_cursor ' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:547: warning: Function parameter or member 'adev' not described in 'for_each_amdgpu_vm_pt_leaf' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:547: warning: Function parameter or member 'vm' not described in 'for_each_amdgpu_vm_pt_leaf' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:547: warning: Function parameter or member 'start' not described in 'for_each_amdgpu_vm_pt_leaf' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:547: warning: Function parameter or member 'end' not described in 'for_each_amdgpu_vm_pt_leaf' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:547: warning: Function parameter or member 'cursor' not described in 'for_each_amdgpu_vm_pt_leaf' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:595: warning: Function parameter or member 'adev' not described in 'for_each_amdgpu_vm_pt_dfs_safe' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:595: warning: Function parameter or member 'vm' not described in 'for_each_amdgpu_vm_pt_dfs_safe' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:595: warning: Function parameter or member 'cursor' not described in 'for_each_amdgpu_vm_pt_dfs_safe' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:595: warning: Function parameter or member 'entry' not described in 'for_each_amdgpu_vm_pt_dfs_safe' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:868: warning: Function parameter or member 'level' not described in 'amdgpu_vm_bo_param' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1348: warning: Function parameter or member 'params' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1348: warning: Function parameter or member 'bo' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1348: warning: Function parameter or member 'pe' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1348: warning: Function parameter or member 'addr' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1348: warning: Function parameter or member 'count' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1348: warning: Function parameter or member 'incr' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1348: warning: Function parameter or member 'flags' not described in 'amdgpu_vm_update_func' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1516: warning: Function parameter or member 'params' not described in 'amdgpu_vm_update_flags' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1516: warning: Function parameter or member 'bo' not described in 'amdgpu_vm_update_flags' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1516: warning: Function parameter or member 'level' not described in 'amdgpu_vm_update_flags' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1516: warning: Function parameter or member 'pe' not described in 'amdgpu_vm_update_flags' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1516: warning: Function parameter or member 'addr' not described in 'amdgpu_vm_update_flags' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1516: warning: Function parameter or member 'count' not described in 'amdgpu_vm_update_flags' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1516: warning: Function parameter or member 'incr' not described in 'amdgpu_vm_update_flags' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:1516: warning: Function parameter or member 'flags' not described in 'amdgpu_vm_update_flags' drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:3107: warning: Function parameter or member 'pasid' not described in 'amdgpu_vm_make_compute' drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c:375: warning: Excess function parameter 'entry' description in 'amdgpu_irq_dispatch' drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c:376: warning: Function parameter or member 'ih' not described in 'amdgpu_irq_dispatch' drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c:376: warning: Excess function parameter 'entry' description in 'amdgpu_irq_dispatch' drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c:1: warning: no structured comments found drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h:128: warning: Incorrect use of kernel-doc format: Documentation Makefile include scripts source @atomic_obj drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h:203: warning: Function parameter or member 'atomic_obj' not described in 'amdgpu_display_manager' drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h:203: warning: Function parameter or member 'atomic_obj_lock' not described in 'amdgpu_display_manager' drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h:203: warning: Function parameter or member 'backlight_link' not described in 'amdgpu_display_manager' drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h:203: warning: Function parameter or member 'backlight_caps' not described in 'amdgpu_display_manager' drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h:203: warning: Function parameter or member 'freesync_module' not described in 'amdgpu_display_manager' drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h:203: warning: Function parameter or member 'fw_dmcu' not described in 'amdgpu_display_manager' drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h:203: warning: Function parameter or member 'dmcu_fw_version' not described in 'amdgpu_display_manager' drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c:1: warning: no structured comments found include/drm/drm_drv.h:715: warning: Function parameter or member 'gem_prime_pin' not described in 'drm_driver' include/drm/drm_drv.h:715: warning: Function parameter or member 'gem_prime_unpin' not described in 'drm_driver' include/drm/drm_drv.h:715: warning: Function parameter or member 'gem_prime_res_obj' not described in 'drm_driver' include/drm/drm_drv.h:715: warning: Function parameter or member 'gem_prime_get_sg_table' not described in 'drm_driver' include/drm/drm_drv.h:715: warning: Function parameter or member 'gem_prime_import_sg_table' not described in 'drm_driver' include/drm/drm_drv.h:715: warning: Function parameter or member 'gem_prime_vmap' not described in 'drm_driver' include/drm/drm_drv.h:715: warning: Function parameter or member 'gem_prime_vunmap' not described in 'drm_driver' include/drm/drm_drv.h:715: warning: Function parameter or member 'gem_prime_mmap' not described in 'drm_driver' include/drm/drm_atomic_state_helper.h:1: warning: no structured comments found drivers/gpu/drm/scheduler/sched_main.c:376: warning: Excess function parameter 'bad' description in 'drm_sched_stop' drivers/gpu/drm/scheduler/sched_main.c:377: warning: Excess function parameter 'bad' description in 'drm_sched_stop' drivers/gpu/drm/scheduler/sched_main.c:420: warning: Function parameter or member 'full_recovery' not described in 'drm_sched_start' drivers/gpu/drm/i915/i915_vma.h:50: warning: cannot understand function prototype: 'struct i915_vma ' drivers/gpu/drm/i915/i915_vma.h:1: warning: no structured comments found drivers/gpu/drm/i915/intel_guc_fwif.h:536: warning: cannot understand function prototype: 'struct guc_log_buffer_state ' drivers/gpu/drm/i915/i915_trace.h:1: warning: no structured comments found drivers/gpu/drm/arm/display/komeda/komeda_pipeline.h:126: warning: Function parameter or member 'hw_id' not described in 'komeda_component' drivers/gpu/drm/arm/display/komeda/komeda_pipeline.h:126: warning: Function parameter or member 'max_active_outputs' not described in 'komeda_component' drivers/gpu/drm/arm/display/komeda/komeda_pipeline.h:126: warning: Function parameter or member 'supported_outputs' not described in 'komeda_component' vim +679 lib/bitmap.c 599c8c59b Yury Norov 2019-03-28 648 5aaba3631 Sudeep Holla 2014-09-30 649 /** 4b060420a Mike Travis 2011-05-24 650 * __bitmap_parselist - convert list format ASCII string to bitmap b0825ee3a Randy Dunlap 2011-06-15 651 * @buf: read nul-terminated user string from this buffer 4b060420a Mike Travis 2011-05-24 652 * @buflen: buffer size in bytes. If string is smaller than this 4b060420a Mike Travis 2011-05-24 653 * then it must be terminated with a \0. 4b060420a Mike Travis 2011-05-24 654 * @is_user: location of buffer, 0 indicates kernel space 6e1907ffd Randy Dunlap 2006-06-25 655 * @maskp: write resulting mask here ^1da177e4 Linus Torvalds 2005-04-16 656 * @nmaskbits: number of bits in mask to be written ^1da177e4 Linus Torvalds 2005-04-16 657 * ^1da177e4 Linus Torvalds 2005-04-16 658 * Input format is a comma-separated list of decimal numbers and ^1da177e4 Linus Torvalds 2005-04-16 659 * ranges. Consecutively set bits are shown as two hyphen-separated ^1da177e4 Linus Torvalds 2005-04-16 660 * decimal numbers, the smallest and largest bit numbers set in ^1da177e4 Linus Torvalds 2005-04-16 661 * the range. 2d13e6ca4 Noam Camus 2016-10-11 662 * Optionally each range can be postfixed to denote that only parts of it 2d13e6ca4 Noam Camus 2016-10-11 663 * should be set. The range will divided to groups of specific size. 2d13e6ca4 Noam Camus 2016-10-11 664 * From each group will be used only defined amount of bits. 2d13e6ca4 Noam Camus 2016-10-11 665 * Syntax: range:used_size/group_size 2d13e6ca4 Noam Camus 2016-10-11 666 * Example: 0-1023:2/256 ==> 0,1,256,257,512,513,768,769 ^1da177e4 Linus Torvalds 2005-04-16 667 * 40bf19a8d Mauro Carvalho Chehab 2017-03-30 668 * Returns: 0 on success, -errno on invalid input strings. Error values: 40bf19a8d Mauro Carvalho Chehab 2017-03-30 669 * 599c8c59b Yury Norov 2019-03-28 670 * - ``-EINVAL``: wrong region format 40bf19a8d Mauro Carvalho Chehab 2017-03-30 671 * - ``-EINVAL``: invalid character in string 40bf19a8d Mauro Carvalho Chehab 2017-03-30 672 * - ``-ERANGE``: bit number specified too large for mask 599c8c59b Yury Norov 2019-03-28 673 * - ``-EOVERFLOW``: integer overflow in the input parameters ^1da177e4 Linus Torvalds 2005-04-16 674 */ 599c8c59b Yury Norov 2019-03-28 675 static int __bitmap_parselist(const char *buf, const char *const end, 4b060420a Mike Travis 2011-05-24 676 int is_user, unsigned long *maskp, 4b060420a Mike Travis 2011-05-24 677 int nmaskbits) ^1da177e4 Linus Torvalds 2005-04-16 @678 { 0925706de Yury Norov 2019-03-28 @679 struct region r; 599c8c59b Yury Norov 2019-03-28 680 long ret; ^1da177e4 Linus Torvalds 2005-04-16 681 ^1da177e4 Linus Torvalds 2005-04-16 682 bitmap_zero(maskp, nmaskbits); 4b060420a Mike Travis 2011-05-24 683 599c8c59b Yury Norov 2019-03-28 684 while (buf && buf <= end) { 599c8c59b Yury Norov 2019-03-28 685 buf = bitmap_find_region(buf, end, is_user); 599c8c59b Yury Norov 2019-03-28 686 if (buf == NULL) 599c8c59b Yury Norov 2019-03-28 687 return 0; 0925706de Yury Norov 2019-03-28 688 599c8c59b Yury Norov 2019-03-28 689 buf = bitmap_parse_region(&r, buf, end, is_user); 599c8c59b Yury Norov 2019-03-28 690 if (IS_ERR(buf)) 599c8c59b Yury Norov 2019-03-28 691 return PTR_ERR(buf); 0925706de Yury Norov 2019-03-28 692 0925706de Yury Norov 2019-03-28 693 ret = bitmap_check_region(&r); 0925706de Yury Norov 2019-03-28 694 if (ret) 0925706de Yury Norov 2019-03-28 695 return ret; 0925706de Yury Norov 2019-03-28 696 0925706de Yury Norov 2019-03-28 697 ret = bitmap_set_region(&r, maskp, nmaskbits); 0925706de Yury Norov 2019-03-28 698 if (ret) 0925706de Yury Norov 2019-03-28 699 return ret; 599c8c59b Yury Norov 2019-03-28 700 } 0925706de Yury Norov 2019-03-28 701 ^1da177e4 Linus Torvalds 2005-04-16 702 return 0; ^1da177e4 Linus Torvalds 2005-04-16 703 } 4b060420a Mike Travis 2011-05-24 704 :::::: The code at line 679 was first introduced by commit :::::: 0925706defc41e9232652eb406df5770a38a8666 lib: bitmap_parselist: move non-parser logic to helpers :::::: TO: Yury Norov :::::: CC: Johannes Weiner --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation --gKMricLos+KVdGMg Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 --gKMricLos+KVdGMg--