From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (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 2E01D226D02 for ; Sat, 21 Mar 2026 09:24:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.41 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774085059; cv=none; b=qmtXdbuj/suPG3OZhk5QSDpvX0LD8g2Lz4aBfZ9XCryW0NfUIhJpmhb0+9wkJWatZNf4XomLurNhiJ5uzU4CUrubbe5YmK54YxASthjRhLgv9LBLBV2Bipbpr65o7jyn5UA3B7VosHHQ3U9wlryozUEPA/we1Bbiqy1gt1Cjp28= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774085059; c=relaxed/simple; bh=U3aJCimxyal9WncwjUa7otBiwDk4hsVeIrL5eEW4tVU=; h=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=dhzE3v3e9qDRAc2Ph+rNVRgaL+AH6kuYXQKRIMZNTy+lHleVixpFJyFMLPJ5ePfS5UP15LSeT0i3Mm07ZCpCSbEIPfZ19AfthtYjKUyRx5dGOp3dsai4hw4IiqT+fN7cCSD9+w1kc0AI84cMy1G6Mon7znudJMHMmOOAb4AHaXM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=W/TkUiUF; arc=none smtp.client-ip=209.85.128.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="W/TkUiUF" Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-486fe655187so18767745e9.2 for ; Sat, 21 Mar 2026 02:24:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1774085056; x=1774689856; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=Hj6a13EYucDZ+CMGYDSkcJt6QV/xbeGsZkPLM9UtYKQ=; b=W/TkUiUF88SxZYm1e0jjPd0TjXfYH2dPZdgd+sB59hjKB8j3ps7q4euRRqtj4T5pKg OdD6Ij1b9Nldab71v1Wvy2m3iEztARO/zQ2rqXUjl+kA/oYoX0mkMbm2wJr0oJNkqkBo 6EK2biTHviDIKo7p+IKTFWbHRgJ9mUswqcr5W2aeWAomPDrVV5mWfQVdNlJQdi1o2iD8 Wkk0jatsQL2ingB3omhF6j5v+sfXMD2QUu0tGCZ5Rj8zKZsqHrCIEbwqv3/uHHWN/WbS 0qkAi+Y2W28SnQOQe5vxzHV9YN3K2PTjLCXDpXzD14ypViADeg9HHDygLWjvkOUGn8Mq xnFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774085056; x=1774689856; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Hj6a13EYucDZ+CMGYDSkcJt6QV/xbeGsZkPLM9UtYKQ=; b=fQJBI2PD3hLTC6tzV2GuKt7N9YfORQ4MSbrMdlFRvIbYpXpfIueH0qADn1ffhLosnu /BujnBLIiU9s1zBLLvVmgCdCgr85X21qp/R0L7uf/UXjjn1KP95zw+pUw8N01RZ68v4j bsAkusXz4fsQ5x+XvN+TdkSwUHWJin9ZvlOqf4qpzfcA2Xzrx2EST+njRjZSsutmyFBn adHMqsC/sCbXLmtawbPLj3HZO+iGp0ALBv7zU3ZnYuPKXTboRe057rYDHLiczYKkbI0I 8D1ZE4HFkgh8E2pdPKogxh2OPiH44vCpp2U3BH0cXpVj0z3E4K7XqYahplze6FBACloC j6SA== X-Forwarded-Encrypted: i=1; AJvYcCXaV7XrI3Ig9q7fbat51gMOccJQus0XbMvIsuFKtfmjrBY6g+Jb7d7jEHuI6l/8Q2bd63F/DeYYdQeyiYU=@vger.kernel.org X-Gm-Message-State: AOJu0Yx1X80S1f2/4CwQ0qF4ZS9EG3cr1DU2UvxmJiIo5YoJk2kRuHWi wNvhEinRY/X7MKSGO2UfuiZuxCG3Qx9wDoRl7OOoCw9YGngKUgWZ4Fis2UVQ3WbJ X-Gm-Gg: ATEYQzy60MTCAXwzV3Ox1FTzAOKMZpv16e6UWMOynGlPewwUzV46ftHNT7xfJ8ccbgz XVT70XGf8r4CRQRT5MVHnC/y6uBOtaw6MtTkqJWim4KMhMCg58mT7Ar2DbxMXq3/XDdQotAx1NL L4NTnOkFzLDKT5V15zjSTYcylKTARp9i/qPLQ8F45Thc9InbjVJpwHi/GgCsBzH0bVssP1wZ0B4 rlLdjNKAqYQjl5nCZBOlpMOqEaNIBGj9q/h/2kEaSqw8hAbcRZaYPMPyd7ZJstF19OjpeUFgU9J /png+X6guR9zZCF83nlhRLltWC1vDOLyLye8NU78+q0VVBryfOpcD9XokuckOPY2/LEdSFpdw5w TH0dbXgW5t4JS3+JUNSqNa3lju8CPY/dW4/RMRueYLbLguU8bzZCwS7H4jtH8N+mLxeOuEvjvDQ 0YmwYD6I9EMTSl72QcNJwtCo5AoWj262Zrlp9dqCItGmcL3Ji7kbFmecZFMf2pJjNitiP5Avx34 Eo= X-Received: by 2002:a05:600c:8207:b0:485:3ff1:d5c3 with SMTP id 5b1f17b1804b1-486febb449bmr76203835e9.5.1774085056253; Sat, 21 Mar 2026 02:24:16 -0700 (PDT) Received: from pumpkin (82-69-66-36.dsl.in-addr.zen.co.uk. [82.69.66.36]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-486fc61dd4asm160164665e9.14.2026.03.21.02.24.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 21 Mar 2026 02:24:15 -0700 (PDT) Date: Sat, 21 Mar 2026 09:24:14 +0000 From: David Laight To: kernel test robot Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org, Andrew Morton , Linux Memory Management List , Nicolas Pitre Subject: Re: div64.c:(.text.mul_u64_add_u64_div_u64+0x40): undefined reference to `__multi3' Message-ID: <20260321092414.542ad642@pumpkin> In-Reply-To: <202603211216.YTKRdi1b-lkp@intel.com> References: <202603211216.YTKRdi1b-lkp@intel.com> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; arm-unknown-linux-gnueabihf) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit On Sat, 21 Mar 2026 12:48:23 +0800 kernel test robot wrote: > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master > head: 42bddab0563fe67882b2722620a66dd98c8dbf33 > commit: 6480241f31f543333ed0c7a209962412461f6e41 lib: add mul_u64_add_u64_div_u64() and mul_u64_u64_div_u64_roundup() > date: 4 months ago > config: mips-randconfig-r122-20260321 (https://download.01.org/0day-ci/archive/20260321/202603211216.YTKRdi1b-lkp@intel.com/config) > compiler: mips64-linux-gcc (GCC) 8.5.0 > sparse: v0.6.5-rc1 > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260321/202603211216.YTKRdi1b-lkp@intel.com/reproduce) > > If you fix the issue in a separate patch/commit (i.e. not just a new version of > the same patch/commit), kindly add following tags > | Reported-by: kernel test robot > | Closes: https://lore.kernel.org/oe-kbuild-all/202603211216.YTKRdi1b-lkp@intel.com/ > > All errors (new ones prefixed by >>): > > mips64-linux-ld: lib/math/div64.o: in function `mul_u64_add_u64_div_u64': > >> div64.c:(.text.mul_u64_add_u64_div_u64+0x40): undefined reference to `__multi3' > I thought someone was going to change the #if so that __multi3 was defined for compilers after (IIRC) 7.1 until at (also IIRC) 10.5. But for __mips why worry that much - the function is quite small. Just enable it unconditionally. While this code only wants the 128bit product of two 64bit integers (which is a single instruction) the full 128x128 product looks faster than the fallback code that uses 32bit multiples. More interesting is sparc64 - where __multi3 can also get called. That function looks horrid - I presume it is carefully optimised! Without any comment it is hard to see what it is doing. (Not helped by me only knowing sparc32 from 1988.) David