From patchwork Sat Jun 30 11:26:48 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Miguel_Rodr=C3=ADguez_P=C3=A9rez?= X-Patchwork-Id: 10498149 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 8058D60230 for ; Sat, 30 Jun 2018 11:26:55 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5F4C1291E3 for ; Sat, 30 Jun 2018 11:26:55 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 514BB291EB; Sat, 30 Jun 2018 11:26:55 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id AE6DC291E3 for ; Sat, 30 Jun 2018 11:26:54 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S936637AbeF3L0x (ORCPT ); Sat, 30 Jun 2018 07:26:53 -0400 Received: from mail-wm0-f67.google.com ([74.125.82.67]:39724 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S936139AbeF3L0v (ORCPT ); Sat, 30 Jun 2018 07:26:51 -0400 Received: by mail-wm0-f67.google.com with SMTP id p11-v6so4373196wmc.4 for ; Sat, 30 Jun 2018 04:26:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=det.uvigo.gal; s=clouddet; h=subject:from:to:cc:references:openpgp:autocrypt:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=77AVHbHTpexr2Ux2lYlxYEKYAskdRyp0kTzH05Yu15A=; b=QnycsQA/uyQirkcUhSwKbqS5zjYRVeq6fkWDhpXTmVpTeTVcgXC4N1wm8nuewM66vo pkfgtBk3aIm+mxgm8jG0QxYjqTrH07BSAoP1bK8E2G/VHbUX+zg4quDP9Fxq7OQV4WcU 99RgBKUI6ObrapUrioV34M3J2TrZroglt6L+M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:from:to:cc:references:openpgp:autocrypt :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=77AVHbHTpexr2Ux2lYlxYEKYAskdRyp0kTzH05Yu15A=; b=pkAnFZF2F03qyG7oEKK5tKqtC0o67MNnFfBdMmycA01wFUJ4842MNVKEYfUEZQzkII +Fglj1veYszultygB3yzB8KsMWOkEyNTfMauZA+WuYCx65k62494oQO82UdEtJTKdPUi XE+J1ej8oNx+XrUhalX2bHFV/fRsGjRq524R8EdHOgFTG8yr3E5//a+X1SxyLBZIIJIH /iS1qauHpXzuski5r7WTnRGlW2hQG1ZvrGUmKJHolCmPggCEFfTGDMPTQk4WfdifKvwB luSWFptU/wZ+G+jw4NuR20NQS29RCWhM9R9mR8n6684Duicnq9NE98Cc3nfOdtEpoEtQ MEZw== X-Gm-Message-State: APt69E2DTFoHjCzGqzcoZDqm1jmMFGGgd77WeeTi97v/H3WUQIrki3Gk T/nfvY4R2vLi//apxSyj3XQkBTpm09c= X-Google-Smtp-Source: AAOMgpdplTzARfO/mL0MzSvviUybOiBbqf4eU+LEbYIp3cL5h8OyXLkjhjI8i5DTS2v1yIFDuFCp/w== X-Received: by 2002:a1c:b004:: with SMTP id z4-v6mr4215820wme.70.1530358010494; Sat, 30 Jun 2018 04:26:50 -0700 (PDT) Received: from [192.168.1.19] ([82.213.239.84]) by smtp.gmail.com with ESMTPSA id h4-v6sm18637512wre.89.2018.06.30.04.26.49 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 30 Jun 2018 04:26:49 -0700 (PDT) Subject: Re: [PATCH 1/2] cdc_ncm: Hook into usbnet_change_mtu respecting usbnet,driver_info From: =?UTF-8?Q?Miguel_Rodr=c3=adguez_P=c3=a9rez?= To: linux-usb@vger.kernel.org Cc: netdev@vger.kernel.org References: <69bbee1a-9a88-eabe-554f-fbc59e7fde79@det.uvigo.gal> Openpgp: preference=signencrypt Autocrypt: addr=miguel@det.uvigo.gal; prefer-encrypt=mutual; keydata= xsFNBFKN0FkBEADwUPUfsvRB6B3st20xFpvP1OPXbjYcNFaTLEgvELYnTGJWFatqrQqdODO9 QEbVRopidVe/gndDijKxBrwTMLgX6CqIKX0TPcj1Nu5YqwJEKuKyY+O2Y9dZxFa9mohnAJ7D lB9pKFvPXVzBnGoD8/ziOKanDgawsJPLQ5GlNvozl6RveFvuSKfif4XM++EJjDpY1GQjF/Ux F/TdskY205QUz+rHV6K5GZ0GyqysRULg/hC7UyW0FJ3zl+ic7IVerXQmF8N+qcI+4D87bJPA GMHfTvu0HJkaN6TG+wrnKp7BTJ2Qa/aD6+N0Nrr/WVkOaZ3he3lZlfrkAs4X8/6M4LW1YtBu hUvIA7fOB17ND5B2TTmazalUQ+oiSs8SPg9nVKYj+x4McqxhWcon9l3oFRxhdRMlAWKkw5zF eB3rP/Br2WQSqcJI6djQvhQitZLH0aIWjPnCbGamNfmZB2uJ8Pz5aQbhyTB9T0MHNudbdQ36 0br+EA86qZhnvxr0vCGASbISY66rR+S3dTs2bFkj88PnTvFjqIxDdtQPgB7YwCQ2AJD/sIn6 F4NXt/AWo2WQkQFXiIpVZfliumy98A7F+voh4VKmKdDNtqULrppecDrlX/ejzmelt4q+Tl2Y Cgsw9Jd/JfEmzix0RHpAIPnIUBXwUOTC6eOtUS3/FuXFjh8LdQARAQABzS9NaWd1ZWwgUm9k csOtZ3VleiBQw6lyZXogPG1pZ3VlbEBkZXQudXZpZ28uZ2FsPsLBfgQTAQIAKAUCV06OTQIb AwUJCWYBgAYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQTF5SQUyDtPisJRAA7Hjma3S9 MKFCamNClIoSOcMFfnjrQTt47rISgeW4Df4OdEbvYKnpSAJi/K23Brd24sxzTGjqCkiogBZ2 wdXQaEi3KiIqHVRFV6qveYx7QcfyMiEpJYHFQVV223IkXTKZ1TxN06w9g042tU0gHUBhtS5x S9d7glDx+pUMt6BmiV4zSNXg1tdik+776uPYoa0SUdyzwlNt6136u9v4FnRj4o2rUuZFgiNH YAOC1bS0NRQFlVOr4ekDjSlQrgM8bBIL/pwf+4lanmsPITDwKVIrDyY3gC7o6TphbjsepEu1 PTRKUkOUli27kpR+1JhbzgCMTguu2Oh65kL3zRfMUilYNXt2Mhj0pVTatC1T4AKFg7rgKZne rWTMBxVNt8FiorfBeYCfB1k5Azk89dCz4bjWMMV+qmpVbVcDC0ArZivSzplqX2N373D0sHFq bj6lN5Czm0+zXv70wT1cmPJlg/JiH5aVIjnKLOrYbmFaZ71umyAtedzUG63SoOp5/xlE+2eg Z5mIqcZ8QYKjpccPa4R7Y6922zUMK6qFD8x5mEhszKYmrOzPiiffhQ1O8n19oILVz+W6Jt3A 7Dzj1K6KuoF7eWcBfdMNWLW5XtwfJvHUuLPl49XkYVFsqvTvUE4OJA6hXLICki5/pRHNFTos zqmdvVOrZSVVPlyi5MmwQeRNJLfOwU0EUo3QWQEQAN37RZKA3/Lct0ypZ7PJ3paKRsfmWVfy pgvcHsb6a2ubjLUgyU5ZKL9qRLt9t99WywwvJIeCG/m8hW7KwLiRuelXTTUwI+BdaL6/6SDA mZRuk39DTyCfRXwzoTURwmvrXlotxzyFoMFM3l/BEYlyvFf3zWaP+53SHVhzmA4CiPDjqPLp QyLM3X/rQ0yAupOJ5gcruUKOFM65zJf8zu4t656sMV8IsT39RMX/6XS22r9xEhsXySwFPQk2 v5ub2XnZ86XRDIFH+bmX7qyE8cdhrxCNiHhD5U4E0Mc1tiSZHZCuxY//XlsAr6ii/mfXK61N 0Qt8yY5NEaRYVSooVqBuyE9yfabGNRe9kLfu7kzciDRY33Tdp4mgFng6LACss4uT/43BX+f3 ZTdjICv8sKNYzIlRUiqwigsKW9ANLigcskWl5siFBB9SCP+PtnczapMPIi3nbE8CG1/R7k72 sbHemWubR8QwGryLxvbWosXxZ783ks6l7I0e0KTeCIUIt6a7y1ArsndqRLj9uft3ckNvl+I8 5DLb7i1PN/x2VgEMFkyL72i9qK9hz3vsW84E1EKz2HljBFD/f747ym+IkkeRby/YTGeJUqW9 C045wUSGjOw7y/xHotbVb/VF3/7MMNRQ7Z+3mnDau+6Q6SB9/r6vtPxtcfmdf0L3fIyAgTqg uXJNABEBAAHCwWUEGAECAA8FAlKN0FkCGwwFCQlmAYAACgkQTF5SQUyDtPh1HRAAr3oo6ZQy ukNJN+r2RQQTqyujfaBb9UOp1G6ct19Av/v5+POo8qV73YNbajZYXCEvglSs0dk0G3EuSaJv dOxxsrUaAsuXqItfa1A87jcn9+Eg4Z4WKEigmkk2CuE5SPD6DvY/rl7A4eiFQxJMkXvVmYS/ Vh5Irq/i0/YXIct+fv7/sfyvGIcuZtVAhSD3vHy4v/G8qotkXWZIGKocNlMovgPza67x0JaU iX6sYO7k2GQqi+yJ/pSPdl5A0yq3SHj0khwocL0/sZlcAKqY9r7hZ1wn4zmcCPvvgDElhQu+ 1yueSW2o53nvAR81n/9DxazAcc7IViJUyw7vf2EfzWGRYyw9ip3h+y9ynwb26cezKnrCUARW yKUkT/l2A7mpfVIf5E3zcymGEdV7tGWmb+pVSQainZQMcTzUso+Kv/TnhMpFMc+0rVqjf6vg Xq+an/PFFql9I2LELacTOncMzXTX5TF30rxFQCOwghAZXdEY2dk9IBwOhTG08m2MOcplNlN/ iZwsnmqybwfRBKOEunVvLdpIMIZ44x5dJTJiGIP/I9sftxOU92AW8Xpgf+q6ZshOm3YoJcfO 1zb9pCXtARf7K2jKmB5NRSoW4dnCA0xmi3pBSjiZE3XYwKG4t4JppTmvuGhQuJPQ11/i4oHN YHInhj+XVbAEvSrkZFlI6GfCPjY= Message-ID: Date: Sat, 30 Jun 2018 13:26:48 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 MIME-Version: 1.0 In-Reply-To: <69bbee1a-9a88-eabe-554f-fbc59e7fde79@det.uvigo.gal> Content-Language: en-US Sender: linux-usb-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Change the way cdc_ncm_change_mtu hooks into the netdev_ops structure so that changes into usbnet driver_info operations can be respected. Without this, is was not possible to hook into usbnet_set_rx_mode. Signed-off-by: Miguel Rodríguez Pérez --- drivers/net/usb/cdc_ncm.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) u8 data_altsetting, int drvflags) { @@ -939,6 +930,8 @@ int cdc_ncm_bind_common(struct usbnet *dev, struct usb_interface *intf, u8 data_ dev->net->sysfs_groups[0] = &cdc_ncm_sysfs_attr_group; /* must handle MTU changes */ + cdc_ncm_netdev_ops = *dev->net->netdev_ops; + cdc_ncm_netdev_ops.ndo_change_mtu = cdc_ncm_change_mtu; dev->net->netdev_ops = &cdc_ncm_netdev_ops; dev->net->max_mtu = cdc_ncm_max_dgram_size(dev) - cdc_ncm_eth_hlen(dev); diff --git a/drivers/net/usb/cdc_ncm.c b/drivers/net/usb/cdc_ncm.c index 9e1b74590682..d6b51e2b9495 100644 --- a/drivers/net/usb/cdc_ncm.c +++ b/drivers/net/usb/cdc_ncm.c @@ -750,16 +750,7 @@ int cdc_ncm_change_mtu(struct net_device *net, int new_mtu) } EXPORT_SYMBOL_GPL(cdc_ncm_change_mtu); -static const struct net_device_ops cdc_ncm_netdev_ops = { - .ndo_open = usbnet_open, - .ndo_stop = usbnet_stop, - .ndo_start_xmit = usbnet_start_xmit, - .ndo_tx_timeout = usbnet_tx_timeout, - .ndo_get_stats64 = usbnet_get_stats64, - .ndo_change_mtu = cdc_ncm_change_mtu, - .ndo_set_mac_address = eth_mac_addr, - .ndo_validate_addr = eth_validate_addr, -}; +static struct net_device_ops cdc_ncm_netdev_ops; int cdc_ncm_bind_common(struct usbnet *dev, struct usb_interface *intf,