Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp2947309imm; Thu, 24 May 2018 19:40:07 -0700 (PDT) X-Google-Smtp-Source: AB8JxZoR+ABOi4tKWxud5WK8N6YrSZjMC1vMGOPnHabniO1okjPxKTl6tEv5Lap6WR7L1+JF04wC X-Received: by 2002:a62:3f4e:: with SMTP id m75-v6mr587335pfa.176.1527216007166; Thu, 24 May 2018 19:40:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527216007; cv=none; d=google.com; s=arc-20160816; b=gQG6lhHbDiNmfymzLZh3/2BR1UZevKeHa9mfgfrpWPfvrhi0H7Puvhd8R++HqVtUPa kO35Vj52DOA3JPgQUl+R7HTb15H3vsO2v/kgLtVKb+a8P+9NlfEEsO1tihP63cuLIkdc R67NL0zYHwWbUWR+YFpG1M5HrupDf9tzwmhR82ju7Jmiqy5U0GBLU1iDqGvpxgWSW9mz BqBWRtiqSAgYEvwbFUKgrYrXu0hsJGCIWrVeyg4epJm96s/4kWaF6Dkfkalk5trV/Uim qFLLMbnUeZXryXxhDANU8r3lqnFAaekvM5n08CAy4baTKZ5B1AESRDel4W1nPTrAWqG6 arbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature :arc-authentication-results; bh=VyOud2mGbuo/F0boD1YSKM/FxDEQd4u4EPdPUlKBQzU=; b=dm2TYAHSYUtiJPE2CcBMkD1R1hUtwkY+riqGChCJWxksPVV0f1cph/ZiJch+SV325K nRxnbe/u/AvN6jA3xu3WDH6DwklNWYh7ptjUjVP4KA3zPB5AbkVyWR4rYky6sMDJbXqQ T+yv2UQKQoaCor2ILjq2y7ut1JWBBuHZUWEtPElNP/LDdK6mvr5zF286YD3a6MP7V/Ow sKLhGNZpCM0N0HkMcurxwtOfwCs786bdJh9seU5tB2k5ag0S9DOKjhWMeQbxqo2sQMuL bGIQbaN1AFKTQz8YBZPI5/gmWLFZSuzazluGZg62IZ23D21EAGrp2Igw5jqVyDwO4Yy8 odOg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linux-foundation.org header.s=google header.b=OYqVFSkv; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a185-v6si17560131pgc.586.2018.05.24.19.39.52; Thu, 24 May 2018 19:40:07 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linux-foundation.org header.s=google header.b=OYqVFSkv; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S968647AbeEXTSE (ORCPT + 99 others); Thu, 24 May 2018 15:18:04 -0400 Received: from mail-it0-f50.google.com ([209.85.214.50]:51998 "EHLO mail-it0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S967476AbeEXTSA (ORCPT ); Thu, 24 May 2018 15:18:00 -0400 Received: by mail-it0-f50.google.com with SMTP id d10-v6so3827855itj.1; Thu, 24 May 2018 12:18:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=VyOud2mGbuo/F0boD1YSKM/FxDEQd4u4EPdPUlKBQzU=; b=OYqVFSkvuHCuD3NPANxrmJfEPr2NDaQ0Vmv71su6d2k8Pa+dbbATiPY35DolD8OO8x ISRpZ7y1Y5Os8sJ9QVlwL+EZOg6P9J8VUjJNWeWh3USk7iBLl40WZSF4cvQJ0ZHfnEAn s/9buAVtCczw4eUkAwWIcqcN6RvYC11haaeog= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=VyOud2mGbuo/F0boD1YSKM/FxDEQd4u4EPdPUlKBQzU=; b=CQOPyb3+K12cKHpVORfrcb8gUWaaOUbfeqRjLSb5HBlLidSRFKTDkTdQxwYwq9M5Iz jeQvwXyJQYXZ14D1aFNrtxqMgjszUsdJrvcH6XfjFlwHwdG6GbkCNSwXB+UrYzek/0cK QS4PCeL+XpmeYlUXRGiEOM7LNd8m/gosmVJBwruswMoVHC46vqmb4iplqYqNGVSTynVv muqXHFLDh7VSLIOA8QscyYLFJySOWfROcM3XqCoWpMKAmAKh2NVOC0sfVwt14MfbO2fm q/p5i0EHH9pwCKvfCo7TVC7HF1BmR6Ct0bW5b2Mzugugt5jAUlYXsDdwlul8n3RU79co i1cw== X-Gm-Message-State: ALKqPwf6zNDPR3K+WgOc4aOL9VTXtT8uzIXUXj1kiwHrenreRu4P2FI0 2ywkL0BL/d7VvWFp2U2ybJvsgPpeVIhXgAwgumM= X-Received: by 2002:a24:c408:: with SMTP id v8-v6mr10575151itf.100.1527189479963; Thu, 24 May 2018 12:17:59 -0700 (PDT) MIME-Version: 1.0 References: <20180523172500.anfvmjtumww65ief@linux-n805> <20180524170700.wblnybinjzx5rwky@linux-n805> <20180524185155.3bx4ujgz5f5g3epi@linux-n805> In-Reply-To: <20180524185155.3bx4ujgz5f5g3epi@linux-n805> From: Linus Torvalds Date: Thu, 24 May 2018 12:17:48 -0700 Message-ID: Subject: Re: semantics of rhashtable and sysvipc To: Davidlohr Bueso Cc: Thomas Graf , Herbert Xu , Andrew Morton , Manfred Spraul , guillaume.knispel@supersonicimagine.com, Linux API , Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, May 24, 2018 at 12:08 PM Davidlohr Bueso wrote: > However, after how about the resize being based on HASH_MIN_SIZE instead of > HASH_DEFAULT_SIZE? I think that sounds reasonable. We wouldn't expect this to ever happen in practice, and as you say, if it *does* happen, the size of the hash array is the last of our problems. > Considering that some users set p.min_size to be rather large-ish (up to 1024 > buckets afaict), we'd need the following: > size = min(ht->p.min_size, HASH_MIN_SIZE); Bah, let's just go for simplicity, and just make it HASH_MIN_SIZE unconditionally, and just have a single fallback: if the first "normal" allocation fails, do one single unconditional allocation with HASH_MIN_SIZE and GFP_NOFAIL. I think that should work fine. Linus