From nobody Thu Mar 23 10:03:36 2023 X-Original-To: freebsd-hackers@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pj1Bf12zBz4185j for ; Thu, 23 Mar 2023 10:03:38 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pj1Bf0Tqbz41XD for ; Thu, 23 Mar 2023 10:03:38 +0000 (UTC) (envelope-from theraven@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679565818; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=4TpZ2baSjKTJcQchmfuzXzk1bBgZI1veWzqkERgDZns=; b=auKPqwzn+X/vIFS+E9eFhf8FZSA5L7cdmpOpo+G8mgvMuiJ+1HUgXBoptVeL3OlGhkmJtk uJPP+hZukJNCO/5e9CyT8uQfkrY7gguv7fICW0iZe+6fg9DTKCG+kDNNnbnh5fSPSjeonD 4modk6vU7xmIGusM1/i8ko4hP9t9Xhf5zmLm22u97IVC9Xscm2mgpFJ4I1l/+EMxRV0uMf SfeIeabQp7awKKWtZwTFY6d7uNKcE3vahvIApfrFV7CmnuhAANbXMdBB0H9SpV3AZ6cx91 OxoSHOX5rjxwrAZdDNSd+qPzN8YoAXLP+ADr2nkZNmMC08sV0U5bpr5EBcIfAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679565818; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=4TpZ2baSjKTJcQchmfuzXzk1bBgZI1veWzqkERgDZns=; b=shdT6TT/iQ+QkxljuaYsZ18eLNWDMc42idgneV5zd+NrZDVlj/mwK84+y8DfxsdnTWSzEJ XJ2GJUAtfGVjHjp5M+pirWb1fDrKfljZcMYvsXJkhzCcPoNLyvGdmXrGrCbW6V3o+R5Bwy 6JuMRZ8yquqtGb6UZc6JItnF5HAd6COSBJxcLHWnoCq3C4vgUaNcP53ZfEqhdgSUEXGAsy yNdDpBWThViG94Jcbe9Mp6qWR2nz/B5Z4hx2kdu8uMqLTV2quXaapBwYLvn2/QSiwbnfrz LIF5kF65gtadv4QA41fpkSRTpbeF3n3Y3ZB9OcZ2dIndSIUPcLeg08XUCdfiYQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679565818; a=rsa-sha256; cv=none; b=pKy+w60wdm0vFR6aZRuAW+uZpGj0mOpYM39aV8Q4PTyERLwmB/Mc/evMNX3Lqf3NP6hc+1 a+X5RhuNOBQnzkIBOUEp2Qj1WUTzveWXw/CXQzkIDUxdA59SNPssg6dBQFxEUt7O3qwG6O CmhRuzCMflg9uDr3eW6BLoUedOGq3NBzAMw8f5NVvOLKcdE4ZupoNyLb1Au+5YPZEQVaqP 6h6bwJIos4gFVHATY6x23RsJ2ILk/oNSDLFkcucwhVtMXbpQP05hl+k9YTnjZYAWRhEAQS weuwuP8mHTJKBZs32CTocUtVe1meevk8wQvDRiEGZk/mVN4MMkeZGvxsfZQRpQ== Received: from smtp.theravensnest.org (smtp.theravensnest.org [45.77.103.195]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: theraven) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Pj1Bd6WhCzVlN for ; Thu, 23 Mar 2023 10:03:37 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from [192.168.1.202] (host86-160-181-152.range86-160.btcentralplus.com [86.160.181.152]) by smtp.theravensnest.org (Postfix) with ESMTPSA id 036E610571 for ; Thu, 23 Mar 2023 10:03:36 +0000 (GMT) Message-ID: Date: Thu, 23 Mar 2023 10:03:36 +0000 List-Id: Technical discussions relating to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-hackers List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-hackers@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 Subject: Re: Periodic rant about SCHED_ULE Content-Language: en-GB To: freebsd-hackers@freebsd.org References: <202303221710.32MHAhe9047582@gndrsh.dnsmgr.net> <27f46bc2-54f8-f5aa-79ca-184e86d185d8@m5p.com> From: David Chisnall In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ThisMailContainsUnwantedMimeParts: N On 22/03/2023 18:03, George Mitchell wrote: > Rebuilding the kernel is the only way I know.  In an ideal world, the > scheduler would be a loadable kernel module (if that's even possible), Solaris supports multiple schedulers, as I believe does Linux, but I think in both cases it's a boot-time option. It's been too long since I looked at the early boot order to know if there's anything that handles linking the loader-provided modules that depends on any scheduler data structures. Doing that audit and ensuring that there aren't would be the first step. From there, it should be mostly build-system infrastructure to allow building the two schedulers as modules and switching between them at boot. Allowing switching schedulers after boot time is a much harder problem. I know some microkernels have done it, but even there (where the scheduler is a separate service) it's far from easy. David