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 X-Spam-Level: X-Spam-Status: No, score=-9.7 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F3737C5DF61 for ; Tue, 5 Nov 2019 21:26:31 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B751121A49 for ; Tue, 5 Nov 2019 21:26:31 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=netronome-com.20150623.gappssmtp.com header.i=@netronome-com.20150623.gappssmtp.com header.b="zKD4ItMl" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730148AbfKEV0b (ORCPT ); Tue, 5 Nov 2019 16:26:31 -0500 Received: from mail-lj1-f195.google.com ([209.85.208.195]:45384 "EHLO mail-lj1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729829AbfKEV0a (ORCPT ); Tue, 5 Nov 2019 16:26:30 -0500 Received: by mail-lj1-f195.google.com with SMTP id n21so9968942ljg.12 for ; Tue, 05 Nov 2019 13:26:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netronome-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=qtzzo4BaTQKZqLUrK8ToqmDazW9q4viwRFcXOXcndIo=; b=zKD4ItMlJRdX8ZZAR98XnGZdicoPKSPvZk6SQDxC81N2u8astBaF5IqsN/D67iDLDr ld89sINV5bp3oDel1VUNQTt51772xiS1vi2b4AujU/o8UhlBR1qrktSq0y8UHiSGCql1 YiaSBUg5ntVYo1HP7rQjO/QTBm6/z3nFDMxJuMdNngz+MBg+DOR39XmxO1u1i9y84hyO +wVMe3hU6jE6fSB/d0JhTBoPtrb3qIWgbG/43rFWDToY7crl6/Jx/WiLAgOm7WW8luim Iow/rhmOGfQkMcSQ4cKQMGgfHhpAqjoMlnId52R9K4yY29YsQl+cqt7fIutlKfMEFB8T fDMQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=qtzzo4BaTQKZqLUrK8ToqmDazW9q4viwRFcXOXcndIo=; b=OSuA4yiv45BoIz8peCzcR2T8uvZa59pJuNWpsvYXeTcUzI1v6hHkL/8b7zqTdMMxSE IrkEgFDzEE8wK+7Gn4/4FME0K4iFf7P66RkdRXk9GFDIIRymeAqWuakd8M8RIecKV4PC bTa4B3JSs5yWvP6xGVcmjrfy+fur6F4UzzHfSU6EKHon+5IrRGawO4GRzGcdpiTuuAJ6 DlbRwIJkSGRG0PYJoTnJE4po1wCFqmaOs6ffMz60cGQGy19EqS6dwuk+PUtNxj7Gar7N T6lDVI7z1A3Xr2abIo0VmsgPGFEoJbsd16f+LDzuo/2bQGbN58s7MEssXSWgnAm9p+ac e/Dg== X-Gm-Message-State: APjAAAU8d5laW+hg2UdV4l9C6rKo7md/TL1VQjygyXwB75j+k26mp+Hn j25Rv3J6Wzm/8Mb5HMZY/9GYJw== X-Google-Smtp-Source: APXvYqxUgQTUGkHP3yscQIqFjWYwtsIgYVCaos50OSSFD0RTlsaUppZ17RBLaiCzzw7TwXy+zqYd9A== X-Received: by 2002:a2e:9094:: with SMTP id l20mr23559404ljg.246.1572989187462; Tue, 05 Nov 2019 13:26:27 -0800 (PST) Received: from jkicinski-Precision-T1700.netronome.com ([66.60.152.14]) by smtp.gmail.com with ESMTPSA id v1sm9319601lji.89.2019.11.05.13.26.24 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 05 Nov 2019 13:26:26 -0800 (PST) From: Jakub Kicinski To: davem@davemloft.net Cc: netdev@vger.kernel.org, daniel@iogearbox.net, oss-drivers@netronome.com, Jakub Kicinski Subject: [PATCH net-next 2/2] selftests: bpf: log direct file writes Date: Tue, 5 Nov 2019 13:26:12 -0800 Message-Id: <20191105212612.10737-3-jakub.kicinski@netronome.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20191105212612.10737-1-jakub.kicinski@netronome.com> References: <20191105212612.10737-1-jakub.kicinski@netronome.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Recent changes to netdevsim moved creating and destroying devices from netlink to sysfs. The sysfs writes have been implemented as direct writes, without shelling out. This is faster, but leaves no trace in the logs. Add explicit logs to make debugging possible. Signed-off-by: Jakub Kicinski --- tools/testing/selftests/bpf/test_offload.py | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/tools/testing/selftests/bpf/test_offload.py b/tools/testing/selftests/bpf/test_offload.py index 1afa22c88e42..8294ae3ffb3c 100755 --- a/tools/testing/selftests/bpf/test_offload.py +++ b/tools/testing/selftests/bpf/test_offload.py @@ -335,13 +335,22 @@ def bpftool_prog_load(sample, file_name, maps=[], prog_type="xdp", dev=None, """ Class for netdevsim bus device and its attributes. """ + @staticmethod + def ctrl_write(path, val): + fullpath = os.path.join("/sys/bus/netdevsim/", path) + try: + with open(fullpath, "w") as f: + f.write(val) + except OSError as e: + log("WRITE %s: %r" % (fullpath, val), -e.errno) + raise e + log("WRITE %s: %r" % (fullpath, val), 0) def __init__(self, port_count=1): addr = 0 while True: try: - with open("/sys/bus/netdevsim/new_device", "w") as f: - f.write("%u %u" % (addr, port_count)) + self.ctrl_write("new_device", "%u %u" % (addr, port_count)) except OSError as e: if e.errno == errno.ENOSPC: addr += 1 @@ -403,14 +412,13 @@ def bpftool_prog_load(sample, file_name, maps=[], prog_type="xdp", dev=None, return progs def remove(self): - with open("/sys/bus/netdevsim/del_device", "w") as f: - f.write("%u" % self.addr) + self.ctrl_write("del_device", "%u" % (self.addr, )) devs.remove(self) def remove_nsim(self, nsim): self.nsims.remove(nsim) - with open("/sys/bus/netdevsim/devices/netdevsim%u/del_port" % self.addr ,"w") as f: - f.write("%u" % nsim.port_index) + self.ctrl_write("devices/netdevsim%u/del_port" % (self.addr, ), + "%u" % (nsim.port_index, )) class NetdevSim: """ -- 2.23.0