From patchwork Fri Jul 25 17:14:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Giacomo Cappellini X-Patchwork-Id: 23968 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id DA83EBDCC1 for ; Fri, 25 Jul 2025 17:16:19 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id ECDE369101; Fri, 25 Jul 2025 19:16:18 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="Y5+VlxL2"; dkim-atps=neutral Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com [IPv6:2a00:1450:4864:20::329]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 22E3D690A6 for ; Fri, 25 Jul 2025 19:16:17 +0200 (CEST) Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-451d6ade159so17646275e9.1 for ; Fri, 25 Jul 2025 10:16:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1753463776; x=1754068576; darn=lists.libcamera.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=4YFORMOwsc2Yps/oGONFugfUEOt+J0WOctZ4NX8vzc4=; b=Y5+VlxL2SfBPAdS9nuEokVDxCu1oWFG6ws2TnCdMtaqIkbOLlTsQC0AwEcWmar80QS xu82xcvRA7PW2pdEXzO33aKCEbRB6sB7UyzdR1809IY94Bm/nEt+1zOkR3aq1wjRW6Fh eUCPjjlJqaOg83AtEuUTQ4MFTS0737TkUa9CecgUyWt6+fMn9YNS3jZBZEW0VuYjo8yg 8Mlpg9F5UxUd4WEYGmVXgz8kcTtvOw7UYbT2h9ZLZyGHbhfMXDhEyUwpnTmhUjp66Hof 1JbErJW5TB4K5flYjAodVMQU2YNCwruYCNX+N1dApmzlLuXx06pC/O/tzU7liBm9bDfb iC6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1753463776; x=1754068576; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=4YFORMOwsc2Yps/oGONFugfUEOt+J0WOctZ4NX8vzc4=; b=QLvpxtbKLJgEtVGCuuEaM7H7a+R2ALKc0YPnU651zj3MReaeuAWJcUQkfhgAei+mBc DRDcPDc1tSxN/+WssPGogKysAwa1vhU2aU+ZETRamCzgLkMzEmKM/unbT0ZvcLHc9oMM vTTSm79o4NQ+pdhBIIhA7B7NZCMEYflvc8tYde4CaTYXEDKUbFC4YruRxjvgy/rFKG+i Ip/Gth+DygN8jkIaRJp6WGiHtLO5k0qF++irng7lSkEyjshi0uoGV5CdQqbkOJdWMBc+ 33NRTikPwm+Ekma18pdthY0WfMZwCXXPYvi0B63BSgko77pkzXfOLAeQ0+ldHJ6ZTwMb xOqg== X-Gm-Message-State: AOJu0YwyUnwk9WCJVWWr9S3x85Utak8+fEG0SHyZoMrl+vfk96+xxrKn Y2xIs9DEpTMI14POEtxJ1AnclpiY/6/wELYMPQaRNbQvrktK4oZ+jc0EHmWTKFB5 X-Gm-Gg: ASbGncsR7xqNdNKiLV2nEk0UTCd6xCa4UN2lcXlpFBjnPdwSD1pKKa3yDSlV9WQUQAI p+IyZpVrYAY4uMwfia8TFLX4vvcHYbnOJHmZYfrDboQK8mA51gNSZTfN65gNaFWVKvXtq3JBMxX Ox5v5WHR0JNMDE8KMj7RfzKirONXu5P2ZIU6Z8EvAdRcX9WAClqDRmRwOQz02zEDP25KFUhPx7y KE3n02FMIh6Fshng2JlXnEuvFWJ19jBdPiWMalCsbHvLeFERFt450dSmkAT3hQ2HzBSKQdOAeEG i/l3KSTlSXXx74nNaO2UUDzP7wNFcKWBPL4YDZOxsk/5x+tQIITN/qlBXTDwcZNOCWQad6CIluH 7ToOUdmCQOn6xwKo/Idridz+00i5hQKAqS62IzvzIiAuImdTN9AAfyt37L8v2PF/IcvG9s0uYvx fIl2/5GdmB9DRtL7VBGkKnpw== X-Google-Smtp-Source: AGHT+IHZ3jjp3lUlM0Syb6Vd6Sad2rCto2cWVCgUGrPLIjlx+FO1hY9/zYygwiBFiOSKobgejBsMFQ== X-Received: by 2002:a05:600c:468d:b0:456:1752:2b44 with SMTP id 5b1f17b1804b1-4587654e5fcmr21888205e9.23.1753463776153; Fri, 25 Jul 2025 10:16:16 -0700 (PDT) Received: from jasus.ad.servtec.it (host-95-251-230-143.retail.telecomitalia.it. [95.251.230.143]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4587ac58045sm3315865e9.22.2025.07.25.10.16.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Jul 2025 10:16:15 -0700 (PDT) From: Giacomo Cappellini To: libcamera-devel@lists.libcamera.org Cc: Giacomo Cappellini Subject: [PATCH v1] v4l2: v4l2_compat: Set dlsym fallback for openat64/mmap64 on musl Date: Fri, 25 Jul 2025 19:14:39 +0200 Message-ID: <20250725171608.1610639-1-giacomo.cappellini.87@gmail.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Fix dlsym lookup for 'openat64' and 'mmap64' to fallback to 'openat' and 'mmap' on musl, since musl does not provide the LFS64 variants and this ensures compatibility. musl does not support the LFS64 API, and relocs-processing is relevant only to glibc ABI compatibility. Signed-off-by: Giacomo Cappellini --- src/v4l2/v4l2_compat_manager.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/v4l2/v4l2_compat_manager.cpp b/src/v4l2/v4l2_compat_manager.cpp index f53fb300..b970d86c 100644 --- a/src/v4l2/v4l2_compat_manager.cpp +++ b/src/v4l2/v4l2_compat_manager.cpp @@ -43,10 +43,14 @@ V4L2CompatManager::V4L2CompatManager() : cm_(nullptr) { get_symbol(fops_.openat, "openat64"); + if (!fops_.openat) + get_symbol(fops_.openat, "openat"); get_symbol(fops_.dup, "dup"); get_symbol(fops_.close, "close"); get_symbol(fops_.ioctl, "ioctl"); get_symbol(fops_.mmap, "mmap64"); + if (!fops_.mmap) + get_symbol(fops_.mmap, "mmap"); get_symbol(fops_.munmap, "munmap"); }