Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp3047017ybt; Mon, 29 Jun 2020 13:52:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyxV4izMC6UOFM08UZSlDtsGxRolyDq58aiZ4xeioOXv31VAZnbbeLRsRViFuGXvXD07o4c X-Received: by 2002:a17:906:8381:: with SMTP id p1mr15234721ejx.280.1593463927108; Mon, 29 Jun 2020 13:52:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593463927; cv=none; d=google.com; s=arc-20160816; b=s3Pc/L/fQGQ9WUBRv9VN50tnwiRiIcPZrjWKeNI4ldVYv6/9QS6db1A1Qu7h65lbg3 JlBEvQHdt8fmjMTqE+EcH2YlsozJESao3w7TgnqUMjc3e11ZIoW0Bw2bcNux2+bSJmmW y5HNhWyHVJ+XW6laRmCkDAo94KNsCAEfOZ1XBo1aNJZJaSlM67pyvEsH8gJ63uNH8txq NTNCr3+5/drnt0SimpKjcC6y4WzTSTEPHjlurqGFRJDKOKJgIL/TgHCHNdwxjsg3brgE H0rM0ZDKYutLn2kwZljb/9fONx+K36Yyddh5F2YVyuhq2/u1TKUPTuXmvLEZEf8FIlBc LOtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=0FbmkW7UOcYY7LkyFQeYD+n43SXMQXYjstj7AfGPBFY=; b=loWOeYLMe5tg2rqYDdl0m2w+bKtMtJE7aQmrs3NF5ckHE9i4ckz1rvlf97XBWRpptx 0IngSLvvW+ZI4Wc69wil5Z733Bn/1VD7XVqQfC2fc5kM16VSCdWfMqiyAJlDnCfVogcC aPmep+h+gPWakRLg3vJAZ+YlFCXj2+kCZLt3JcvCVvMbJNLEyhl8stTvoRf1dLlEyu5u +CgkSpNMncMWNpujGtxZSF67LTk31HUxdDLUlF4Prm0k8lJiuc0NvQJCs5kdyt1Yq7HX eqFxtBscHWa961YPQvIamMrANbWGOEtzKpGqRXFMko2bXmEJxTtTFr8kD+uQnFdhr+Ep 1EWw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20150623.gappssmtp.com header.s=20150623 header.b=MFHsR5ID; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n23si444677ejx.656.2020.06.29.13.51.44; Mon, 29 Jun 2020 13:52:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20150623.gappssmtp.com header.s=20150623 header.b=MFHsR5ID; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730558AbgF2TNf (ORCPT + 99 others); Mon, 29 Jun 2020 15:13:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43350 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731358AbgF2TN2 (ORCPT ); Mon, 29 Jun 2020 15:13:28 -0400 Received: from mail-wr1-x444.google.com (mail-wr1-x444.google.com [IPv6:2a00:1450:4864:20::444]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4AA5AC08EC44 for ; Sun, 28 Jun 2020 23:50:15 -0700 (PDT) Received: by mail-wr1-x444.google.com with SMTP id z13so15335749wrw.5 for ; Sun, 28 Jun 2020 23:50:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=0FbmkW7UOcYY7LkyFQeYD+n43SXMQXYjstj7AfGPBFY=; b=MFHsR5IDjPY0E1cBnmOdDmaaexsDnuGaeCom8ugM6D2bx/csHHWIKc48ZfoIzQ1WnQ wH2T1DsKev7yAD8X37BfHZeGwcp165BuatzBqWpk9PKAHPFguntRaNcNM+9ylDmq1Njl NVuN0ckQWhi9I84VLdztbSBWb2IQ1+HBDHXb622lxqQpwfrwmNWd9Mkyxhm4TdXQF1a6 Qu7nv7GnKuaQtAdamC+YNXe2VGuqkZAdM7PXqkyxRPuNL0QCsk4OeEyOd44jJct2xsgz /DRypuk9B9Sua+ocxb2STpKn4HHeSpfcsjEMcVSUlGI2ghJFdvn2DzB6bgnCgXysJtma CCag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=0FbmkW7UOcYY7LkyFQeYD+n43SXMQXYjstj7AfGPBFY=; b=T/XOTaHssCwlmPTSPzm0byM1SVC0ob87lFWMCOmq4MOR7YqvM7dGhnosb79d2V+Mc7 sDH9NnLdKceyQBDsCH1/Hyl3/ITB+Ib4tVETwAJhEUcbX9Bwv8oIh7xQBTDkx+k26I12 DBVr0nE06QUy1Kr0yEL6/h7GfwxZQbYiTvD//rhShEIJ5Xl4OQjkmAlJIn6P3K0A9j/x ucl9gmrIVDWg6LBaEtRkM8tajBvX4qj8xqxNk9WOSxZmiZYjkG2NUh0X19NdaLtvJIPi ijJKPSYKS5NuSa9ifHLp79ampobjOGX8+NZS5bjZY184zUnIYNrV7sctTMAX92JySQbA rxUA== X-Gm-Message-State: AOAM5303toebn2Vw6jNz9WOBHIFFhdB0T4nhiG32PibsDszGJso4gOS/ +qMHIrCXs3Mu2FKmFcHjwUfuxsoYrag= X-Received: by 2002:a5d:4ec7:: with SMTP id s7mr15362311wrv.400.1593413413900; Sun, 28 Jun 2020 23:50:13 -0700 (PDT) Received: from localhost.localdomain (lfbn-nic-1-65-232.w2-15.abo.wanadoo.fr. [2.15.156.232]) by smtp.gmail.com with ESMTPSA id z25sm26400850wmk.28.2020.06.28.23.50.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 28 Jun 2020 23:50:13 -0700 (PDT) From: Bartosz Golaszewski To: Jonathan Corbet , Greg Kroah-Hartman , "Rafael J . Wysocki" , Guenter Roeck , Jean Delvare Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-hwmon@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v2 0/6] devres: provide and use devm_krealloc() Date: Mon, 29 Jun 2020 08:50:02 +0200 Message-Id: <20200629065008.27620-1-brgl@bgdev.pl> X-Mailer: git-send-email 2.26.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Bartosz Golaszewski Regular krealloc() obviously can't work with managed memory. This series implements devm_krealloc() and adds the first user with hope that this helper will be adopted by other drivers currently using non-managed krealloc(). Some additional changes to the code modified by main patches are included. v1 -> v2: - remove leftover call to hwmon_device_unregister() from pmbus_core.c - add a patch extending devm_kmalloc() to handle zero size case - use WARN_ON() instead of WARN_ONCE() in devm_krealloc() when passed a pointer to non-managed memory - correctly handle the case when devm_krealloc() is passed a pointer to memory in .rodata (potentially returned by devm_kstrdup_const()) - correctly handle ZERO_SIZE_PTR passed as the ptr argument in devm_krealloc() Bartosz Golaszewski (6): devres: remove stray space from devm_kmalloc() definition devres: move the size check from alloc_dr() into a separate function device: remove 'extern' attribute from function prototypes in device.h devres: handle zero size in devm_kmalloc() devres: provide devm_krealloc() hwmon: pmbus: use more devres helpers .../driver-api/driver-model/devres.rst | 1 + drivers/base/devres.c | 75 +++++- drivers/hwmon/pmbus/pmbus_core.c | 28 +-- include/linux/device.h | 225 +++++++++--------- 4 files changed, 187 insertions(+), 142 deletions(-) -- 2.26.1