[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <dce11b71-724c-4c5f-bc95-1b59e7cc7844@alliedtelesis.co.nz>
Date: Wed, 5 Jun 2024 21:10:10 +0000
From: Chris Packham <Chris.Packham@...iedtelesis.co.nz>
To: Jacob Keller <jacob.e.keller@...el.com>, Jackie Jone
<Jackie.Jone@...iedtelesis.co.nz>, "davem@...emloft.net"
<davem@...emloft.net>
CC: "jesse.brandeburg@...el.com" <jesse.brandeburg@...el.com>,
"anthony.l.nguyen@...el.com" <anthony.l.nguyen@...el.com>, "kuba@...nel.org"
<kuba@...nel.org>, "intel-wired-lan@...ts.osuosl.org"
<intel-wired-lan@...ts.osuosl.org>, "netdev@...r.kernel.org"
<netdev@...r.kernel.org>, "linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] igb: Add MII write support
On 6/06/24 08:51, Jacob Keller wrote:
>
> On 6/3/2024 8:10 PM, jackie.jone@...iedtelesis.co.nz wrote:
>> From: Jackie Jone <jackie.jone@...iedtelesis.co.nz>
>>
>> To facilitate running PHY parametric tests, add support for the SIOCSMIIREG
>> ioctl. This allows a userspace application to write to the PHY registers
>> to enable the test modes.
>>
>> Signed-off-by: Jackie Jone <jackie.jone@...iedtelesis.co.nz>
>> ---
>> drivers/net/ethernet/intel/igb/igb_main.c | 4 ++++
>> 1 file changed, 4 insertions(+)
>>
>> diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
>> index 03a4da6a1447..7fbfcf01fbf9 100644
>> --- a/drivers/net/ethernet/intel/igb/igb_main.c
>> +++ b/drivers/net/ethernet/intel/igb/igb_main.c
>> @@ -8977,6 +8977,10 @@ static int igb_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
>> return -EIO;
>> break;
>> case SIOCSMIIREG:
>> + if (igb_write_phy_reg(&adapter->hw, data->reg_num & 0x1F,
>> + data->val_in))
>> + return -EIO;
>> + break;
> A handful of drivers seem to expose this. What are the consequences of
> exposing this ioctl? What can user space do with it?
>
> It looks like a few drivers also check something like CAP_NET_ADMIN to
> avoid allowing write access to all users. Is that enforced somewhere else?
CAP_NET_ADMIN is enforced via dev_ioctl() so it should already be
restricted to users with that capability.
Powered by blists - more mailing lists