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 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 456C4C48BC3 for ; Tue, 20 Feb 2024 06:08:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=DRVKmNXQtuttePU/d6O8DS+1ywrf2lndXa2QIQd5Roc=; b=OfLNH8DKG+gutP lBmz+jlqn9QuzuTeyeQkEbsGCG6x8LhWW6zFmnqyeM+W3KSX6nl4DVM1Dg3NtVYPWCBHDBiEc5Eue r7J8/VM2lv1IywO6P/nZ0OoVH4ThBhSq/7wuwWgJI5h3Spw/YJ3QqGZlXWoX2XGrInljVzmfUTNKb OsMT2G+SHfXnxueZ/ltjC3zhglY199zPEyhW+j+6Bl5wB2LdVzQ2SK498Et85aLhsedA8G6DMNmek QhVYMMZrbzJVx5bwdHMj1D59g5N2sThKHK1j3Z9525iKpVeAEr3HRhy8eR11/lWKvNd55XlTTgRsS q5zIpE/ff8PHY+G/8Yfw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rcJJ6-0000000DIC6-2UpS; Tue, 20 Feb 2024 06:08:44 +0000 Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rcJIg-0000000DHov-2xS4 for linux-riscv@lists.infradead.org; Tue, 20 Feb 2024 06:08:25 +0000 Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-1dc0e5b223eso7332195ad.1 for ; Mon, 19 Feb 2024 22:08:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; t=1708409296; x=1709014096; darn=lists.infradead.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=104PBPP87dGRJ1dWRj3TJVt38h0tClUYGYzJ0Qy5+KM=; b=j54iTf9UFyzn8rSUefx5TkMHa/4Tf+/BxCRz3OkqmEkOxRCxsaSYW2IPTz0zpNrtWd qUKvBPTQs777mQUEVfMqzbY2360oAEhXTMpPVvTdWefX2Dk7LQKKIJcpw+M5Q9QtZ1DB nzwDNAsKxKPNqiTNIYjhmluhVSRA/KIQMryHAIOQQEwZhd+hH6fGuY13fUitmK1Jvbt7 KInJxKemmFnbil4/+yi1EXdNqZTJ/69JxtNX0xge1dGHOEdin5pYPVZ6/uZdV6GEJJ4R 6k0spS1prH46M8T6eVWhxR06eSQ1mKpuDFBGeacG0JkYbwnli0vcNlX8EB4gUqikU6aY y7WQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1708409296; x=1709014096; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=104PBPP87dGRJ1dWRj3TJVt38h0tClUYGYzJ0Qy5+KM=; b=GDD3VFs6SBi4pnb4gsnHkYDtxsgkzABRWcUG26qwPXIllWAK04VtcRqgP6YuVoff2p aIv1NyARctk2vAg9KkFUXbiZAyBsXtlq/jaSBkMzClsq5zDLl4A54pqZmKm3A2DxrWAq j91STI0VpNLdWRJYIhTA28sUTw2RQjNKxmebG6g+n5XcrtV2Ur2M/E6YOJ/bDosCaMUv +UJeZqYl1P2ZiaDmMpkqkZV5LgLOiYflEY+kBVL7RxEUmYPSns15x9JZsN/u1qcsnfPx tTIdz3M71DEFbkiulwMUto3IoHNHU2gO716mZJNNJUveUZePgCmL/B3+Xw5AnJIsIJmF MfYw== X-Forwarded-Encrypted: i=1; AJvYcCX/bGgMtY7PV83OIj92p+7PL6R7mZEl4oi+yneSuJbHvn3IM0amtvfE0mW/Hnl6N/DUyjvjPMzq+YdxFCWSc8fgNMXgpuRt0cNYG2/2AKnM X-Gm-Message-State: AOJu0YzybZxLyEiRCC2BKvjRWY46wRStpZI863zeL/xqjwXxfeVwWUI0 vpy5sUGbb6eqgrjMuzfqOlQk3z6FQv5zXWeA2s/B+NSZHj0aExUtqblqoj/6Q/4= X-Google-Smtp-Source: AGHT+IFY/JcHrI+xAG094ZcXNaFl0GQyv1RbkAVoM5o1aUQFAbhKoPaBFMazisxA1YDdZaveAQB90g== X-Received: by 2002:a17:902:cf0e:b0:1db:a164:3e50 with SMTP id i14-20020a170902cf0e00b001dba1643e50mr13726229plg.40.1708409296360; Mon, 19 Feb 2024 22:08:16 -0800 (PST) Received: from anup-ubuntu-vm.localdomain ([171.76.80.86]) by smtp.gmail.com with ESMTPSA id j6-20020a17090276c600b001db4c89aea5sm5368114plt.158.2024.02.19.22.08.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Feb 2024 22:08:15 -0800 (PST) From: Anup Patel To: Palmer Dabbelt , Paul Walmsley , Thomas Gleixner , Rob Herring , Krzysztof Kozlowski , Frank Rowand , Conor Dooley Subject: [PATCH v13 05/13] genirq/matrix: Dynamic bitmap allocation Date: Tue, 20 Feb 2024 11:37:10 +0530 Message-Id: <20240220060718.823229-6-apatel@ventanamicro.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240220060718.823229-1-apatel@ventanamicro.com> References: <20240220060718.823229-1-apatel@ventanamicro.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240219_220819_229855_C9ABB421 X-CRM114-Status: GOOD ( 13.95 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Anup Patel , devicetree@vger.kernel.org, Saravana Kannan , Marc Zyngier , Anup Patel , linux-kernel@vger.kernel.org, =?UTF-8?q?Bj=C3=B6rn=20T=C3=B6pel?= , =?UTF-8?q?Bj=C3=B6rn=20T=C3=B6pel?= , Atish Patra , linux-riscv@lists.infradead.org, linux-arm-kernel@lists.infradead.org, Andrew Jones Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org RnJvbTogQmrDtnJuIFTDtnBlbCA8Ympvcm5Acml2b3NpbmMuY29tPgoKU29tZSAoZnV0dXJlKSB1 c2VycyBvZiB0aGUgaXJxIG1hdHJpeCBhbGxvY2F0b3IsIGRvIG5vdCBrbm93IHRoZSBzaXplCm9m IHRoZSBtYXRyaXggYml0bWFwcyBhdCBjb21waWxlIHRpbWUuCgpUbyBhdm9pZCB3YXN0aW5nIG1l bW9yeSBvbiB1bm5lY2Vzc2FyeSBsYXJnZSBiaXRtYXBzLCBzaXplIHRoZSBiaXRtYXAKYXQgbWF0 cml4IGFsbG9jYXRpb24gdGltZS4KClNpZ25lZC1vZmYtYnk6IEJqw7ZybiBUw7ZwZWwgPGJqb3Ju QHJpdm9zaW5jLmNvbT4KU2lnbmVkLW9mZi1ieTogQW51cCBQYXRlbCA8YXBhdGVsQHZlbnRhbmFt aWNyby5jb20+Ci0tLQogYXJjaC94ODYvaW5jbHVkZS9hc20vaHdfaXJxLmggfCAgMiAtLQoga2Vy bmVsL2lycS9tYXRyaXguYyAgICAgICAgICAgfCAyOCArKysrKysrKysrKysrKysrKy0tLS0tLS0t LS0tCiAyIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL2h3X2lycS5oIGIvYXJjaC94ODYvaW5j bHVkZS9hc20vaHdfaXJxLmgKaW5kZXggYjAyYzNjZDNjMGY2Li5lZGViZjEwMjBlMDQgMTAwNjQ0 Ci0tLSBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL2h3X2lycS5oCisrKyBiL2FyY2gveDg2L2luY2x1 ZGUvYXNtL2h3X2lycS5oCkBAIC0xNiw4ICsxNiw2IEBACiAKICNpbmNsdWRlIDxhc20vaXJxX3Zl Y3RvcnMuaD4KIAotI2RlZmluZSBJUlFfTUFUUklYX0JJVFMJCU5SX1ZFQ1RPUlMKLQogI2lmbmRl ZiBfX0FTU0VNQkxZX18KIAogI2luY2x1ZGUgPGxpbnV4L3BlcmNwdS5oPgpkaWZmIC0tZ2l0IGEv a2VybmVsL2lycS9tYXRyaXguYyBiL2tlcm5lbC9pcnEvbWF0cml4LmMKaW5kZXggNzVkMGFlNDkw ZTI5Li44ZjIyMmQxY2NjZWMgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9pcnEvbWF0cml4LmMKKysrIGIv a2VybmVsL2lycS9tYXRyaXguYwpAQCAtOCw4ICs4LDYgQEAKICNpbmNsdWRlIDxsaW51eC9jcHUu aD4KICNpbmNsdWRlIDxsaW51eC9pcnEuaD4KIAotI2RlZmluZSBJUlFfTUFUUklYX1NJWkUJKEJJ VFNfVE9fTE9OR1MoSVJRX01BVFJJWF9CSVRTKSkKLQogc3RydWN0IGNwdW1hcCB7CiAJdW5zaWdu ZWQgaW50CQlhdmFpbGFibGU7CiAJdW5zaWduZWQgaW50CQlhbGxvY2F0ZWQ7CkBAIC0xNyw4ICsx NSw4IEBAIHN0cnVjdCBjcHVtYXAgewogCXVuc2lnbmVkIGludAkJbWFuYWdlZF9hbGxvY2F0ZWQ7 CiAJYm9vbAkJCWluaXRpYWxpemVkOwogCWJvb2wJCQlvbmxpbmU7Ci0JdW5zaWduZWQgbG9uZwkJ YWxsb2NfbWFwW0lSUV9NQVRSSVhfU0laRV07Ci0JdW5zaWduZWQgbG9uZwkJbWFuYWdlZF9tYXBb SVJRX01BVFJJWF9TSVpFXTsKKwl1bnNpZ25lZCBsb25nCQkqbWFuYWdlZF9tYXA7CisJdW5zaWdu ZWQgbG9uZwkJYWxsb2NfbWFwW107CiB9OwogCiBzdHJ1Y3QgaXJxX21hdHJpeCB7CkBAIC0zMiw4 ICszMCw4IEBAIHN0cnVjdCBpcnFfbWF0cml4IHsKIAl1bnNpZ25lZCBpbnQJCXRvdGFsX2FsbG9j YXRlZDsKIAl1bnNpZ25lZCBpbnQJCW9ubGluZV9tYXBzOwogCXN0cnVjdCBjcHVtYXAgX19wZXJj cHUJKm1hcHM7Ci0JdW5zaWduZWQgbG9uZwkJc2NyYXRjaF9tYXBbSVJRX01BVFJJWF9TSVpFXTsK LQl1bnNpZ25lZCBsb25nCQlzeXN0ZW1fbWFwW0lSUV9NQVRSSVhfU0laRV07CisJdW5zaWduZWQg bG9uZwkJKnN5c3RlbV9tYXA7CisJdW5zaWduZWQgbG9uZwkJc2NyYXRjaF9tYXBbXTsKIH07CiAK ICNkZWZpbmUgQ1JFQVRFX1RSQUNFX1BPSU5UUwpAQCAtNTAsMjQgKzQ4LDMyIEBAIF9faW5pdCBz dHJ1Y3QgaXJxX21hdHJpeCAqaXJxX2FsbG9jX21hdHJpeCh1bnNpZ25lZCBpbnQgbWF0cml4X2Jp dHMsCiAJCQkJCSAgIHVuc2lnbmVkIGludCBhbGxvY19zdGFydCwKIAkJCQkJICAgdW5zaWduZWQg aW50IGFsbG9jX2VuZCkKIHsKKwl1bnNpZ25lZCBpbnQgY3B1LCBtYXRyaXhfc2l6ZSA9IEJJVFNf VE9fTE9OR1MobWF0cml4X2JpdHMpOwogCXN0cnVjdCBpcnFfbWF0cml4ICptOwogCi0JaWYgKG1h dHJpeF9iaXRzID4gSVJRX01BVFJJWF9CSVRTKQotCQlyZXR1cm4gTlVMTDsKLQotCW0gPSBremFs bG9jKHNpemVvZigqbSksIEdGUF9LRVJORUwpOworCW0gPSBremFsbG9jKHN0cnVjdF9zaXplKG0s IHNjcmF0Y2hfbWFwLCBtYXRyaXhfc2l6ZSAqIDIpLCBHRlBfS0VSTkVMKTsKIAlpZiAoIW0pCiAJ CXJldHVybiBOVUxMOwogCisJbS0+c3lzdGVtX21hcCA9ICZtLT5zY3JhdGNoX21hcFttYXRyaXhf c2l6ZV07CisKIAltLT5tYXRyaXhfYml0cyA9IG1hdHJpeF9iaXRzOwogCW0tPmFsbG9jX3N0YXJ0 ID0gYWxsb2Nfc3RhcnQ7CiAJbS0+YWxsb2NfZW5kID0gYWxsb2NfZW5kOwogCW0tPmFsbG9jX3Np emUgPSBhbGxvY19lbmQgLSBhbGxvY19zdGFydDsKLQltLT5tYXBzID0gYWxsb2NfcGVyY3B1KCpt LT5tYXBzKTsKKwltLT5tYXBzID0gX19hbGxvY19wZXJjcHUoc3RydWN0X3NpemUobS0+bWFwcywg YWxsb2NfbWFwLCBtYXRyaXhfc2l6ZSAqIDIpLAorCQkJCSBfX2FsaWdub2ZfXygqbS0+bWFwcykp OwogCWlmICghbS0+bWFwcykgewogCQlrZnJlZShtKTsKIAkJcmV0dXJuIE5VTEw7CiAJfQorCisJ Zm9yX2VhY2hfcG9zc2libGVfY3B1KGNwdSkgeworCQlzdHJ1Y3QgY3B1bWFwICpjbSA9IHBlcl9j cHVfcHRyKG0tPm1hcHMsIGNwdSk7CisKKwkJY20tPm1hbmFnZWRfbWFwID0gJmNtLT5hbGxvY19t YXBbbWF0cml4X3NpemVdOworCX0KKwogCXJldHVybiBtOwogfQogCi0tIAoyLjM0LjEKCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1yaXNjdiBt YWlsaW5nIGxpc3QKbGludXgtcmlzY3ZAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMu aW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXJpc2N2Cg== 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 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id BB72BC48BC4 for ; Tue, 20 Feb 2024 06:09:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=N+DK40egpEQgjuj3UyZaeFXSXgxOVWiuMWESPJA6+Vs=; b=JUTdvDeu1i3oS2 J+4BFv3LqgqppPe/IZJX9o4AnC1PJQPtvAtkj9kQSMWk0Xgs1Mjj3m6EFCZ0SrYLjhgLAJnXQ3s3y zwxQCH/zEVnOzrGJm8z5GbALyJtK0uPGwLakccBHIE66lB4eGvbUGjTwX43Iml9RTBtu0ttXe9SIs BbiqLjfGl/8XKrxhXT/UvDGFMR/ViaSnX213bor3pEisDUol1tDgTHdZrycurVsAWdq6IXznMCgZ8 NsAbbxNIxD+0kWtvUeRZ6pjaVjld9/7Lt2i7cT71z/5BTacRhei3qcjxwN5EZhzi8pEvYC1qRwTu5 ejz63tJtRm/OzKWT6RHw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rcJJR-0000000DIS1-3YaF; Tue, 20 Feb 2024 06:09:05 +0000 Received: from mail-pl1-x636.google.com ([2607:f8b0:4864:20::636]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rcJIg-0000000DHox-2xF3 for linux-arm-kernel@lists.infradead.org; Tue, 20 Feb 2024 06:08:25 +0000 Received: by mail-pl1-x636.google.com with SMTP id d9443c01a7336-1d746856d85so30283385ad.0 for ; Mon, 19 Feb 2024 22:08:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; t=1708409296; x=1709014096; darn=lists.infradead.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=104PBPP87dGRJ1dWRj3TJVt38h0tClUYGYzJ0Qy5+KM=; b=j54iTf9UFyzn8rSUefx5TkMHa/4Tf+/BxCRz3OkqmEkOxRCxsaSYW2IPTz0zpNrtWd qUKvBPTQs777mQUEVfMqzbY2360oAEhXTMpPVvTdWefX2Dk7LQKKIJcpw+M5Q9QtZ1DB nzwDNAsKxKPNqiTNIYjhmluhVSRA/KIQMryHAIOQQEwZhd+hH6fGuY13fUitmK1Jvbt7 KInJxKemmFnbil4/+yi1EXdNqZTJ/69JxtNX0xge1dGHOEdin5pYPVZ6/uZdV6GEJJ4R 6k0spS1prH46M8T6eVWhxR06eSQ1mKpuDFBGeacG0JkYbwnli0vcNlX8EB4gUqikU6aY y7WQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1708409296; x=1709014096; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=104PBPP87dGRJ1dWRj3TJVt38h0tClUYGYzJ0Qy5+KM=; b=krwDdlrOXKzaNjt0RVjMAHkqqEYrayLUJAJrhsQj/lBvW5uVCFWqOcpQtDgVTR/n6L S6A5oY13fruqGiM+3e34cinpE2UJuDJx5oKXm6ExlEu8kHq4D5r74RZVXJg34Sk67erd FAk+romDYZSAyid0OiU7wHPCg2j3kI0YDPPKr6jf9BcMCAYSfRJnUKA9u8uV6rd8xXOX 8Z9Tza0HKZZkUqaZ+YcMv2UAAtSlBVrbx1Jg6URhFqUes+O14+lcwKcBXdOzIOPbXNMJ Fr22tCLbh4vLM+JNdph+EFcTpxhUoC1GXXXbuAkXr4fVRDuU2bqATLHRlWT5UTdOn+xk Uysg== X-Forwarded-Encrypted: i=1; AJvYcCUGx6363WI/KSempkOXTrxVgSGgjn70KQf9yLkddAfc9zOHc6oPt1Q9I1qcPrFJ/FO1N5jZmcsdk67XS3hbxI9uCU7LvQ9HFDIi5nP73lCPhS7LznM= X-Gm-Message-State: AOJu0YyPyHexnPm9tm8lkpSxvVOlcTcCxZHWNVynjK+uVFR9kDKIg0UP 7YXeV42cgQecTAP+nIjADZvWqMCctpcxuzCag003/5Og4Gh8e3JOE5KcOIg4kao= X-Google-Smtp-Source: AGHT+IFY/JcHrI+xAG094ZcXNaFl0GQyv1RbkAVoM5o1aUQFAbhKoPaBFMazisxA1YDdZaveAQB90g== X-Received: by 2002:a17:902:cf0e:b0:1db:a164:3e50 with SMTP id i14-20020a170902cf0e00b001dba1643e50mr13726229plg.40.1708409296360; Mon, 19 Feb 2024 22:08:16 -0800 (PST) Received: from anup-ubuntu-vm.localdomain ([171.76.80.86]) by smtp.gmail.com with ESMTPSA id j6-20020a17090276c600b001db4c89aea5sm5368114plt.158.2024.02.19.22.08.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Feb 2024 22:08:15 -0800 (PST) From: Anup Patel To: Palmer Dabbelt , Paul Walmsley , Thomas Gleixner , Rob Herring , Krzysztof Kozlowski , Frank Rowand , Conor Dooley Cc: Marc Zyngier , =?UTF-8?q?Bj=C3=B6rn=20T=C3=B6pel?= , Atish Patra , Andrew Jones , Sunil V L , Saravana Kannan , Anup Patel , linux-riscv@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, =?UTF-8?q?Bj=C3=B6rn=20T=C3=B6pel?= , Anup Patel Subject: [PATCH v13 05/13] genirq/matrix: Dynamic bitmap allocation Date: Tue, 20 Feb 2024 11:37:10 +0530 Message-Id: <20240220060718.823229-6-apatel@ventanamicro.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240220060718.823229-1-apatel@ventanamicro.com> References: <20240220060718.823229-1-apatel@ventanamicro.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240219_220819_427559_49844400 X-CRM114-Status: GOOD ( 15.38 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org RnJvbTogQmrDtnJuIFTDtnBlbCA8Ympvcm5Acml2b3NpbmMuY29tPgoKU29tZSAoZnV0dXJlKSB1 c2VycyBvZiB0aGUgaXJxIG1hdHJpeCBhbGxvY2F0b3IsIGRvIG5vdCBrbm93IHRoZSBzaXplCm9m IHRoZSBtYXRyaXggYml0bWFwcyBhdCBjb21waWxlIHRpbWUuCgpUbyBhdm9pZCB3YXN0aW5nIG1l bW9yeSBvbiB1bm5lY2Vzc2FyeSBsYXJnZSBiaXRtYXBzLCBzaXplIHRoZSBiaXRtYXAKYXQgbWF0 cml4IGFsbG9jYXRpb24gdGltZS4KClNpZ25lZC1vZmYtYnk6IEJqw7ZybiBUw7ZwZWwgPGJqb3Ju QHJpdm9zaW5jLmNvbT4KU2lnbmVkLW9mZi1ieTogQW51cCBQYXRlbCA8YXBhdGVsQHZlbnRhbmFt aWNyby5jb20+Ci0tLQogYXJjaC94ODYvaW5jbHVkZS9hc20vaHdfaXJxLmggfCAgMiAtLQoga2Vy bmVsL2lycS9tYXRyaXguYyAgICAgICAgICAgfCAyOCArKysrKysrKysrKysrKysrKy0tLS0tLS0t LS0tCiAyIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL2h3X2lycS5oIGIvYXJjaC94ODYvaW5j bHVkZS9hc20vaHdfaXJxLmgKaW5kZXggYjAyYzNjZDNjMGY2Li5lZGViZjEwMjBlMDQgMTAwNjQ0 Ci0tLSBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL2h3X2lycS5oCisrKyBiL2FyY2gveDg2L2luY2x1 ZGUvYXNtL2h3X2lycS5oCkBAIC0xNiw4ICsxNiw2IEBACiAKICNpbmNsdWRlIDxhc20vaXJxX3Zl Y3RvcnMuaD4KIAotI2RlZmluZSBJUlFfTUFUUklYX0JJVFMJCU5SX1ZFQ1RPUlMKLQogI2lmbmRl ZiBfX0FTU0VNQkxZX18KIAogI2luY2x1ZGUgPGxpbnV4L3BlcmNwdS5oPgpkaWZmIC0tZ2l0IGEv a2VybmVsL2lycS9tYXRyaXguYyBiL2tlcm5lbC9pcnEvbWF0cml4LmMKaW5kZXggNzVkMGFlNDkw ZTI5Li44ZjIyMmQxY2NjZWMgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9pcnEvbWF0cml4LmMKKysrIGIv a2VybmVsL2lycS9tYXRyaXguYwpAQCAtOCw4ICs4LDYgQEAKICNpbmNsdWRlIDxsaW51eC9jcHUu aD4KICNpbmNsdWRlIDxsaW51eC9pcnEuaD4KIAotI2RlZmluZSBJUlFfTUFUUklYX1NJWkUJKEJJ VFNfVE9fTE9OR1MoSVJRX01BVFJJWF9CSVRTKSkKLQogc3RydWN0IGNwdW1hcCB7CiAJdW5zaWdu ZWQgaW50CQlhdmFpbGFibGU7CiAJdW5zaWduZWQgaW50CQlhbGxvY2F0ZWQ7CkBAIC0xNyw4ICsx NSw4IEBAIHN0cnVjdCBjcHVtYXAgewogCXVuc2lnbmVkIGludAkJbWFuYWdlZF9hbGxvY2F0ZWQ7 CiAJYm9vbAkJCWluaXRpYWxpemVkOwogCWJvb2wJCQlvbmxpbmU7Ci0JdW5zaWduZWQgbG9uZwkJ YWxsb2NfbWFwW0lSUV9NQVRSSVhfU0laRV07Ci0JdW5zaWduZWQgbG9uZwkJbWFuYWdlZF9tYXBb SVJRX01BVFJJWF9TSVpFXTsKKwl1bnNpZ25lZCBsb25nCQkqbWFuYWdlZF9tYXA7CisJdW5zaWdu ZWQgbG9uZwkJYWxsb2NfbWFwW107CiB9OwogCiBzdHJ1Y3QgaXJxX21hdHJpeCB7CkBAIC0zMiw4 ICszMCw4IEBAIHN0cnVjdCBpcnFfbWF0cml4IHsKIAl1bnNpZ25lZCBpbnQJCXRvdGFsX2FsbG9j YXRlZDsKIAl1bnNpZ25lZCBpbnQJCW9ubGluZV9tYXBzOwogCXN0cnVjdCBjcHVtYXAgX19wZXJj cHUJKm1hcHM7Ci0JdW5zaWduZWQgbG9uZwkJc2NyYXRjaF9tYXBbSVJRX01BVFJJWF9TSVpFXTsK LQl1bnNpZ25lZCBsb25nCQlzeXN0ZW1fbWFwW0lSUV9NQVRSSVhfU0laRV07CisJdW5zaWduZWQg bG9uZwkJKnN5c3RlbV9tYXA7CisJdW5zaWduZWQgbG9uZwkJc2NyYXRjaF9tYXBbXTsKIH07CiAK ICNkZWZpbmUgQ1JFQVRFX1RSQUNFX1BPSU5UUwpAQCAtNTAsMjQgKzQ4LDMyIEBAIF9faW5pdCBz dHJ1Y3QgaXJxX21hdHJpeCAqaXJxX2FsbG9jX21hdHJpeCh1bnNpZ25lZCBpbnQgbWF0cml4X2Jp dHMsCiAJCQkJCSAgIHVuc2lnbmVkIGludCBhbGxvY19zdGFydCwKIAkJCQkJICAgdW5zaWduZWQg aW50IGFsbG9jX2VuZCkKIHsKKwl1bnNpZ25lZCBpbnQgY3B1LCBtYXRyaXhfc2l6ZSA9IEJJVFNf VE9fTE9OR1MobWF0cml4X2JpdHMpOwogCXN0cnVjdCBpcnFfbWF0cml4ICptOwogCi0JaWYgKG1h dHJpeF9iaXRzID4gSVJRX01BVFJJWF9CSVRTKQotCQlyZXR1cm4gTlVMTDsKLQotCW0gPSBremFs bG9jKHNpemVvZigqbSksIEdGUF9LRVJORUwpOworCW0gPSBremFsbG9jKHN0cnVjdF9zaXplKG0s IHNjcmF0Y2hfbWFwLCBtYXRyaXhfc2l6ZSAqIDIpLCBHRlBfS0VSTkVMKTsKIAlpZiAoIW0pCiAJ CXJldHVybiBOVUxMOwogCisJbS0+c3lzdGVtX21hcCA9ICZtLT5zY3JhdGNoX21hcFttYXRyaXhf c2l6ZV07CisKIAltLT5tYXRyaXhfYml0cyA9IG1hdHJpeF9iaXRzOwogCW0tPmFsbG9jX3N0YXJ0 ID0gYWxsb2Nfc3RhcnQ7CiAJbS0+YWxsb2NfZW5kID0gYWxsb2NfZW5kOwogCW0tPmFsbG9jX3Np emUgPSBhbGxvY19lbmQgLSBhbGxvY19zdGFydDsKLQltLT5tYXBzID0gYWxsb2NfcGVyY3B1KCpt LT5tYXBzKTsKKwltLT5tYXBzID0gX19hbGxvY19wZXJjcHUoc3RydWN0X3NpemUobS0+bWFwcywg YWxsb2NfbWFwLCBtYXRyaXhfc2l6ZSAqIDIpLAorCQkJCSBfX2FsaWdub2ZfXygqbS0+bWFwcykp OwogCWlmICghbS0+bWFwcykgewogCQlrZnJlZShtKTsKIAkJcmV0dXJuIE5VTEw7CiAJfQorCisJ Zm9yX2VhY2hfcG9zc2libGVfY3B1KGNwdSkgeworCQlzdHJ1Y3QgY3B1bWFwICpjbSA9IHBlcl9j cHVfcHRyKG0tPm1hcHMsIGNwdSk7CisKKwkJY20tPm1hbmFnZWRfbWFwID0gJmNtLT5hbGxvY19t YXBbbWF0cml4X3NpemVdOworCX0KKwogCXJldHVybiBtOwogfQogCi0tIAoyLjM0LjEKCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2Vy bmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0 cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVs Cg== From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3249559176 for ; Tue, 20 Feb 2024 06:08:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.182 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708409298; cv=none; b=hN0tbtNVBBHhKWpNAsrfONQRzZzgxBtFc3/DAUxYYy/o1Wm8WJBqYLfX1u1n1hf1q5j9HG7hPkiXqxpAQzrEab2xpqn702QsC7ai3Pq41CjY4OzH8CanT2o647J3tNK6lEVHCCEHmZKvPM/jo4nRUioTXVPYLYaMVXDV+oAIjCE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708409298; c=relaxed/simple; bh=v7MGRVtZtPXfGkmyqYWN6Y63LLsHhhJ5iWWU9xTfhDY=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=kjpByJhQYbZMEKlcsMnj2NVZZioKfL8TcxEMhLuNEbNEUk7uOJmMrcSnT+absKq4C83nOlyBKM6raifCosujSTlJGfaZXK9hgBowNV4bZ5LRZB/wvkkGVXqdk60YT9vqXK1Exca/Z2mQDnXZ2JnLyXAY6LRynZAmfxGO5KIl7CA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com; spf=pass smtp.mailfrom=ventanamicro.com; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b=aPqJCBdc; arc=none smtp.client-ip=209.85.214.182 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b="aPqJCBdc" Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-1d94323d547so35420785ad.3 for ; Mon, 19 Feb 2024 22:08:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; t=1708409296; x=1709014096; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=104PBPP87dGRJ1dWRj3TJVt38h0tClUYGYzJ0Qy5+KM=; b=aPqJCBdcguj+QRV4/8xux4H71k2JcnCkg5WcnCVabn4aemZ/VLzcnb+Ows6/pAMOm9 MEFIXo/d5dOURfIn8uLgIL4dzq9AszhBy9MF0BfE8r24BZ+xaAkPZtyrP2XcMl3ducAs Q8JSiDBFf1uakZgJTUltK7JdFn23Wli7Ch66deirIqZWtNVUosiigJl9jayH0knyLDUt r/yzfJmlV7Sy7COHIl/erle9ILw7q0lb5BZ4JB5qGErxHyqII1RZqox3Y0vUSxpjIvQ0 BGeZhymC8whTvqcdYG+0jiGII/c5FoMk1zVSkkjWkqcsXSi6zihkvpuPCD3zVFG9P0Pc BThg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1708409296; x=1709014096; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=104PBPP87dGRJ1dWRj3TJVt38h0tClUYGYzJ0Qy5+KM=; b=wEQNQ5YE/acSVMtMTM/0J2tHsFlC/wha+kSHAl8UEA7/Ny/S4kY5pJJaZE2Mh3MUQd /8T27NtSGgzhzVEqWIwFuYDnb8YtvS4hX4GY3gJhthPwmv4+zguuLV/FfNpr3UdJV0au 1Nxph7oVNkfyhnE8gyu2ixgw0tvKqhIhk4kU+Qtgr7rXLfVYGXXZyTRwJHI4gqWYHq5V citbTRf1Dt0KD5YE9smZGkSA5qM2VcpSLissSU8B7VPh96jpiv25Q6dMV+HzXOk6PgT/ JpT9XlAdh7G1qc8iRjNWa7hxVXdLf7zFpOAw5i5Omw5fg/K0UfF8wB7CPlB0cNPesTyy 8IGA== X-Forwarded-Encrypted: i=1; AJvYcCV8Fu0TFBdT9ULR9rt/FEI2BzqF2jKWZup1NyvmWXWGmBl8VjIFUSwWwgpx4gcMub473L8JAizSPG+4YHKrbolElN/5hNMGM38yHg== X-Gm-Message-State: AOJu0YwDXCOnqu/sCSa0lDF9WCuotUQjHZWT+ahcyG0x8oWr2qYG053y wXKn7eqIXFO6J5/oJr5/C2iwiCZ2BLgz1pz1Q0bLgyLD56k+njfLpU8/JHg5im4= X-Google-Smtp-Source: AGHT+IFY/JcHrI+xAG094ZcXNaFl0GQyv1RbkAVoM5o1aUQFAbhKoPaBFMazisxA1YDdZaveAQB90g== X-Received: by 2002:a17:902:cf0e:b0:1db:a164:3e50 with SMTP id i14-20020a170902cf0e00b001dba1643e50mr13726229plg.40.1708409296360; Mon, 19 Feb 2024 22:08:16 -0800 (PST) Received: from anup-ubuntu-vm.localdomain ([171.76.80.86]) by smtp.gmail.com with ESMTPSA id j6-20020a17090276c600b001db4c89aea5sm5368114plt.158.2024.02.19.22.08.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Feb 2024 22:08:15 -0800 (PST) From: Anup Patel To: Palmer Dabbelt , Paul Walmsley , Thomas Gleixner , Rob Herring , Krzysztof Kozlowski , Frank Rowand , Conor Dooley Cc: Marc Zyngier , =?UTF-8?q?Bj=C3=B6rn=20T=C3=B6pel?= , Atish Patra , Andrew Jones , Sunil V L , Saravana Kannan , Anup Patel , linux-riscv@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, =?UTF-8?q?Bj=C3=B6rn=20T=C3=B6pel?= , Anup Patel Subject: [PATCH v13 05/13] genirq/matrix: Dynamic bitmap allocation Date: Tue, 20 Feb 2024 11:37:10 +0530 Message-Id: <20240220060718.823229-6-apatel@ventanamicro.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240220060718.823229-1-apatel@ventanamicro.com> References: <20240220060718.823229-1-apatel@ventanamicro.com> Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit From: Björn Töpel Some (future) users of the irq matrix allocator, do not know the size of the matrix bitmaps at compile time. To avoid wasting memory on unnecessary large bitmaps, size the bitmap at matrix allocation time. Signed-off-by: Björn Töpel Signed-off-by: Anup Patel --- arch/x86/include/asm/hw_irq.h | 2 -- kernel/irq/matrix.c | 28 +++++++++++++++++----------- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/arch/x86/include/asm/hw_irq.h b/arch/x86/include/asm/hw_irq.h index b02c3cd3c0f6..edebf1020e04 100644 --- a/arch/x86/include/asm/hw_irq.h +++ b/arch/x86/include/asm/hw_irq.h @@ -16,8 +16,6 @@ #include -#define IRQ_MATRIX_BITS NR_VECTORS - #ifndef __ASSEMBLY__ #include diff --git a/kernel/irq/matrix.c b/kernel/irq/matrix.c index 75d0ae490e29..8f222d1cccec 100644 --- a/kernel/irq/matrix.c +++ b/kernel/irq/matrix.c @@ -8,8 +8,6 @@ #include #include -#define IRQ_MATRIX_SIZE (BITS_TO_LONGS(IRQ_MATRIX_BITS)) - struct cpumap { unsigned int available; unsigned int allocated; @@ -17,8 +15,8 @@ struct cpumap { unsigned int managed_allocated; bool initialized; bool online; - unsigned long alloc_map[IRQ_MATRIX_SIZE]; - unsigned long managed_map[IRQ_MATRIX_SIZE]; + unsigned long *managed_map; + unsigned long alloc_map[]; }; struct irq_matrix { @@ -32,8 +30,8 @@ struct irq_matrix { unsigned int total_allocated; unsigned int online_maps; struct cpumap __percpu *maps; - unsigned long scratch_map[IRQ_MATRIX_SIZE]; - unsigned long system_map[IRQ_MATRIX_SIZE]; + unsigned long *system_map; + unsigned long scratch_map[]; }; #define CREATE_TRACE_POINTS @@ -50,24 +48,32 @@ __init struct irq_matrix *irq_alloc_matrix(unsigned int matrix_bits, unsigned int alloc_start, unsigned int alloc_end) { + unsigned int cpu, matrix_size = BITS_TO_LONGS(matrix_bits); struct irq_matrix *m; - if (matrix_bits > IRQ_MATRIX_BITS) - return NULL; - - m = kzalloc(sizeof(*m), GFP_KERNEL); + m = kzalloc(struct_size(m, scratch_map, matrix_size * 2), GFP_KERNEL); if (!m) return NULL; + m->system_map = &m->scratch_map[matrix_size]; + m->matrix_bits = matrix_bits; m->alloc_start = alloc_start; m->alloc_end = alloc_end; m->alloc_size = alloc_end - alloc_start; - m->maps = alloc_percpu(*m->maps); + m->maps = __alloc_percpu(struct_size(m->maps, alloc_map, matrix_size * 2), + __alignof__(*m->maps)); if (!m->maps) { kfree(m); return NULL; } + + for_each_possible_cpu(cpu) { + struct cpumap *cm = per_cpu_ptr(m->maps, cpu); + + cm->managed_map = &cm->alloc_map[matrix_size]; + } + return m; } -- 2.34.1